From eb995ad10e2564da5e5c569df902eb267969d13c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juan=20Luis=20Cano=20Rodr=C3=ADguez?= Date: Mon, 7 Dec 2020 00:01:48 +0100 Subject: [PATCH] Re-cythonize for Python 3.7 compatibility Fixes gh-1. --- setup.py | 2 +- src/convert.c | 6873 ++++--- src/tpm.c | 48402 ++++++++++++++++++++++++++++++++---------------- 3 files changed, 36513 insertions(+), 18764 deletions(-) diff --git a/setup.py b/setup.py index 902022b..0f926e2 100644 --- a/setup.py +++ b/setup.py @@ -27,7 +27,7 @@ def read(*filenames): setup( name="PyTPM", - version="0.7.1", + version="0.7.1+py37", description="Python interface to Telescope Pointing Machine C library.", long_description=read("README.rst"), license='BSD', diff --git a/src/convert.c b/src/convert.c index 89c6e5c..2d66bf3 100644 --- a/src/convert.c +++ b/src/convert.c @@ -1,28 +1,18 @@ -/* Generated by Cython 0.21.1 */ +/* Generated by Cython 0.29.21 */ #define PY_SSIZE_T_CLEAN -#ifndef CYTHON_USE_PYLONG_INTERNALS -#ifdef PYLONG_BITS_IN_DIGIT -#define CYTHON_USE_PYLONG_INTERNALS 0 -#else -#include "pyconfig.h" -#ifdef PYLONG_BITS_IN_DIGIT -#define CYTHON_USE_PYLONG_INTERNALS 1 -#else -#define CYTHON_USE_PYLONG_INTERNALS 0 -#endif -#endif -#endif #include "Python.h" #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03020000) - #error Cython requires Python 2.6+ or Python 3.2+. +#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) + #error Cython requires Python 2.6+ or Python 3.3+. #else -#define CYTHON_ABI "0_21_1" +#define CYTHON_ABI "0_29_21" +#define CYTHON_HEX_VERSION 0x001D15F0 +#define CYTHON_FUTURE_DIVISION 0 #include #ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) + #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) #endif #if !defined(WIN32) && !defined(MS_WINDOWS) #ifndef __stdcall @@ -41,6 +31,12 @@ #ifndef DL_EXPORT #define DL_EXPORT(t) t #endif +#define __PYX_COMMA , +#ifndef HAVE_LONG_LONG + #if PY_VERSION_HEX >= 0x02070000 + #define HAVE_LONG_LONG + #endif +#endif #ifndef PY_LONG_LONG #define PY_LONG_LONG LONG_LONG #endif @@ -48,77 +44,453 @@ #define Py_HUGE_VAL HUGE_VAL #endif #ifdef PYPY_VERSION -#define CYTHON_COMPILING_IN_PYPY 1 -#define CYTHON_COMPILING_IN_CPYTHON 0 + #define CYTHON_COMPILING_IN_PYPY 1 + #define CYTHON_COMPILING_IN_PYSTON 0 + #define CYTHON_COMPILING_IN_CPYTHON 0 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 0 + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #if PY_VERSION_HEX < 0x03050000 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #elif !defined(CYTHON_USE_ASYNC_SLOTS) + #define CYTHON_USE_ASYNC_SLOTS 1 + #endif + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #undef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 0 + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #undef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 0 + #undef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 0 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #undef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_DICT_VERSIONS + #define CYTHON_USE_DICT_VERSIONS 0 + #undef CYTHON_USE_EXC_INFO_STACK + #define CYTHON_USE_EXC_INFO_STACK 0 +#elif defined(PYSTON_VERSION) + #define CYTHON_COMPILING_IN_PYPY 0 + #define CYTHON_COMPILING_IN_PYSTON 1 + #define CYTHON_COMPILING_IN_CPYTHON 0 + #ifndef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #endif + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #ifndef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 1 + #endif + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #ifndef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 0 + #endif + #ifndef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 1 + #endif + #ifndef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 1 + #endif + #undef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 0 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #undef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_DICT_VERSIONS + #define CYTHON_USE_DICT_VERSIONS 0 + #undef CYTHON_USE_EXC_INFO_STACK + #define CYTHON_USE_EXC_INFO_STACK 0 +#else + #define CYTHON_COMPILING_IN_PYPY 0 + #define CYTHON_COMPILING_IN_PYSTON 0 + #define CYTHON_COMPILING_IN_CPYTHON 1 + #ifndef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #endif + #if PY_VERSION_HEX < 0x02070000 + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #elif !defined(CYTHON_USE_PYTYPE_LOOKUP) + #define CYTHON_USE_PYTYPE_LOOKUP 1 + #endif + #if PY_MAJOR_VERSION < 3 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #elif !defined(CYTHON_USE_ASYNC_SLOTS) + #define CYTHON_USE_ASYNC_SLOTS 1 + #endif + #if PY_VERSION_HEX < 0x02070000 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLONG_INTERNALS) + #define CYTHON_USE_PYLONG_INTERNALS 1 + #endif + #ifndef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 1 + #endif + #ifndef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 1 + #endif + #if PY_VERSION_HEX < 0x030300F0 + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #elif !defined(CYTHON_USE_UNICODE_WRITER) + #define CYTHON_USE_UNICODE_WRITER 1 + #endif + #ifndef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 0 + #endif + #ifndef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 1 + #endif + #ifndef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 1 + #endif + #ifndef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 1 + #endif + #ifndef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 1 + #endif + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT (PY_VERSION_HEX >= 0x03050000) + #endif + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1) + #endif + #ifndef CYTHON_USE_DICT_VERSIONS + #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX >= 0x030600B1) + #endif + #ifndef CYTHON_USE_EXC_INFO_STACK + #define CYTHON_USE_EXC_INFO_STACK (PY_VERSION_HEX >= 0x030700A3) + #endif +#endif +#if !defined(CYTHON_FAST_PYCCALL) +#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#endif +#if CYTHON_USE_PYLONG_INTERNALS + #include "longintrepr.h" + #undef SHIFT + #undef BASE + #undef MASK + #ifdef SIZEOF_VOID_P + enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; + #endif +#endif +#ifndef __has_attribute + #define __has_attribute(x) 0 +#endif +#ifndef __has_cpp_attribute + #define __has_cpp_attribute(x) 0 +#endif +#ifndef CYTHON_RESTRICT + #if defined(__GNUC__) + #define CYTHON_RESTRICT __restrict__ + #elif defined(_MSC_VER) && _MSC_VER >= 1400 + #define CYTHON_RESTRICT __restrict + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define CYTHON_RESTRICT restrict + #else + #define CYTHON_RESTRICT + #endif +#endif +#ifndef CYTHON_UNUSED +# if defined(__GNUC__) +# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +# define CYTHON_UNUSED __attribute__ ((__unused__)) +# else +# define CYTHON_UNUSED +# endif +# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER)) +# define CYTHON_UNUSED __attribute__ ((__unused__)) +# else +# define CYTHON_UNUSED +# endif +#endif +#ifndef CYTHON_MAYBE_UNUSED_VAR +# if defined(__cplusplus) + template void CYTHON_MAYBE_UNUSED_VAR( const T& ) { } +# else +# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x) +# endif +#endif +#ifndef CYTHON_NCP_UNUSED +# if CYTHON_COMPILING_IN_CPYTHON +# define CYTHON_NCP_UNUSED +# else +# define CYTHON_NCP_UNUSED CYTHON_UNUSED +# endif +#endif +#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) +#ifdef _MSC_VER + #ifndef _MSC_STDINT_H_ + #if _MSC_VER < 1300 + typedef unsigned char uint8_t; + typedef unsigned int uint32_t; + #else + typedef unsigned __int8 uint8_t; + typedef unsigned __int32 uint32_t; + #endif + #endif #else -#define CYTHON_COMPILING_IN_PYPY 0 -#define CYTHON_COMPILING_IN_CPYTHON 1 + #include +#endif +#ifndef CYTHON_FALLTHROUGH + #if defined(__cplusplus) && __cplusplus >= 201103L + #if __has_cpp_attribute(fallthrough) + #define CYTHON_FALLTHROUGH [[fallthrough]] + #elif __has_cpp_attribute(clang::fallthrough) + #define CYTHON_FALLTHROUGH [[clang::fallthrough]] + #elif __has_cpp_attribute(gnu::fallthrough) + #define CYTHON_FALLTHROUGH [[gnu::fallthrough]] + #endif + #endif + #ifndef CYTHON_FALLTHROUGH + #if __has_attribute(fallthrough) + #define CYTHON_FALLTHROUGH __attribute__((fallthrough)) + #else + #define CYTHON_FALLTHROUGH + #endif + #endif + #if defined(__clang__ ) && defined(__apple_build_version__) + #if __apple_build_version__ < 7000000 + #undef CYTHON_FALLTHROUGH + #define CYTHON_FALLTHROUGH + #endif + #endif +#endif + +#ifndef CYTHON_INLINE + #if defined(__clang__) + #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) + #elif defined(__GNUC__) + #define CYTHON_INLINE __inline__ + #elif defined(_MSC_VER) + #define CYTHON_INLINE __inline + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define CYTHON_INLINE inline + #else + #define CYTHON_INLINE + #endif #endif -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 -#define Py_OptimizeFlag 0 + +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) + #define Py_OptimizeFlag 0 #endif #define __PYX_BUILD_PY_SSIZE_T "n" #define CYTHON_FORMAT_SSIZE_T "z" #if PY_MAJOR_VERSION < 3 #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" - #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) \ + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #define __Pyx_DefaultClassType PyClass_Type #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" - #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) \ +#if PY_VERSION_HEX >= 0x030800A4 && PY_VERSION_HEX < 0x030800B2 + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#else + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#endif #define __Pyx_DefaultClassType PyType_Type #endif -#if PY_MAJOR_VERSION >= 3 +#ifndef Py_TPFLAGS_CHECKTYPES #define Py_TPFLAGS_CHECKTYPES 0 +#endif +#ifndef Py_TPFLAGS_HAVE_INDEX #define Py_TPFLAGS_HAVE_INDEX 0 +#endif +#ifndef Py_TPFLAGS_HAVE_NEWBUFFER #define Py_TPFLAGS_HAVE_NEWBUFFER 0 #endif -#if PY_VERSION_HEX < 0x030400a1 && !defined(Py_TPFLAGS_HAVE_FINALIZE) +#ifndef Py_TPFLAGS_HAVE_FINALIZE #define Py_TPFLAGS_HAVE_FINALIZE 0 #endif +#ifndef METH_STACKLESS + #define METH_STACKLESS 0 +#endif +#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) + #ifndef METH_FASTCALL + #define METH_FASTCALL 0x80 + #endif + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs); + typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, + Py_ssize_t nargs, PyObject *kwnames); +#else + #define __Pyx_PyCFunctionFast _PyCFunctionFast + #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords +#endif +#if CYTHON_FAST_PYCCALL +#define __Pyx_PyFastCFunction_Check(func)\ + ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS))))) +#else +#define __Pyx_PyFastCFunction_Check(func) 0 +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc) + #define PyObject_Malloc(s) PyMem_Malloc(s) + #define PyObject_Free(p) PyMem_Free(p) + #define PyObject_Realloc(p) PyMem_Realloc(p) +#endif +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030400A1 + #define PyMem_RawMalloc(n) PyMem_Malloc(n) + #define PyMem_RawRealloc(p, n) PyMem_Realloc(p, n) + #define PyMem_RawFree(p) PyMem_Free(p) +#endif +#if CYTHON_COMPILING_IN_PYSTON + #define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno) +#else + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) +#endif +#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000 + #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x03060000 + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() +#elif PY_VERSION_HEX >= 0x03000000 + #define __Pyx_PyThreadState_Current PyThreadState_GET() +#else + #define __Pyx_PyThreadState_Current _PyThreadState_Current +#endif +#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) +#include "pythread.h" +#define Py_tss_NEEDS_INIT 0 +typedef int Py_tss_t; +static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { + *key = PyThread_create_key(); + return 0; +} +static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { + Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); + *key = Py_tss_NEEDS_INIT; + return key; +} +static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { + PyObject_Free(key); +} +static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { + return *key != Py_tss_NEEDS_INIT; +} +static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { + PyThread_delete_key(*key); + *key = Py_tss_NEEDS_INIT; +} +static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { + return PyThread_set_key_value(*key, value); +} +static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { + return PyThread_get_key_value(*key); +} +#endif +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) +#else +#define __Pyx_PyDict_NewPresized(n) PyDict_New() +#endif +#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION + #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) + #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#else + #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) + #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) +#endif +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyDict_GetItemStr(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) +#else +#define __Pyx_PyDict_GetItemStr(dict, name) PyDict_GetItem(dict, name) +#endif #if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) #define CYTHON_PEP393_ENABLED 1 - #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ? \ + #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ 0 : _PyUnicode_Ready((PyObject *)(op))) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) #define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u) #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #if defined(PyUnicode_IS_READY) && defined(PyUnicode_GET_SIZE) + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) + #else + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) + #endif #else #define CYTHON_PEP393_ENABLED 0 + #define PyUnicode_1BYTE_KIND 1 + #define PyUnicode_2BYTE_KIND 2 + #define PyUnicode_4BYTE_KIND 4 #define __Pyx_PyUnicode_READY(op) (0) #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) #define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE)) #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) #endif #if CYTHON_COMPILING_IN_PYPY #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) #define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b) - #define __Pyx_PyFrozenSet_Size(s) PyObject_Size(s) #else #define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b) - #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ? \ + #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\ PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b)) - #define __Pyx_PyFrozenSet_Size(s) PySet_Size(s) #endif -#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) -#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains) + #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check) + #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format) + #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) +#endif +#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) +#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) #if PY_MAJOR_VERSION >= 3 #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) #else #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) #endif +#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) + #define PyObject_ASCII(o) PyObject_Repr(o) +#endif #if PY_MAJOR_VERSION >= 3 #define PyBaseString_Type PyUnicode_Type #define PyStringObject PyUnicodeObject #define PyString_Type PyUnicode_Type #define PyString_Check PyUnicode_Check #define PyString_CheckExact PyUnicode_CheckExact +#ifndef PyObject_Unicode + #define PyObject_Unicode PyObject_Str +#endif #endif #if PY_MAJOR_VERSION >= 3 #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) @@ -130,7 +502,18 @@ #ifndef PySet_CheckExact #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) #endif -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) +#if PY_VERSION_HEX >= 0x030900A4 + #define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt) + #define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size) +#else + #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) + #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) +#endif +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) +#else + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) +#endif #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject #define PyInt_Type PyLong_Type @@ -165,60 +548,52 @@ #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t #endif #if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) + #define __Pyx_PyMethod_New(func, self, klass) ((self) ? ((void)(klass), PyMethod_New(func, self)) : __Pyx_NewRef(func)) #else #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass) #endif -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline +#if CYTHON_USE_ASYNC_SLOTS + #if PY_VERSION_HEX >= 0x030500B1 + #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods + #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) #else - #define CYTHON_INLINE + #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) #endif +#else + #define __Pyx_PyType_AsAsync(obj) NULL #endif -#ifndef CYTHON_RESTRICT - #if defined(__GNUC__) - #define CYTHON_RESTRICT __restrict__ - #elif defined(_MSC_VER) && _MSC_VER >= 1400 - #define CYTHON_RESTRICT __restrict - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_RESTRICT restrict - #else - #define CYTHON_RESTRICT - #endif +#ifndef __Pyx_PyAsyncMethodsStruct + typedef struct { + unaryfunc am_await; + unaryfunc am_aiter; + unaryfunc am_anext; + } __Pyx_PyAsyncMethodsStruct; #endif + +#if defined(WIN32) || defined(MS_WINDOWS) + #define _USE_MATH_DEFINES +#endif +#include #ifdef NAN #define __PYX_NAN() ((float) NAN) #else static CYTHON_INLINE float __PYX_NAN() { - /* Initialize NaN. The sign is irrelevant, an exponent with all bits 1 and - a nonzero mantissa means NaN. If the first bit in the mantissa is 1, it is - a quiet NaN. */ float value; memset(&value, 0xFF, sizeof(value)); return value; } #endif -#ifdef __cplusplus -template -void __Pyx_call_destructor(T* x) { - x->~T(); -} -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) +#define __Pyx_truncl trunc #else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) +#define __Pyx_truncl truncl #endif +#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; } +#define __PYX_ERR(f_index, lineno, Ln_error) \ + { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } + #ifndef __PYX_EXTERN_C #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" @@ -227,53 +602,59 @@ void __Pyx_call_destructor(T* x) { #endif #endif -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__pytpm__convert -#define __PYX_HAVE_API__pytpm__convert +#define __PYX_HAVE__convert +#define __PYX_HAVE_API__convert +/* Early includes */ #ifdef _OPENMP #include #endif /* _OPENMP */ -#ifdef PYREX_WITHOUT_ASSERTIONS +#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS) #define CYTHON_WITHOUT_ASSERTIONS #endif -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif -typedef struct {PyObject **p; char *s; const Py_ssize_t n; const char* encoding; +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; #define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0 +#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) #define __PYX_DEFAULT_STRING_ENCODING "" #define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString #define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#define __Pyx_fits_Py_ssize_t(v, type, is_signed) ( \ - (sizeof(type) < sizeof(Py_ssize_t)) || \ - (sizeof(type) > sizeof(Py_ssize_t) && \ - likely(v < (type)PY_SSIZE_T_MAX || \ - v == (type)PY_SSIZE_T_MAX) && \ - (!is_signed || likely(v > (type)PY_SSIZE_T_MIN || \ - v == (type)PY_SSIZE_T_MIN))) || \ - (sizeof(type) == sizeof(Py_ssize_t) && \ - (is_signed || likely(v < (type)PY_SSIZE_T_MAX || \ +#define __Pyx_uchar_cast(c) ((unsigned char)c) +#define __Pyx_long_cast(x) ((long)x) +#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\ + (sizeof(type) < sizeof(Py_ssize_t)) ||\ + (sizeof(type) > sizeof(Py_ssize_t) &&\ + likely(v < (type)PY_SSIZE_T_MAX ||\ + v == (type)PY_SSIZE_T_MAX) &&\ + (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\ + v == (type)PY_SSIZE_T_MIN))) ||\ + (sizeof(type) == sizeof(Py_ssize_t) &&\ + (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\ v == (type)PY_SSIZE_T_MAX))) ) -static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject*); -static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); +static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { + return (size_t) i < (size_t) limit; +} +#if defined (__cplusplus) && __cplusplus >= 201103L + #include + #define __Pyx_sst_abs(value) std::abs(value) +#elif SIZEOF_INT >= SIZEOF_SIZE_T + #define __Pyx_sst_abs(value) abs(value) +#elif SIZEOF_LONG >= SIZEOF_SIZE_T + #define __Pyx_sst_abs(value) labs(value) +#elif defined (_MSC_VER) + #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value)) +#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define __Pyx_sst_abs(value) llabs(value) +#elif defined (__GNUC__) + #define __Pyx_sst_abs(value) __builtin_llabs(value) +#else + #define __Pyx_sst_abs(value) ((value<0) ? -value : value) +#endif +static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); +static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); #define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) #define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) #define __Pyx_PyBytes_FromString PyBytes_FromString @@ -286,38 +667,52 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize #endif -#define __Pyx_PyObject_AsSString(s) ((signed char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_FromUString(s) __Pyx_PyObject_FromString((const char*)s) -#define __Pyx_PyBytes_FromUString(s) __Pyx_PyBytes_FromString((const char*)s) -#define __Pyx_PyByteArray_FromUString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyStr_FromUString(s) __Pyx_PyStr_FromString((const char*)s) -#define __Pyx_PyUnicode_FromUString(s) __Pyx_PyUnicode_FromString((const char*)s) -#if PY_MAJOR_VERSION < 3 -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) -{ +#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) +#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) +#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) +#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) +#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) { const Py_UNICODE *u_end = u; while (*u_end++) ; return (size_t)(u_end - u - 1); } -#else -#define __Pyx_Py_UNICODE_strlen Py_UNICODE_strlen -#endif #define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) #define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode #define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) +#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) +#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); +static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +#define __Pyx_PySequence_Tuple(obj)\ + (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_ASSUME_SAFE_MACROS #define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) #else #define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) #endif #define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) +#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) +#else +#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) +#endif +#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x)) #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII static int __Pyx_sys_getdefaultencoding_not_ascii; static int __Pyx_init_sys_getdefaultencoding_params(void) { @@ -328,7 +723,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { const char* default_encoding_c; sys = PyImport_ImportModule("sys"); if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); + default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); Py_DECREF(sys); if (!default_encoding) goto bad; default_encoding_c = PyBytes_AsString(default_encoding); @@ -381,7 +776,7 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { if (!default_encoding) goto bad; default_encoding_c = PyBytes_AsString(default_encoding); if (!default_encoding_c) goto bad; - __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c)); + __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); Py_DECREF(default_encoding); @@ -402,12 +797,15 @@ static int __Pyx_init_sys_getdefaultencoding_params(void) { #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ */ +static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } -static PyObject *__pyx_m; +static PyObject *__pyx_m = NULL; static PyObject *__pyx_d; static PyObject *__pyx_b; +static PyObject *__pyx_cython_runtime = NULL; static PyObject *__pyx_empty_tuple; static PyObject *__pyx_empty_bytes; +static PyObject *__pyx_empty_unicode; static int __pyx_lineno; static int __pyx_clineno = 0; static const char * __pyx_cfilenm= __FILE__; @@ -415,10 +813,13 @@ static const char *__pyx_filename; static const char *__pyx_f[] = { - "m/src/convert.pyx", + "src/convert.pyx", }; /*--- Type declarations ---*/ + +/* --- Runtime support code (head) --- */ +/* Refnanny.proto */ #ifndef CYTHON_REFNANNY #define CYTHON_REFNANNY 0 #endif @@ -435,19 +836,19 @@ static const char *__pyx_f[] = { static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; #ifdef WITH_THREAD - #define __Pyx_RefNannySetupContext(name, acquire_gil) \ - if (acquire_gil) { \ - PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure(); \ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__); \ - PyGILState_Release(__pyx_gilstate_save); \ - } else { \ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__); \ + #define __Pyx_RefNannySetupContext(name, acquire_gil)\ + if (acquire_gil) {\ + PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ + PyGILState_Release(__pyx_gilstate_save);\ + } else {\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ } #else - #define __Pyx_RefNannySetupContext(name, acquire_gil) \ + #define __Pyx_RefNannySetupContext(name, acquire_gil)\ __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) #endif - #define __Pyx_RefNannyFinishContext() \ + #define __Pyx_RefNannyFinishContext()\ __Pyx_RefNanny->FinishContext(&__pyx_refnanny) #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) @@ -470,107 +871,251 @@ static const char *__pyx_f[] = { #define __Pyx_XGOTREF(r) #define __Pyx_XGIVEREF(r) #endif -#define __Pyx_XDECREF_SET(r, v) do { \ - PyObject *tmp = (PyObject *) r; \ - r = v; __Pyx_XDECREF(tmp); \ +#define __Pyx_XDECREF_SET(r, v) do {\ + PyObject *tmp = (PyObject *) r;\ + r = v; __Pyx_XDECREF(tmp);\ } while (0) -#define __Pyx_DECREF_SET(r, v) do { \ - PyObject *tmp = (PyObject *) r; \ - r = v; __Pyx_DECREF(tmp); \ +#define __Pyx_DECREF_SET(r, v) do {\ + PyObject *tmp = (PyObject *) r;\ + r = v; __Pyx_DECREF(tmp);\ } while (0) #define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0) #define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0) -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro)) - return tp->tp_getattro(obj, attr_name); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_getattr)) - return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); -#endif - return PyObject_GetAttr(obj, attr_name); -} +/* PyObjectGetAttrStr.proto */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name); #else #define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n) #endif +/* GetBuiltinName.proto */ static PyObject *__Pyx_GetBuiltinName(PyObject *name); +/* RaiseDoubleKeywords.proto */ static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], \ - PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, \ +/* ParseKeywords.proto */ +static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\ + PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\ const char* function_name); +/* RaiseArgTupleInvalid.proto */ static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); +/* PyObjectCall.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); #else #define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) #endif -static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); -static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); +/* PyThreadStateGet.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; +#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; +#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#else +#define __Pyx_PyThreadState_declare +#define __Pyx_PyThreadState_assign +#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#endif + +/* PyErrFetchRestore.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL) +#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb) +#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb) +#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb) +#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) +#else +#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) +#endif +#else +#define __Pyx_PyErr_Clear() PyErr_Clear() +#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) +#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb) +#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb) +#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb) +#endif +/* RaiseException.proto */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); -static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name); +/* PyDictVersioning.proto */ +#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS +#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) +#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) +#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\ + (version_var) = __PYX_GET_DICT_VERSION(dict);\ + (cache_var) = (value); +#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\ + static PY_UINT64_T __pyx_dict_version = 0;\ + static PyObject *__pyx_dict_cached_value = NULL;\ + if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ + (VAR) = __pyx_dict_cached_value;\ + } else {\ + (VAR) = __pyx_dict_cached_value = (LOOKUP);\ + __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ + }\ +} +static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj); +static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj); +static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version); +#else +#define __PYX_GET_DICT_VERSION(dict) (0) +#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var) +#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP); +#endif + +/* GetModuleGlobalName.proto */ +#if CYTHON_USE_DICT_VERSIONS +#define __Pyx_GetModuleGlobalName(var, name) {\ + static PY_UINT64_T __pyx_dict_version = 0;\ + static PyObject *__pyx_dict_cached_value = NULL;\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ + (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ + __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ +} +#define __Pyx_GetModuleGlobalNameUncached(var, name) {\ + PY_UINT64_T __pyx_dict_version;\ + PyObject *__pyx_dict_cached_value;\ + (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ +} +static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value); +#else +#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name) +#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name) +static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); +#endif + +/* PyCFunctionFastCall.proto */ +#if CYTHON_FAST_PYCCALL +static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs); +#else +#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL) +#endif + +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +#if 1 || PY_VERSION_HEX < 0x030600B1 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); +#else +#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs) +#endif +#define __Pyx_BUILD_ASSERT_EXPR(cond)\ + (sizeof(char [1 - 2*!(cond)]) - 1) +#ifndef Py_MEMBER_SIZE +#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) +#endif + static size_t __pyx_pyframe_localsplus_offset = 0; + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets()\ + ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ + (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) + #define __Pyx_PyFrame_GetLocalsplus(frame)\ + (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) +#endif + +/* PyObjectCall2Args.proto */ +static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); +/* PyObjectCallMethO.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); #endif +/* PyObjectCallOneArg.proto */ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); +/* GetTopmostException.proto */ +#if CYTHON_USE_EXC_INFO_STACK +static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); +#endif + +/* SaveResetException.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); +#else +#define __Pyx_ExceptionSave(type, value, tb) PyErr_GetExcInfo(type, value, tb) +#define __Pyx_ExceptionReset(type, value, tb) PyErr_SetExcInfo(type, value, tb) +#endif + +/* PyErrExceptionMatches.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err) +static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err); +#else +#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err) +#endif +/* GetException.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb) +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#else static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); +#endif + +/* PyIntBinop.proto */ +#if !CYTHON_COMPILING_IN_PYPY +static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check); +#else +#define __Pyx_PyInt_AddObjC(op1, op2, intval, inplace, zerodivision_check)\ + (inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2)) +#endif +/* PyObjectCallNoArg.proto */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); #else #define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL) #endif -#if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o,n,NULL) -static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) { - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_setattro)) - return tp->tp_setattro(obj, attr_name, value); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_setattr)) - return tp->tp_setattr(obj, PyString_AS_STRING(attr_name), value); -#endif - return PyObject_SetAttr(obj, attr_name, value); -} +/* PyIntCompare.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, long intval, long inplace); + +/* PyObjectSetAttrStr.proto */ +#if CYTHON_USE_TYPE_SLOTS +#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL) +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value); #else #define __Pyx_PyObject_DelAttrStr(o,n) PyObject_DelAttr(o,n) #define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v) #endif -#define __Pyx_SetItemInt(o, i, v, type, is_signed, to_py_func, is_list, wraparound, boundscheck) \ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ? \ - __Pyx_SetItemInt_Fast(o, (Py_ssize_t)i, v, is_list, wraparound, boundscheck) : \ - (is_list ? (PyErr_SetString(PyExc_IndexError, "list assignment index out of range"), -1) : \ +/* SetItemInt.proto */ +#define __Pyx_SetItemInt(o, i, v, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_SetItemInt_Fast(o, (Py_ssize_t)i, v, is_list, wraparound, boundscheck) :\ + (is_list ? (PyErr_SetString(PyExc_IndexError, "list assignment index out of range"), -1) :\ __Pyx_SetItemInt_Generic(o, to_py_func(i), v))) -static CYTHON_INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v); +static int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v); static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v, int is_list, int wraparound, int boundscheck); -#if CYTHON_COMPILING_IN_CPYTHON +/* ListAppend.proto */ +#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { PyListObject* L = (PyListObject*) list; Py_ssize_t len = Py_SIZE(list); if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) { Py_INCREF(x); PyList_SET_ITEM(list, len, x); - Py_SIZE(list) = len+1; + __Pyx_SET_SIZE(list, len + 1); return 0; } return PyList_Append(list, x); @@ -579,35 +1124,37 @@ static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { #define __Pyx_PyList_Append(L,x) PyList_Append(L,x) #endif -#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck) \ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ? \ - __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) : \ - (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) : \ +/* GetItemInt.proto */ +#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\ + (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\ __Pyx_GetItemInt_Generic(o, to_py_func(i)))) -#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck) \ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ? \ - __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) : \ +#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, int wraparound, int boundscheck); -#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck) \ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ? \ - __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) : \ +#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ + (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ + __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL)) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, int wraparound, int boundscheck); -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); +static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, int wraparound, int boundscheck); -#if CYTHON_COMPILING_IN_CPYTHON +/* ListCompAppend.proto */ +#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) { PyListObject* L = (PyListObject*) list; Py_ssize_t len = Py_SIZE(list); if (likely(L->allocated > len)) { Py_INCREF(x); PyList_SET_ITEM(list, len, x); - Py_SIZE(list) = len+1; + __Pyx_SET_SIZE(list, len + 1); return 0; } return PyList_Append(list, x); @@ -616,11 +1163,30 @@ static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) { #define __Pyx_ListComp_Append(L,x) PyList_Append(L,x) #endif +/* ObjectGetItem.proto */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key); +#else +#define __Pyx_PyObject_GetItem(obj, key) PyObject_GetItem(obj, key) +#endif + +/* Import.proto */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); + +/* ImportFrom.proto */ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); +/* CLineInTraceback.proto */ +#ifdef CYTHON_CLINE_IN_TRACEBACK +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) +#else +static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#endif + +/* CodeObjectCache.proto */ typedef struct { - int code_line; PyCodeObject* code_object; + int code_line; } __Pyx_CodeObjectCacheEntry; struct __Pyx_CodeObjectCache { int count; @@ -632,123 +1198,138 @@ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int co static PyCodeObject *__pyx_find_code_object(int code_line); static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); +/* AddTraceback.proto */ static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename); -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); - -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); - +/* CIntToPy.proto */ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); +/* CIntToPy.proto */ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); +/* CIntFromPy.proto */ +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); + +/* CIntFromPy.proto */ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); +/* FastTypeChecks.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type) +static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b); +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2); +#else +#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) +#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) +#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +#endif +#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) + +/* CheckBinaryVersion.proto */ static int __Pyx_check_binary_version(void); +/* InitStrings.proto */ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); -/* Module declarations from 'pytpm.convert' */ -#define __Pyx_MODULE_NAME "pytpm.convert" -int __pyx_module_is_main_pytpm__convert = 0; +/* Module declarations from 'convert' */ +#define __Pyx_MODULE_NAME "convert" +extern int __pyx_module_is_main_convert; +int __pyx_module_is_main_convert = 0; -/* Implementation of 'pytpm.convert' */ +/* Implementation of 'convert' */ static PyObject *__pyx_builtin_TypeError; static PyObject *__pyx_builtin_enumerate; static PyObject *__pyx_builtin_ValueError; static PyObject *__pyx_builtin_range; -static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, double __pyx_v_utc, double __pyx_v_delta_at, double __pyx_v_delta_ut, int __pyx_v_s1, int __pyx_v_s2, double __pyx_v_epoch, double __pyx_v_equinox, double __pyx_v_lon, double __pyx_v_lat, double __pyx_v_alt, double __pyx_v_xpole, double __pyx_v_ypole, double __pyx_v_T, double __pyx_v_P, double __pyx_v_H, double __pyx_v_wavelength); /* proto */ -static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ -static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ -static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_end, PyObject *__pyx_v_start); /* proto */ -static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_C); /* proto */ -static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_pma, PyObject *__pyx_v_pmd, PyObject *__pyx_v_px, PyObject *__pyx_v_rv, PyObject *__pyx_v_C); /* proto */ -static char __pyx_k_C[] = "C"; -static char __pyx_k_H[] = "H"; -static char __pyx_k_P[] = "P"; -static char __pyx_k_T[] = "T"; -static char __pyx_k_i[] = "i"; -static char __pyx_k_j[] = "j"; -static char __pyx_k_l[] = "l"; -static char __pyx_k_r[] = "r"; -static char __pyx_k_v[] = "v"; -static char __pyx_k_px[] = "px"; -static char __pyx_k_rv[] = "rv"; -static char __pyx_k_s1[] = "s1"; -static char __pyx_k_s2[] = "s2"; -static char __pyx_k_v6[] = "v6"; -static char __pyx_k_V6C[] = "V6C"; -static char __pyx_k_V6S[] = "V6S"; -static char __pyx_k__17[] = ""; -static char __pyx_k_alt[] = "alt"; -static char __pyx_k_c2s[] = "c2s"; -static char __pyx_k_d2r[] = "d2r"; -static char __pyx_k_end[] = "end"; -static char __pyx_k_lat[] = "lat"; -static char __pyx_k_lon[] = "lon"; -static char __pyx_k_pma[] = "pma"; -static char __pyx_k_pmd[] = "pmd"; -static char __pyx_k_r2d[] = "r2d"; -static char __pyx_k_s2c[] = "s2c"; -static char __pyx_k_tpm[] = "tpm"; -static char __pyx_k_utc[] = "utc"; -static char __pyx_k_PVEC[] = "PVEC"; -static char __pyx_k_main[] = "__main__"; -static char __pyx_k_pvec[] = "pvec"; -static char __pyx_k_temp[] = "temp"; -static char __pyx_k_test[] = "__test__"; -static char __pyx_k_J2000[] = "J2000"; -static char __pyx_k_alpha[] = "alpha"; -static char __pyx_k_delta[] = "delta"; -static char __pyx_k_epoch[] = "epoch"; -static char __pyx_k_pflag[] = "pflag"; -static char __pyx_k_range[] = "range"; -static char __pyx_k_start[] = "start"; -static char __pyx_k_xpole[] = "xpole"; -static char __pyx_k_ypole[] = "ypole"; -static char __pyx_k_TSTATE[] = "TSTATE"; -static char __pyx_k_cat2v6[] = "cat2v6"; -static char __pyx_k_format[] = "format"; -static char __pyx_k_import[] = "__import__"; -static char __pyx_k_nalpha[] = "nalpha"; -static char __pyx_k_ndelta[] = "ndelta"; -static char __pyx_k_tstate[] = "tstate"; -static char __pyx_k_v62cat[] = "v62cat"; -static char __pyx_k_v6_out[] = "v6_out"; -static char __pyx_k_TPM_ALL[] = "TPM_ALL"; -static char __pyx_k_TPM_S06[] = "TPM_S06"; -static char __pyx_k_cat_out[] = "cat_out"; -static char __pyx_k_equinox[] = "equinox"; -static char __pyx_k_precess[] = "precess"; -static char __pyx_k_TPM_INIT[] = "TPM_INIT"; -static char __pyx_k_delta_AT[] = "delta_AT"; -static char __pyx_k_delta_UT[] = "delta_UT"; -static char __pyx_k_delta_at[] = "delta_at"; -static char __pyx_k_delta_ut[] = "delta_ut"; -static char __pyx_k_tpm_data[] = "tpm_data"; -static char __pyx_k_TypeError[] = "TypeError"; -static char __pyx_k_alpha_out[] = "alpha_out"; -static char __pyx_k_convertv6[] = "convertv6"; -static char __pyx_k_delta_out[] = "delta_out"; -static char __pyx_k_enumerate[] = "enumerate"; -static char __pyx_k_precessv6[] = "precessv6"; -static char __pyx_k_ValueError[] = "ValueError"; -static char __pyx_k_wavelength[] = "wavelength"; -static char __pyx_k_PRECESS_FK5[] = "PRECESS_FK5"; -static char __pyx_k_proper_motion[] = "proper_motion"; -static char __pyx_k_pytpm_convert[] = "pytpm.convert"; -static char __pyx_k_TARGET_OBS_AZEL[] = "TARGET_OBS_AZEL"; -static char __pyx_k_v62cat_needs_V6C_objects[] = "v62cat needs V6C objects."; -static char __pyx_k_convertv6_needs_V6C_object[] = "convertv6 needs V6C object."; -static char __pyx_k_precessv6_needs_V6C_object[] = "precessv6 needs V6C object."; -static char __pyx_k_proper_motion_needs_V6C_object[] = "proper_motion needs V6C object."; -static char __pyx_k_Both_alpha_and_delta_must_be_of[] = "Both alpha and delta must be of equal length."; -static char __pyx_k_Users_deil_code_pytpm_src_conve[] = "/Users/deil/code/pytpm/src/convert.pyx"; -static char __pyx_k_All_coordinates_must_be_of_the_s[] = "All coordinates must be of the same length."; -static char __pyx_k_v6_0_must_be_an_object_of_type_t[] = "v6[{0}] must be an object of type tpm.V6C."; -static char __pyx_k_v6_must_be_an_object_of_type_tpm[] = "v6 must be an object of type tpm.V6C."; +static const char __pyx_k_C[] = "C"; +static const char __pyx_k_H[] = "H"; +static const char __pyx_k_P[] = "P"; +static const char __pyx_k_T[] = "T"; +static const char __pyx_k_i[] = "i"; +static const char __pyx_k_j[] = "j"; +static const char __pyx_k_l[] = "l"; +static const char __pyx_k_r[] = "r"; +static const char __pyx_k_v[] = "v"; +static const char __pyx_k_px[] = "px"; +static const char __pyx_k_rv[] = "rv"; +static const char __pyx_k_s1[] = "s1"; +static const char __pyx_k_s2[] = "s2"; +static const char __pyx_k_v6[] = "v6"; +static const char __pyx_k_V6C[] = "V6C"; +static const char __pyx_k_V6S[] = "V6S"; +static const char __pyx_k__14[] = ""; +static const char __pyx_k_alt[] = "alt"; +static const char __pyx_k_c2s[] = "c2s"; +static const char __pyx_k_d2r[] = "d2r"; +static const char __pyx_k_end[] = "end"; +static const char __pyx_k_lat[] = "lat"; +static const char __pyx_k_lon[] = "lon"; +static const char __pyx_k_pma[] = "pma"; +static const char __pyx_k_pmd[] = "pmd"; +static const char __pyx_k_r2d[] = "r2d"; +static const char __pyx_k_s2c[] = "s2c"; +static const char __pyx_k_tpm[] = "tpm"; +static const char __pyx_k_utc[] = "utc"; +static const char __pyx_k_PVEC[] = "PVEC"; +static const char __pyx_k_main[] = "__main__"; +static const char __pyx_k_name[] = "__name__"; +static const char __pyx_k_pvec[] = "pvec"; +static const char __pyx_k_temp[] = "temp"; +static const char __pyx_k_test[] = "__test__"; +static const char __pyx_k_J2000[] = "J2000"; +static const char __pyx_k_alpha[] = "alpha"; +static const char __pyx_k_delta[] = "delta"; +static const char __pyx_k_epoch[] = "epoch"; +static const char __pyx_k_pflag[] = "pflag"; +static const char __pyx_k_range[] = "range"; +static const char __pyx_k_start[] = "start"; +static const char __pyx_k_xpole[] = "xpole"; +static const char __pyx_k_ypole[] = "ypole"; +static const char __pyx_k_TSTATE[] = "TSTATE"; +static const char __pyx_k_cat2v6[] = "cat2v6"; +static const char __pyx_k_format[] = "format"; +static const char __pyx_k_import[] = "__import__"; +static const char __pyx_k_nalpha[] = "nalpha"; +static const char __pyx_k_ndelta[] = "ndelta"; +static const char __pyx_k_tstate[] = "tstate"; +static const char __pyx_k_v62cat[] = "v62cat"; +static const char __pyx_k_v6_out[] = "v6_out"; +static const char __pyx_k_TPM_ALL[] = "TPM_ALL"; +static const char __pyx_k_TPM_S06[] = "TPM_S06"; +static const char __pyx_k_cat_out[] = "cat_out"; +static const char __pyx_k_convert[] = "convert"; +static const char __pyx_k_equinox[] = "equinox"; +static const char __pyx_k_precess[] = "precess"; +static const char __pyx_k_TPM_INIT[] = "TPM_INIT"; +static const char __pyx_k_delta_AT[] = "delta_AT"; +static const char __pyx_k_delta_UT[] = "delta_UT"; +static const char __pyx_k_delta_at[] = "delta_at"; +static const char __pyx_k_delta_ut[] = "delta_ut"; +static const char __pyx_k_tpm_data[] = "tpm_data"; +static const char __pyx_k_TypeError[] = "TypeError"; +static const char __pyx_k_alpha_out[] = "alpha_out"; +static const char __pyx_k_convertv6[] = "convertv6"; +static const char __pyx_k_delta_out[] = "delta_out"; +static const char __pyx_k_enumerate[] = "enumerate"; +static const char __pyx_k_precessv6[] = "precessv6"; +static const char __pyx_k_ValueError[] = "ValueError"; +static const char __pyx_k_wavelength[] = "wavelength"; +static const char __pyx_k_PRECESS_FK5[] = "PRECESS_FK5"; +static const char __pyx_k_proper_motion[] = "proper_motion"; +static const char __pyx_k_TARGET_OBS_AZEL[] = "TARGET_OBS_AZEL"; +static const char __pyx_k_src_convert_pyx[] = "src/convert.pyx"; +static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; +static const char __pyx_k_v62cat_needs_V6C_objects[] = "v62cat needs V6C objects."; +static const char __pyx_k_convertv6_needs_V6C_object[] = "convertv6 needs V6C object."; +static const char __pyx_k_precessv6_needs_V6C_object[] = "precessv6 needs V6C object."; +static const char __pyx_k_proper_motion_needs_V6C_object[] = "proper_motion needs V6C object."; +static const char __pyx_k_Both_alpha_and_delta_must_be_of[] = "Both alpha and delta must be of equal length."; +static const char __pyx_k_All_coordinates_must_be_of_the_s[] = "All coordinates must be of the same length."; +static const char __pyx_k_v6_0_must_be_an_object_of_type_t[] = "v6[{0}] must be an object of type tpm.V6C."; +static const char __pyx_k_v6_must_be_an_object_of_type_tpm[] = "v6 must be an object of type tpm.V6C."; static PyObject *__pyx_kp_s_All_coordinates_must_be_of_the_s; static PyObject *__pyx_kp_s_Both_alpha_and_delta_must_be_of; static PyObject *__pyx_n_s_C; @@ -764,17 +1345,18 @@ static PyObject *__pyx_n_s_TPM_INIT; static PyObject *__pyx_n_s_TPM_S06; static PyObject *__pyx_n_s_TSTATE; static PyObject *__pyx_n_s_TypeError; -static PyObject *__pyx_kp_s_Users_deil_code_pytpm_src_conve; static PyObject *__pyx_n_s_V6C; static PyObject *__pyx_n_s_V6S; static PyObject *__pyx_n_s_ValueError; -static PyObject *__pyx_n_s__17; +static PyObject *__pyx_n_s__14; static PyObject *__pyx_n_s_alpha; static PyObject *__pyx_n_s_alpha_out; static PyObject *__pyx_n_s_alt; static PyObject *__pyx_n_s_c2s; static PyObject *__pyx_n_s_cat2v6; static PyObject *__pyx_n_s_cat_out; +static PyObject *__pyx_n_s_cline_in_traceback; +static PyObject *__pyx_n_s_convert; static PyObject *__pyx_n_s_convertv6; static PyObject *__pyx_kp_s_convertv6_needs_V6C_object; static PyObject *__pyx_n_s_d2r; @@ -797,6 +1379,7 @@ static PyObject *__pyx_n_s_lat; static PyObject *__pyx_n_s_lon; static PyObject *__pyx_n_s_main; static PyObject *__pyx_n_s_nalpha; +static PyObject *__pyx_n_s_name; static PyObject *__pyx_n_s_ndelta; static PyObject *__pyx_n_s_pflag; static PyObject *__pyx_n_s_pma; @@ -808,7 +1391,6 @@ static PyObject *__pyx_n_s_proper_motion; static PyObject *__pyx_kp_s_proper_motion_needs_V6C_object; static PyObject *__pyx_n_s_pvec; static PyObject *__pyx_n_s_px; -static PyObject *__pyx_n_s_pytpm_convert; static PyObject *__pyx_n_s_r; static PyObject *__pyx_n_s_r2d; static PyObject *__pyx_n_s_range; @@ -816,6 +1398,7 @@ static PyObject *__pyx_n_s_rv; static PyObject *__pyx_n_s_s1; static PyObject *__pyx_n_s_s2; static PyObject *__pyx_n_s_s2c; +static PyObject *__pyx_kp_s_src_convert_pyx; static PyObject *__pyx_n_s_start; static PyObject *__pyx_n_s_temp; static PyObject *__pyx_n_s_test; @@ -833,6 +1416,12 @@ static PyObject *__pyx_n_s_v6_out; static PyObject *__pyx_n_s_wavelength; static PyObject *__pyx_n_s_xpole; static PyObject *__pyx_n_s_ypole; +static PyObject *__pyx_pf_7convert_convertv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, double __pyx_v_utc, double __pyx_v_delta_at, double __pyx_v_delta_ut, int __pyx_v_s1, int __pyx_v_s2, double __pyx_v_epoch, double __pyx_v_equinox, double __pyx_v_lon, double __pyx_v_lat, double __pyx_v_alt, double __pyx_v_xpole, double __pyx_v_ypole, double __pyx_v_T, double __pyx_v_P, double __pyx_v_H, double __pyx_v_wavelength); /* proto */ +static PyObject *__pyx_pf_7convert_2precess(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_7convert_4precessv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_7convert_6proper_motion(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_end, PyObject *__pyx_v_start); /* proto */ +static PyObject *__pyx_pf_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_C); /* proto */ +static PyObject *__pyx_pf_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_pma, PyObject *__pyx_v_pmd, PyObject *__pyx_v_px, PyObject *__pyx_v_rv, PyObject *__pyx_v_C); /* proto */ static PyObject *__pyx_float_0_0; static PyObject *__pyx_float_1e10; static PyObject *__pyx_float_36525_0; @@ -852,23 +1441,21 @@ static PyObject *__pyx_tuple__10; static PyObject *__pyx_tuple__11; static PyObject *__pyx_tuple__12; static PyObject *__pyx_tuple__13; -static PyObject *__pyx_tuple__14; static PyObject *__pyx_tuple__15; -static PyObject *__pyx_tuple__16; -static PyObject *__pyx_tuple__18; -static PyObject *__pyx_tuple__20; -static PyObject *__pyx_tuple__22; -static PyObject *__pyx_tuple__24; -static PyObject *__pyx_tuple__26; -static PyObject *__pyx_tuple__28; -static PyObject *__pyx_codeobj__19; -static PyObject *__pyx_codeobj__21; -static PyObject *__pyx_codeobj__23; -static PyObject *__pyx_codeobj__25; -static PyObject *__pyx_codeobj__27; -static PyObject *__pyx_codeobj__29; - -/* "src/convert.pyx":4 +static PyObject *__pyx_tuple__17; +static PyObject *__pyx_tuple__19; +static PyObject *__pyx_tuple__21; +static PyObject *__pyx_tuple__23; +static PyObject *__pyx_tuple__25; +static PyObject *__pyx_codeobj__16; +static PyObject *__pyx_codeobj__18; +static PyObject *__pyx_codeobj__20; +static PyObject *__pyx_codeobj__22; +static PyObject *__pyx_codeobj__24; +static PyObject *__pyx_codeobj__26; +/* Late includes */ + +/* "convert.pyx":4 * * * def convertv6(v6=None, double utc=-999, double delta_at=-999, # <<<<<<<<<<<<<< @@ -877,10 +1464,10 @@ static PyObject *__pyx_codeobj__29; */ /* Python wrapper */ -static PyObject *__pyx_pw_5pytpm_7convert_1convertv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_7convert_convertv6[] = "\n convert(v6=None,\n utc=-999, delta_at=-999, delta_ut=-999,\n s1=tpm.TPM_S06, s2=tpm.TARGET_OBS_AZEL,\n epoch=tpm.J2000, equinox=tpm.J2000,\n lon=-111.598333, lat=31.956389, alt=2093.093,\n xpole=0.0, ypole=0.0,\n T=273.15, P=1013.25, H=0.0, wavelength=0.550)\n\n Utility function for performing coordinate conversions.\n\n Parameters\n ----------\n v6 : tpm.V6C or a list of tpm.V6C vectors.\n The V6C vector to be trasnformed.\n utc : float\n \"Current\" UTC time as a Julian date.\n delta_at : float\n TAI - UTC in seconds.\n delta_ut : float\n UT1 - UTC in seconds.\n s1 : int\n Initial state.\n s2 : int\n Final state.\n epoch : float\n Epoch of input coordinates as a Julian date.\n equniox : float\n Equinox of input or output coordinates.\n lon : float\n Geodetic longitude in degeres.\n lat : float\n Geodetic latitude in degrees.\n alt : float\n Altitude in meters.\n xpole : float\n Polar motion in radians.\n ypole : float\n Ploar motion in radians.\n T : float\n Ambient temperature in Kelvin.\n P : float\n Ambient pressure in millibars.\n H : float\n Ambient humidity in the range 0-1.\n wavelength : float\n Wavelength of observation in microns.\n\n Returns\n -------\n v : tpm.V6C or list of tpm.V6C vectors.\n The transformed V6C vector.\n\n Notes\n -----\n The input v6 can be a single V6C object or a list/tuple of V6C\n objects. The independent parameters will be the same for all of the\n V6C object and the dependent parameters will be calculated only\n once.\n\n The default location is KPNO and the values are taken from the TPM\n C code.\n\n If `utc` is not provided then it is set to J2000.0 AND BOTH\n `delta_at` and `delta_ut` ARE SET TO THEIR VALUES AT\n J2000.0. That i""s, if `utc` is not given then the specified values\n for these two are ignored. If `utc` is given but `delta_at`\n and/or `delta_ut` is not given, then the missing value is set to\n that at the given `utc`.\n\n The TPM state data structure is initialized, the independent\n parameters are set, and all the dependent parameters are calculated\n using `tpm_data(tstate, TPM_INIT)`. This calculation is done only\n once. Then each of the coordinates are converted, by creating a\n `V6` vector and calling `tpm()`.\n\n The value returned is either a single V6C object or a list of V6C\n objects, depending on the input.\n\n For details on the parameters see the PyTPM reference documentation\n and the TPM manual. The latter gives an example for the usage of\n this function.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_7convert_1convertv6 = {"convertv6", (PyCFunction)__pyx_pw_5pytpm_7convert_1convertv6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_5pytpm_7convert_convertv6}; -static PyObject *__pyx_pw_5pytpm_7convert_1convertv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +static PyObject *__pyx_pw_7convert_1convertv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_7convert_convertv6[] = "\n convert(v6=None,\n utc=-999, delta_at=-999, delta_ut=-999,\n s1=tpm.TPM_S06, s2=tpm.TARGET_OBS_AZEL,\n epoch=tpm.J2000, equinox=tpm.J2000,\n lon=-111.598333, lat=31.956389, alt=2093.093,\n xpole=0.0, ypole=0.0,\n T=273.15, P=1013.25, H=0.0, wavelength=0.550)\n\n Utility function for performing coordinate conversions.\n\n Parameters\n ----------\n v6 : tpm.V6C or a list of tpm.V6C vectors.\n The V6C vector to be trasnformed.\n utc : float\n \"Current\" UTC time as a Julian date.\n delta_at : float\n TAI - UTC in seconds.\n delta_ut : float\n UT1 - UTC in seconds.\n s1 : int\n Initial state.\n s2 : int\n Final state.\n epoch : float\n Epoch of input coordinates as a Julian date.\n equniox : float\n Equinox of input or output coordinates.\n lon : float\n Geodetic longitude in degeres.\n lat : float\n Geodetic latitude in degrees.\n alt : float\n Altitude in meters.\n xpole : float\n Polar motion in radians.\n ypole : float\n Ploar motion in radians.\n T : float\n Ambient temperature in Kelvin.\n P : float\n Ambient pressure in millibars.\n H : float\n Ambient humidity in the range 0-1.\n wavelength : float\n Wavelength of observation in microns.\n\n Returns\n -------\n v : tpm.V6C or list of tpm.V6C vectors.\n The transformed V6C vector.\n\n Notes\n -----\n The input v6 can be a single V6C object or a list/tuple of V6C\n objects. The independent parameters will be the same for all of the\n V6C object and the dependent parameters will be calculated only\n once.\n\n The default location is KPNO and the values are taken from the TPM\n C code.\n\n If `utc` is not provided then it is set to J2000.0 AND BOTH\n `delta_at` and `delta_ut` ARE SET TO THEIR VALUES AT\n J2000.0. That i""s, if `utc` is not given then the specified values\n for these two are ignored. If `utc` is given but `delta_at`\n and/or `delta_ut` is not given, then the missing value is set to\n that at the given `utc`.\n\n The TPM state data structure is initialized, the independent\n parameters are set, and all the dependent parameters are calculated\n using `tpm_data(tstate, TPM_INIT)`. This calculation is done only\n once. Then each of the coordinates are converted, by creating a\n `V6` vector and calling `tpm()`.\n\n The value returned is either a single V6C object or a list of V6C\n objects, depending on the input.\n\n For details on the parameters see the PyTPM reference documentation\n and the TPM manual. The latter gives an example for the usage of\n this function.\n\n "; +static PyMethodDef __pyx_mdef_7convert_1convertv6 = {"convertv6", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7convert_1convertv6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_7convert_convertv6}; +static PyObject *__pyx_pw_7convert_1convertv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_v6 = 0; double __pyx_v_utc; double __pyx_v_delta_at; @@ -913,22 +1500,39 @@ static PyObject *__pyx_pw_5pytpm_7convert_1convertv6(PyObject *__pyx_self, PyObj const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); switch (pos_args) { case 17: values[16] = PyTuple_GET_ITEM(__pyx_args, 16); + CYTHON_FALLTHROUGH; case 16: values[15] = PyTuple_GET_ITEM(__pyx_args, 15); + CYTHON_FALLTHROUGH; case 15: values[14] = PyTuple_GET_ITEM(__pyx_args, 14); + CYTHON_FALLTHROUGH; case 14: values[13] = PyTuple_GET_ITEM(__pyx_args, 13); + CYTHON_FALLTHROUGH; case 13: values[12] = PyTuple_GET_ITEM(__pyx_args, 12); + CYTHON_FALLTHROUGH; case 12: values[11] = PyTuple_GET_ITEM(__pyx_args, 11); + CYTHON_FALLTHROUGH; case 11: values[10] = PyTuple_GET_ITEM(__pyx_args, 10); + CYTHON_FALLTHROUGH; case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + CYTHON_FALLTHROUGH; case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -936,214 +1540,247 @@ static PyObject *__pyx_pw_5pytpm_7convert_1convertv6(PyObject *__pyx_self, PyObj switch (pos_args) { case 0: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v6); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6); if (value) { values[0] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_utc); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_utc); if (value) { values[1] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_delta_at); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta_at); if (value) { values[2] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 3: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_delta_ut); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta_ut); if (value) { values[3] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 4: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_s1); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_s1); if (value) { values[4] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 5: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_s2); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_s2); if (value) { values[5] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 6: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_epoch); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_epoch); if (value) { values[6] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 7: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_equinox); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_equinox); if (value) { values[7] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 8: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lon); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lon); if (value) { values[8] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 9: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lat); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lat); if (value) { values[9] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 10: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alt); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alt); if (value) { values[10] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 11: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_xpole); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xpole); if (value) { values[11] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 12: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ypole); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ypole); if (value) { values[12] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 13: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_T); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_T); if (value) { values[13] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 14: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_P); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_P); if (value) { values[14] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 15: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_H); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_H); if (value) { values[15] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 16: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_wavelength); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_wavelength); if (value) { values[16] = value; kw_args--; } } } if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convertv6") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convertv6") < 0)) __PYX_ERR(0, 4, __pyx_L3_error) } } else { switch (PyTuple_GET_SIZE(__pyx_args)) { case 17: values[16] = PyTuple_GET_ITEM(__pyx_args, 16); + CYTHON_FALLTHROUGH; case 16: values[15] = PyTuple_GET_ITEM(__pyx_args, 15); + CYTHON_FALLTHROUGH; case 15: values[14] = PyTuple_GET_ITEM(__pyx_args, 14); + CYTHON_FALLTHROUGH; case 14: values[13] = PyTuple_GET_ITEM(__pyx_args, 13); + CYTHON_FALLTHROUGH; case 13: values[12] = PyTuple_GET_ITEM(__pyx_args, 12); + CYTHON_FALLTHROUGH; case 12: values[11] = PyTuple_GET_ITEM(__pyx_args, 11); + CYTHON_FALLTHROUGH; case 11: values[10] = PyTuple_GET_ITEM(__pyx_args, 10); + CYTHON_FALLTHROUGH; case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + CYTHON_FALLTHROUGH; case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } } __pyx_v_v6 = values[0]; if (values[1]) { - __pyx_v_utc = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_utc == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_utc = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_utc == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4, __pyx_L3_error) } else { __pyx_v_utc = ((double)-999.0); } if (values[2]) { - __pyx_v_delta_at = __pyx_PyFloat_AsDouble(values[2]); if (unlikely((__pyx_v_delta_at == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_delta_at = __pyx_PyFloat_AsDouble(values[2]); if (unlikely((__pyx_v_delta_at == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4, __pyx_L3_error) } else { __pyx_v_delta_at = ((double)-999.0); } if (values[3]) { - __pyx_v_delta_ut = __pyx_PyFloat_AsDouble(values[3]); if (unlikely((__pyx_v_delta_ut == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_delta_ut = __pyx_PyFloat_AsDouble(values[3]); if (unlikely((__pyx_v_delta_ut == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 5, __pyx_L3_error) } else { __pyx_v_delta_ut = ((double)-999.0); } if (values[4]) { - __pyx_v_s1 = __Pyx_PyInt_As_int(values[4]); if (unlikely((__pyx_v_s1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_s1 = __Pyx_PyInt_As_int(values[4]); if (unlikely((__pyx_v_s1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6, __pyx_L3_error) } else { __pyx_v_s1 = __pyx_k_; } if (values[5]) { - __pyx_v_s2 = __Pyx_PyInt_As_int(values[5]); if (unlikely((__pyx_v_s2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_s2 = __Pyx_PyInt_As_int(values[5]); if (unlikely((__pyx_v_s2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6, __pyx_L3_error) } else { __pyx_v_s2 = __pyx_k__2; } if (values[6]) { - __pyx_v_epoch = __pyx_PyFloat_AsDouble(values[6]); if (unlikely((__pyx_v_epoch == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_epoch = __pyx_PyFloat_AsDouble(values[6]); if (unlikely((__pyx_v_epoch == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7, __pyx_L3_error) } else { __pyx_v_epoch = __pyx_k__3; } if (values[7]) { - __pyx_v_equinox = __pyx_PyFloat_AsDouble(values[7]); if (unlikely((__pyx_v_equinox == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_equinox = __pyx_PyFloat_AsDouble(values[7]); if (unlikely((__pyx_v_equinox == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7, __pyx_L3_error) } else { __pyx_v_equinox = __pyx_k__4; } if (values[8]) { - __pyx_v_lon = __pyx_PyFloat_AsDouble(values[8]); if (unlikely((__pyx_v_lon == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_lon = __pyx_PyFloat_AsDouble(values[8]); if (unlikely((__pyx_v_lon == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 8, __pyx_L3_error) } else { __pyx_v_lon = ((double)-111.598333); } if (values[9]) { - __pyx_v_lat = __pyx_PyFloat_AsDouble(values[9]); if (unlikely((__pyx_v_lat == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_lat = __pyx_PyFloat_AsDouble(values[9]); if (unlikely((__pyx_v_lat == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 9, __pyx_L3_error) } else { __pyx_v_lat = ((double)31.956389); } if (values[10]) { - __pyx_v_alt = __pyx_PyFloat_AsDouble(values[10]); if (unlikely((__pyx_v_alt == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_alt = __pyx_PyFloat_AsDouble(values[10]); if (unlikely((__pyx_v_alt == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 10, __pyx_L3_error) } else { __pyx_v_alt = ((double)2093.093); } if (values[11]) { - __pyx_v_xpole = __pyx_PyFloat_AsDouble(values[11]); if (unlikely((__pyx_v_xpole == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_xpole = __pyx_PyFloat_AsDouble(values[11]); if (unlikely((__pyx_v_xpole == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 11, __pyx_L3_error) } else { __pyx_v_xpole = ((double)0.0); } if (values[12]) { - __pyx_v_ypole = __pyx_PyFloat_AsDouble(values[12]); if (unlikely((__pyx_v_ypole == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_ypole = __pyx_PyFloat_AsDouble(values[12]); if (unlikely((__pyx_v_ypole == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 11, __pyx_L3_error) } else { __pyx_v_ypole = ((double)0.0); } if (values[13]) { - __pyx_v_T = __pyx_PyFloat_AsDouble(values[13]); if (unlikely((__pyx_v_T == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_T = __pyx_PyFloat_AsDouble(values[13]); if (unlikely((__pyx_v_T == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L3_error) } else { __pyx_v_T = ((double)273.15); } if (values[14]) { - __pyx_v_P = __pyx_PyFloat_AsDouble(values[14]); if (unlikely((__pyx_v_P == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_P = __pyx_PyFloat_AsDouble(values[14]); if (unlikely((__pyx_v_P == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L3_error) } else { __pyx_v_P = ((double)1013.25); } if (values[15]) { - __pyx_v_H = __pyx_PyFloat_AsDouble(values[15]); if (unlikely((__pyx_v_H == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_H = __pyx_PyFloat_AsDouble(values[15]); if (unlikely((__pyx_v_H == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 12, __pyx_L3_error) } else { __pyx_v_H = ((double)0.0); } if (values[16]) { - __pyx_v_wavelength = __pyx_PyFloat_AsDouble(values[16]); if (unlikely((__pyx_v_wavelength == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_wavelength = __pyx_PyFloat_AsDouble(values[16]); if (unlikely((__pyx_v_wavelength == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 13, __pyx_L3_error) } else { __pyx_v_wavelength = ((double)0.550); } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("convertv6", 0, 0, 17, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("convertv6", 0, 0, 17, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 4, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.convert.convertv6", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.convertv6", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_5pytpm_7convert_convertv6(__pyx_self, __pyx_v_v6, __pyx_v_utc, __pyx_v_delta_at, __pyx_v_delta_ut, __pyx_v_s1, __pyx_v_s2, __pyx_v_epoch, __pyx_v_equinox, __pyx_v_lon, __pyx_v_lat, __pyx_v_alt, __pyx_v_xpole, __pyx_v_ypole, __pyx_v_T, __pyx_v_P, __pyx_v_H, __pyx_v_wavelength); + __pyx_r = __pyx_pf_7convert_convertv6(__pyx_self, __pyx_v_v6, __pyx_v_utc, __pyx_v_delta_at, __pyx_v_delta_ut, __pyx_v_s1, __pyx_v_s2, __pyx_v_epoch, __pyx_v_equinox, __pyx_v_lon, __pyx_v_lat, __pyx_v_alt, __pyx_v_xpole, __pyx_v_ypole, __pyx_v_T, __pyx_v_P, __pyx_v_H, __pyx_v_wavelength); /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, double __pyx_v_utc, double __pyx_v_delta_at, double __pyx_v_delta_ut, int __pyx_v_s1, int __pyx_v_s2, double __pyx_v_epoch, double __pyx_v_equinox, double __pyx_v_lon, double __pyx_v_lat, double __pyx_v_alt, double __pyx_v_xpole, double __pyx_v_ypole, double __pyx_v_T, double __pyx_v_P, double __pyx_v_H, double __pyx_v_wavelength) { +static PyObject *__pyx_pf_7convert_convertv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, double __pyx_v_utc, double __pyx_v_delta_at, double __pyx_v_delta_ut, int __pyx_v_s1, int __pyx_v_s2, double __pyx_v_epoch, double __pyx_v_equinox, double __pyx_v_lon, double __pyx_v_lat, double __pyx_v_alt, double __pyx_v_xpole, double __pyx_v_ypole, double __pyx_v_T, double __pyx_v_P, double __pyx_v_H, double __pyx_v_wavelength) { PyObject *__pyx_v_j = NULL; PyObject *__pyx_v_v = NULL; PyObject *__pyx_v_tstate = NULL; @@ -1162,48 +1799,55 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py PyObject *__pyx_t_8 = NULL; PyObject *__pyx_t_9 = NULL; PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - Py_ssize_t __pyx_t_12; - int __pyx_t_13; - PyObject *(*__pyx_t_14)(PyObject *); + Py_ssize_t __pyx_t_11; + int __pyx_t_12; + PyObject *(*__pyx_t_13)(PyObject *); + PyObject *__pyx_t_14 = NULL; PyObject *__pyx_t_15 = NULL; PyObject *__pyx_t_16 = NULL; PyObject *__pyx_t_17 = NULL; - Py_ssize_t __pyx_t_18; - PyObject *__pyx_t_19 = NULL; - int __pyx_t_20; + PyObject *__pyx_t_18 = NULL; + int __pyx_t_19; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("convertv6", 0); __Pyx_INCREF(__pyx_v_v6); - /* "src/convert.pyx":99 + /* "convert.pyx":99 * """ * cdef int i * if not v6: # <<<<<<<<<<<<<< * raise TypeError("convertv6 needs V6C object.") * if utc == -999: */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 99, __pyx_L1_error) __pyx_t_2 = ((!__pyx_t_1) != 0); - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":100 + /* "convert.pyx":100 * cdef int i * if not v6: * raise TypeError("convertv6 needs V6C object.") # <<<<<<<<<<<<<< * if utc == -999: * # UTC not supplied set all three time scale values, ignoring */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 100, __pyx_L1_error) + + /* "convert.pyx":99 + * """ + * cdef int i + * if not v6: # <<<<<<<<<<<<<< + * raise TypeError("convertv6 needs V6C object.") + * if utc == -999: + */ } - /* "src/convert.pyx":101 + /* "convert.pyx":101 * if not v6: * raise TypeError("convertv6 needs V6C object.") * if utc == -999: # <<<<<<<<<<<<<< @@ -1213,38 +1857,38 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __pyx_t_2 = ((__pyx_v_utc == -999.0) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":104 + /* "convert.pyx":104 * # UTC not supplied set all three time scale values, ignoring * # the given values of delta_at and delta_ut. * utc = tpm.J2000 # <<<<<<<<<<<<<< * delta_at = tpm.delta_AT(utc) * delta_ut = tpm.delta_UT(utc) */ - __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_J2000); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_J2000); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_utc = __pyx_t_5; - /* "src/convert.pyx":105 + /* "convert.pyx":105 * # the given values of delta_at and delta_ut. * utc = tpm.J2000 * delta_at = tpm.delta_AT(utc) # <<<<<<<<<<<<<< * delta_ut = tpm.delta_UT(utc) * else: */ - __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_delta_AT); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_delta_AT); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_7 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); @@ -1253,131 +1897,115 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __Pyx_DECREF_SET(__pyx_t_6, function); } } - if (!__pyx_t_7) { - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GOTREF(__pyx_t_4); - } else { - __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_7); __pyx_t_7 = NULL; - PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - } + __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_7, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 105, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 105, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_delta_at = __pyx_t_5; - /* "src/convert.pyx":106 + /* "convert.pyx":106 * utc = tpm.J2000 * delta_at = tpm.delta_AT(utc) * delta_ut = tpm.delta_UT(utc) # <<<<<<<<<<<<<< * else: * if delta_at == -999: */ - __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_tpm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_delta_UT); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_delta_UT); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 106, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_3); + __pyx_t_7 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3); + if (likely(__pyx_t_7)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); + __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); + __Pyx_DECREF_SET(__pyx_t_3, function); } } - if (!__pyx_t_3) { - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_GOTREF(__pyx_t_4); - } else { - __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = NULL; - PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_7, __pyx_t_6) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 106, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_delta_ut = __pyx_t_5; + + /* "convert.pyx":101 + * if not v6: + * raise TypeError("convertv6 needs V6C object.") + * if utc == -999: # <<<<<<<<<<<<<< + * # UTC not supplied set all three time scale values, ignoring + * # the given values of delta_at and delta_ut. + */ goto __pyx_L4; } - /*else*/ { - /* "src/convert.pyx":108 + /* "convert.pyx":108 * delta_ut = tpm.delta_UT(utc) * else: * if delta_at == -999: # <<<<<<<<<<<<<< * delta_at = tpm.delta_AT(utc) * if delta_ut == -999: */ + /*else*/ { __pyx_t_2 = ((__pyx_v_delta_at == -999.0) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":109 + /* "convert.pyx":109 * else: * if delta_at == -999: * delta_at = tpm.delta_AT(utc) # <<<<<<<<<<<<<< * if delta_ut == -999: * delta_ut = tpm.delta_UT(utc) */ - __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_delta_AT); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { - __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); - if (likely(__pyx_t_6)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); - __Pyx_INCREF(__pyx_t_6); + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 109, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_delta_AT); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 109, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 109, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_7 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); + if (likely(__pyx_t_7)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); + __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_7, function); + __Pyx_DECREF_SET(__pyx_t_6, function); } } - if (!__pyx_t_6) { - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_GOTREF(__pyx_t_4); - } else { - __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_6); __pyx_t_6 = NULL; - PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_6, __pyx_t_7, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 109, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_delta_at = __pyx_t_5; - goto __pyx_L5; + + /* "convert.pyx":108 + * delta_ut = tpm.delta_UT(utc) + * else: + * if delta_at == -999: # <<<<<<<<<<<<<< + * delta_at = tpm.delta_AT(utc) + * if delta_ut == -999: + */ } - __pyx_L5:; - /* "src/convert.pyx":110 + /* "convert.pyx":110 * if delta_at == -999: * delta_at = tpm.delta_AT(utc) * if delta_ut == -999: # <<<<<<<<<<<<<< @@ -1387,56 +2015,52 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __pyx_t_2 = ((__pyx_v_delta_ut == -999.0) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":111 + /* "convert.pyx":111 * delta_at = tpm.delta_AT(utc) * if delta_ut == -999: * delta_ut = tpm.delta_UT(utc) # <<<<<<<<<<<<<< * try: * len(v6) */ - __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_delta_UT); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_tpm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 111, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_delta_UT); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_8)) { + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 111, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_7 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_3); + if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_8); + __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); } } - if (!__pyx_t_8) { - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_7); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_GOTREF(__pyx_t_4); - } else { - __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_8); __pyx_t_8 = NULL; - PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_7 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } + __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_7, __pyx_t_6) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_6); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 111, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_delta_ut = __pyx_t_5; - goto __pyx_L6; + + /* "convert.pyx":110 + * if delta_at == -999: + * delta_at = tpm.delta_AT(utc) + * if delta_ut == -999: # <<<<<<<<<<<<<< + * delta_ut = tpm.delta_UT(utc) + * try: + */ } - __pyx_L6:; } __pyx_L4:; - /* "src/convert.pyx":112 + /* "convert.pyx":112 * if delta_ut == -999: * delta_ut = tpm.delta_UT(utc) * try: # <<<<<<<<<<<<<< @@ -1444,82 +2068,99 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py * except TypeError: */ { - __Pyx_ExceptionSave(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11); + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10); + __Pyx_XGOTREF(__pyx_t_8); __Pyx_XGOTREF(__pyx_t_9); __Pyx_XGOTREF(__pyx_t_10); - __Pyx_XGOTREF(__pyx_t_11); /*try:*/ { - /* "src/convert.pyx":113 + /* "convert.pyx":113 * delta_ut = tpm.delta_UT(utc) * try: * len(v6) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single vector. */ - __pyx_t_12 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L7_error;} + __pyx_t_11 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(0, 113, __pyx_L7_error) + + /* "convert.pyx":112 + * if delta_ut == -999: + * delta_ut = tpm.delta_UT(utc) + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ } + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L14_try_end; + goto __pyx_L12_try_end; __pyx_L7_error:; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "src/convert.pyx":114 + /* "convert.pyx":114 * try: * len(v6) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single vector. * v6 = (v6,) */ - __pyx_t_13 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); - if (__pyx_t_13) { - __Pyx_AddTraceback("pytpm.convert.convertv6", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;} + __pyx_t_12 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); + if (__pyx_t_12) { + __Pyx_AddTraceback("convert.convertv6", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_6) < 0) __PYX_ERR(0, 114, __pyx_L9_except_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GOTREF(__pyx_t_3); __Pyx_GOTREF(__pyx_t_6); - /* "src/convert.pyx":116 + /* "convert.pyx":116 * except TypeError: * # Not a list. Assume that this is a single vector. * v6 = (v6,) # <<<<<<<<<<<<<< * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): */ - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L9_except_error;} + __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 116, __pyx_L9_except_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_v6); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_v6); __Pyx_GIVEREF(__pyx_v_v6); + PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_v6); __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; goto __pyx_L8_exception_handled; } goto __pyx_L9_except_error; __pyx_L9_except_error:; + + /* "convert.pyx":112 + * if delta_ut == -999: + * delta_ut = tpm.delta_UT(utc) + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ + __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_9); __Pyx_XGIVEREF(__pyx_t_10); - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); + __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10); goto __pyx_L1_error; __pyx_L8_exception_handled:; + __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_9); __Pyx_XGIVEREF(__pyx_t_10); - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); - __pyx_L14_try_end:; + __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10); + __pyx_L12_try_end:; } - /* "src/convert.pyx":117 + /* "convert.pyx":117 * # Not a list. Assume that this is a single vector. * v6 = (v6,) * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -1529,37 +2170,39 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __Pyx_INCREF(__pyx_int_0); __pyx_t_6 = __pyx_int_0; if (likely(PyList_CheckExact(__pyx_v_v6)) || PyTuple_CheckExact(__pyx_v_v6)) { - __pyx_t_3 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_3); __pyx_t_12 = 0; - __pyx_t_14 = NULL; + __pyx_t_3 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_3); __pyx_t_11 = 0; + __pyx_t_13 = NULL; } else { - __pyx_t_12 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_14 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 117, __pyx_L1_error) } for (;;) { - if (likely(!__pyx_t_14)) { + if (likely(!__pyx_t_13)) { if (likely(PyList_CheckExact(__pyx_t_3))) { - if (__pyx_t_12 >= PyList_GET_SIZE(__pyx_t_3)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_12); __Pyx_INCREF(__pyx_t_4); __pyx_t_12++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_3)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_4 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_11); __Pyx_INCREF(__pyx_t_4); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 117, __pyx_L1_error) #else - __pyx_t_4 = PySequence_ITEM(__pyx_t_3, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = PySequence_ITEM(__pyx_t_3, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 117, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); #endif } else { - if (__pyx_t_12 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_12); __Pyx_INCREF(__pyx_t_4); __pyx_t_12++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_3)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_11); __Pyx_INCREF(__pyx_t_4); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 117, __pyx_L1_error) #else - __pyx_t_4 = PySequence_ITEM(__pyx_t_3, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = PySequence_ITEM(__pyx_t_3, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 117, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); #endif } } else { - __pyx_t_4 = __pyx_t_14(__pyx_t_3); + __pyx_t_4 = __pyx_t_13(__pyx_t_3); if (unlikely(!__pyx_t_4)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 117, __pyx_L1_error) } break; } @@ -1569,86 +2212,100 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __pyx_t_4 = 0; __Pyx_INCREF(__pyx_t_6); __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_6); - __pyx_t_4 = PyNumber_Add(__pyx_t_6, __pyx_int_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyInt_AddObjC(__pyx_t_6, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = __pyx_t_4; __pyx_t_4 = 0; - /* "src/convert.pyx":118 + /* "convert.pyx":118 * v6 = (v6,) * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") */ - __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_tpm); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_V6C); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_V6C); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 118, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_14))) { + __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_14); if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); + __Pyx_DECREF_SET(__pyx_t_14, function); } } - if (__pyx_t_7) { - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } else { - __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_4 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_14, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_14); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_4)), Py_NE); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __pyx_t_14 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_4)), Py_NE); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 118, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; if (__pyx_t_2) { - /* "src/convert.pyx":119 + /* "convert.pyx":119 * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): * if j == 0: # <<<<<<<<<<<<<< * raise TypeError("v6 must be an object of type tpm.V6C.") * else: */ - __pyx_t_8 = PyObject_RichCompare(__pyx_v_j, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_2) { + __pyx_t_14 = __Pyx_PyInt_EqObjC(__pyx_v_j, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 119, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 119, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":120 + /* "convert.pyx":120 * if type(v) != type(tpm.V6C()): * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< * else: * raise TypeError( */ - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_14 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 120, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __Pyx_Raise(__pyx_t_14, 0, 0, 0); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __PYX_ERR(0, 120, __pyx_L1_error) + + /* "convert.pyx":119 + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): + * if j == 0: # <<<<<<<<<<<<<< + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + */ } + + /* "convert.pyx":122 + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + * raise TypeError( # <<<<<<<<<<<<<< + * "v6[{0}] must be an object of type tpm.V6C.".format(j)) + * + */ /*else*/ { - /* "src/convert.pyx":123 + /* "convert.pyx":123 * else: * raise TypeError( * "v6[{0}] must be an object of type tpm.V6C.".format(j)) # <<<<<<<<<<<<<< * * tstate = tpm.TSTATE() */ - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) { + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_4))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); @@ -1657,44 +2314,37 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __Pyx_DECREF_SET(__pyx_t_4, function); } } - if (!__pyx_t_7) { - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_j); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - } else { - __pyx_t_15 = PyTuple_New(1+1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_7); __pyx_t_7 = NULL; - __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_15, 0+1, __pyx_v_j); - __Pyx_GIVEREF(__pyx_v_j); - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_15, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - } + __pyx_t_14 = (__pyx_t_7) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_7, __pyx_v_j) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_v_j); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 123, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "src/convert.pyx":122 + /* "convert.pyx":122 * raise TypeError("v6 must be an object of type tpm.V6C.") * else: * raise TypeError( # <<<<<<<<<<<<<< * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * */ - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_14); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 122, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_Raise(__pyx_t_4, 0, 0, 0); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 122, __pyx_L1_error) } + + /* "convert.pyx":118 + * v6 = (v6,) + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< + * if j == 0: + * raise TypeError("v6 must be an object of type tpm.V6C.") + */ } - /* "src/convert.pyx":117 + /* "convert.pyx":117 * # Not a list. Assume that this is a single vector. * v6 = (v6,) * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -1705,383 +2355,397 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":125 + /* "convert.pyx":125 * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * * tstate = tpm.TSTATE() # <<<<<<<<<<<<<< * # Initialize TPM state. * tpm.tpm_data(tstate, tpm.TPM_INIT) */ - __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 125, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_TSTATE); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_TSTATE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 125, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_8); + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); + __Pyx_DECREF_SET(__pyx_t_4, function); } } - if (__pyx_t_3) { - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } else { - __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_6 = (__pyx_t_3) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3) : __Pyx_PyObject_CallNoArg(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 125, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tstate = __pyx_t_6; __pyx_t_6 = 0; - /* "src/convert.pyx":127 + /* "convert.pyx":127 * tstate = tpm.TSTATE() * # Initialize TPM state. * tpm.tpm_data(tstate, tpm.TPM_INIT) # <<<<<<<<<<<<<< * * # Set independent quantities. */ - __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_tpm_data); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_tpm); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 127, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_tpm_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 127, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_TPM_INIT); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_tpm); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 127, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = NULL; + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_TPM_INIT); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 127, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_4 = NULL; __pyx_t_12 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_8)) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); + if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_8); + __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_12 = 1; } } - __pyx_t_15 = PyTuple_New(2+__pyx_t_12); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - if (__pyx_t_8) { - PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_8); __pyx_t_8 = NULL; + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_3)) { + PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_v_tstate, __pyx_t_14}; + __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_12, 2+__pyx_t_12); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 127, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_3)) { + PyObject *__pyx_temp[3] = {__pyx_t_4, __pyx_v_tstate, __pyx_t_14}; + __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_3, __pyx_temp+1-__pyx_t_12, 2+__pyx_t_12); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 127, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + } else + #endif + { + __pyx_t_7 = PyTuple_New(2+__pyx_t_12); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 127, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + if (__pyx_t_4) { + __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = NULL; + } + __Pyx_INCREF(__pyx_v_tstate); + __Pyx_GIVEREF(__pyx_v_tstate); + PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_12, __pyx_v_tstate); + __Pyx_GIVEREF(__pyx_t_14); + PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_12, __pyx_t_14); + __pyx_t_14 = 0; + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 127, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } - __Pyx_INCREF(__pyx_v_tstate); - PyTuple_SET_ITEM(__pyx_t_15, 0+__pyx_t_12, __pyx_v_tstate); - __Pyx_GIVEREF(__pyx_v_tstate); - PyTuple_SET_ITEM(__pyx_t_15, 1+__pyx_t_12, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_15, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":130 + /* "convert.pyx":130 * * # Set independent quantities. * tstate.utc = utc # <<<<<<<<<<<<<< * tstate.delta_ut = delta_ut * tstate.delta_at = delta_at */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_utc); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_utc, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_utc, __pyx_t_6) < 0) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":131 + /* "convert.pyx":131 * # Set independent quantities. * tstate.utc = utc * tstate.delta_ut = delta_ut # <<<<<<<<<<<<<< * tstate.delta_at = delta_at * tstate.lon = tpm.d2r(lon) */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_delta_ut); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_delta_ut); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_delta_ut, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_delta_ut, __pyx_t_6) < 0) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":132 + /* "convert.pyx":132 * tstate.utc = utc * tstate.delta_ut = delta_ut * tstate.delta_at = delta_at # <<<<<<<<<<<<<< * tstate.lon = tpm.d2r(lon) * tstate.lat = tpm.d2r(lat) */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_delta_at); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_delta_at); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_delta_at, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_delta_at, __pyx_t_6) < 0) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":133 + /* "convert.pyx":133 * tstate.delta_ut = delta_ut * tstate.delta_at = delta_at * tstate.lon = tpm.d2r(lon) # <<<<<<<<<<<<<< * tstate.lat = tpm.d2r(lat) * tstate.alt = alt */ - __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 133, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_d2r); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_d2r); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 133, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(__pyx_v_lon); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_lon); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 133, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_15))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_15); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15); - __Pyx_INCREF(__pyx_t_4); + __pyx_t_14 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) { + __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_7); + if (likely(__pyx_t_14)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); + __Pyx_INCREF(__pyx_t_14); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_15, function); + __Pyx_DECREF_SET(__pyx_t_7, function); } } - if (!__pyx_t_4) { - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_15, __pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GOTREF(__pyx_t_6); - } else { - __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_4); __pyx_t_4 = NULL; - PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - } - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_lon, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_14, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_3); + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 133, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_lon, __pyx_t_6) < 0) __PYX_ERR(0, 133, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":134 + /* "convert.pyx":134 * tstate.delta_at = delta_at * tstate.lon = tpm.d2r(lon) * tstate.lat = tpm.d2r(lat) # <<<<<<<<<<<<<< * tstate.alt = alt * tstate.xpole = xpole */ - __pyx_t_15 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_d2r); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_15 = PyFloat_FromDouble(__pyx_v_lat); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_3 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_8); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); - __Pyx_INCREF(__pyx_t_3); + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_tpm); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 134, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_d2r); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 134, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __pyx_t_7 = PyFloat_FromDouble(__pyx_v_lat); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 134, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_14 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { + __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_3); + if (likely(__pyx_t_14)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); + __Pyx_INCREF(__pyx_t_14); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_8, function); + __Pyx_DECREF_SET(__pyx_t_3, function); } } - if (!__pyx_t_3) { - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_15); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_GOTREF(__pyx_t_6); - } else { - __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = NULL; - PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_15 = 0; - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_lat, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = (__pyx_t_14) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_14, __pyx_t_7) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_7); + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 134, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_lat, __pyx_t_6) < 0) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":135 + /* "convert.pyx":135 * tstate.lon = tpm.d2r(lon) * tstate.lat = tpm.d2r(lat) * tstate.alt = alt # <<<<<<<<<<<<<< * tstate.xpole = xpole * tstate.ypole = ypole */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_alt); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_alt); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_alt, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_alt, __pyx_t_6) < 0) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":136 + /* "convert.pyx":136 * tstate.lat = tpm.d2r(lat) * tstate.alt = alt * tstate.xpole = xpole # <<<<<<<<<<<<<< * tstate.ypole = ypole * tstate.T = T */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_xpole); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_xpole); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_xpole, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_xpole, __pyx_t_6) < 0) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":137 + /* "convert.pyx":137 * tstate.alt = alt * tstate.xpole = xpole * tstate.ypole = ypole # <<<<<<<<<<<<<< * tstate.T = T * tstate.P = P */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_ypole); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_ypole); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_ypole, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_ypole, __pyx_t_6) < 0) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":138 + /* "convert.pyx":138 * tstate.xpole = xpole * tstate.ypole = ypole * tstate.T = T # <<<<<<<<<<<<<< * tstate.P = P * tstate.H = H */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_T); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_T); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_T, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_T, __pyx_t_6) < 0) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":139 + /* "convert.pyx":139 * tstate.ypole = ypole * tstate.T = T * tstate.P = P # <<<<<<<<<<<<<< * tstate.H = H * tstate.wavelength = wavelength */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_P); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_P); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_P, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_P, __pyx_t_6) < 0) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":140 + /* "convert.pyx":140 * tstate.T = T * tstate.P = P * tstate.H = H # <<<<<<<<<<<<<< * tstate.wavelength = wavelength * */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_H); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_H); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_H, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_H, __pyx_t_6) < 0) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":141 + /* "convert.pyx":141 * tstate.P = P * tstate.H = H * tstate.wavelength = wavelength # <<<<<<<<<<<<<< * * # Calculate all dependent parameters. */ - __pyx_t_6 = PyFloat_FromDouble(__pyx_v_wavelength); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyFloat_FromDouble(__pyx_v_wavelength); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_wavelength, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(__pyx_v_tstate, __pyx_n_s_wavelength, __pyx_t_6) < 0) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":144 + /* "convert.pyx":144 * * # Calculate all dependent parameters. * tpm.tpm_data(tstate, tpm.TPM_ALL) # <<<<<<<<<<<<<< * * pvec = tpm.PVEC() */ - __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_tpm_data); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_TPM_ALL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_tpm_data); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_TPM_ALL); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = NULL; __pyx_t_12 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_8)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_8); + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_7))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_7); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); + __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); + __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_12 = 1; } } - __pyx_t_3 = PyTuple_New(2+__pyx_t_12); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - if (__pyx_t_8) { - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_8); __pyx_t_8 = NULL; + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_7)) { + PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_tstate, __pyx_t_14}; + __pyx_t_6 = __Pyx_PyFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_12, 2+__pyx_t_12); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_7)) { + PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_tstate, __pyx_t_14}; + __pyx_t_6 = __Pyx_PyCFunction_FastCall(__pyx_t_7, __pyx_temp+1-__pyx_t_12, 2+__pyx_t_12); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + } else + #endif + { + __pyx_t_4 = PyTuple_New(2+__pyx_t_12); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + if (__pyx_t_3) { + __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); __pyx_t_3 = NULL; + } + __Pyx_INCREF(__pyx_v_tstate); + __Pyx_GIVEREF(__pyx_v_tstate); + PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_12, __pyx_v_tstate); + __Pyx_GIVEREF(__pyx_t_14); + PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_12, __pyx_t_14); + __pyx_t_14 = 0; + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 144, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - __Pyx_INCREF(__pyx_v_tstate); - PyTuple_SET_ITEM(__pyx_t_3, 0+__pyx_t_12, __pyx_v_tstate); - __Pyx_GIVEREF(__pyx_v_tstate); - PyTuple_SET_ITEM(__pyx_t_3, 1+__pyx_t_12, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_15 = 0; - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":146 + /* "convert.pyx":146 * tpm.tpm_data(tstate, tpm.TPM_ALL) * * pvec = tpm.PVEC() # <<<<<<<<<<<<<< * v6_out = [] * for v in v6: */ - __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_tpm); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 146, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_PVEC); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_PVEC); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __pyx_t_7 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); + if (likely(__pyx_t_7)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); + __Pyx_DECREF_SET(__pyx_t_4, function); } } - if (__pyx_t_4) { - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } else { - __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_6 = (__pyx_t_7) ? __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7) : __Pyx_PyObject_CallNoArg(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_pvec = __pyx_t_6; __pyx_t_6 = 0; - /* "src/convert.pyx":147 + /* "convert.pyx":147 * * pvec = tpm.PVEC() * v6_out = [] # <<<<<<<<<<<<<< * for v in v6: * pvec[s1] = v */ - __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_v_v6_out = ((PyObject*)__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":148 + /* "convert.pyx":148 * pvec = tpm.PVEC() * v6_out = [] * for v in v6: # <<<<<<<<<<<<<< @@ -2089,117 +2753,145 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py * */ if (likely(PyList_CheckExact(__pyx_v_v6)) || PyTuple_CheckExact(__pyx_v_v6)) { - __pyx_t_6 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_6); __pyx_t_12 = 0; - __pyx_t_14 = NULL; + __pyx_t_6 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_6); __pyx_t_11 = 0; + __pyx_t_13 = NULL; } else { - __pyx_t_12 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 148, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_14 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 148, __pyx_L1_error) } for (;;) { - if (likely(!__pyx_t_14)) { + if (likely(!__pyx_t_13)) { if (likely(PyList_CheckExact(__pyx_t_6))) { - if (__pyx_t_12 >= PyList_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_12); __Pyx_INCREF(__pyx_t_3); __pyx_t_12++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_6)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_4 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_11); __Pyx_INCREF(__pyx_t_4); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 148, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_6, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = PySequence_ITEM(__pyx_t_6, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 148, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); #endif } else { - if (__pyx_t_12 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_12); __Pyx_INCREF(__pyx_t_3); __pyx_t_12++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_6)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_11); __Pyx_INCREF(__pyx_t_4); __pyx_t_11++; if (unlikely(0 < 0)) __PYX_ERR(0, 148, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_6, __pyx_t_12); __pyx_t_12++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = PySequence_ITEM(__pyx_t_6, __pyx_t_11); __pyx_t_11++; if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 148, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); #endif } } else { - __pyx_t_3 = __pyx_t_14(__pyx_t_6); - if (unlikely(!__pyx_t_3)) { + __pyx_t_4 = __pyx_t_13(__pyx_t_6); + if (unlikely(!__pyx_t_4)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 148, __pyx_L1_error) } break; } - __Pyx_GOTREF(__pyx_t_3); + __Pyx_GOTREF(__pyx_t_4); } - __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_3); - __pyx_t_3 = 0; + __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_4); + __pyx_t_4 = 0; - /* "src/convert.pyx":149 + /* "convert.pyx":149 * v6_out = [] * for v in v6: * pvec[s1] = v # <<<<<<<<<<<<<< * * temp = tpm.tpm(pvec, s1, s2, epoch, equinox, tstate) */ - if (unlikely(__Pyx_SetItemInt(__pyx_v_pvec, __pyx_v_s1, __pyx_v_v, int, 1, __Pyx_PyInt_From_int, 0, 1, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(__Pyx_SetItemInt(__pyx_v_pvec, __pyx_v_s1, __pyx_v_v, int, 1, __Pyx_PyInt_From_int, 0, 1, 1) < 0)) __PYX_ERR(0, 149, __pyx_L1_error) - /* "src/convert.pyx":151 + /* "convert.pyx":151 * pvec[s1] = v * * temp = tpm.tpm(pvec, s1, s2, epoch, equinox, tstate) # <<<<<<<<<<<<<< * assert s2 == temp * v6_out.append(pvec[s2]) */ - __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_tpm); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_s1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_s2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyFloat_FromDouble(__pyx_v_epoch); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_tpm); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_tpm); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __pyx_t_7 = __Pyx_PyInt_From_int(__pyx_v_s1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 151, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_16 = PyFloat_FromDouble(__pyx_v_equinox); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_s2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_15 = PyFloat_FromDouble(__pyx_v_epoch); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_15); + __pyx_t_16 = PyFloat_FromDouble(__pyx_v_equinox); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 151, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_17 = NULL; - __pyx_t_18 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_15))) { - __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_15); + __pyx_t_12 = 0; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_14))) { + __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_14); if (likely(__pyx_t_17)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_15); + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_14); __Pyx_INCREF(__pyx_t_17); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_15, function); - __pyx_t_18 = 1; + __Pyx_DECREF_SET(__pyx_t_14, function); + __pyx_t_12 = 1; } } - __pyx_t_19 = PyTuple_New(6+__pyx_t_18); if (unlikely(!__pyx_t_19)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_19); - if (__pyx_t_17) { - PyTuple_SET_ITEM(__pyx_t_19, 0, __pyx_t_17); __Pyx_GIVEREF(__pyx_t_17); __pyx_t_17 = NULL; - } - __Pyx_INCREF(__pyx_v_pvec); - PyTuple_SET_ITEM(__pyx_t_19, 0+__pyx_t_18, __pyx_v_pvec); - __Pyx_GIVEREF(__pyx_v_pvec); - PyTuple_SET_ITEM(__pyx_t_19, 1+__pyx_t_18, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_19, 2+__pyx_t_18, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_19, 3+__pyx_t_18, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_19, 4+__pyx_t_18, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __Pyx_INCREF(__pyx_v_tstate); - PyTuple_SET_ITEM(__pyx_t_19, 5+__pyx_t_18, __pyx_v_tstate); - __Pyx_GIVEREF(__pyx_v_tstate); + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_14)) { + PyObject *__pyx_temp[7] = {__pyx_t_17, __pyx_v_pvec, __pyx_t_7, __pyx_t_3, __pyx_t_15, __pyx_t_16, __pyx_v_tstate}; + __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_12, 6+__pyx_t_12); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_14)) { + PyObject *__pyx_temp[7] = {__pyx_t_17, __pyx_v_pvec, __pyx_t_7, __pyx_t_3, __pyx_t_15, __pyx_t_16, __pyx_v_tstate}; + __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_14, __pyx_temp+1-__pyx_t_12, 6+__pyx_t_12); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + } else + #endif + { + __pyx_t_18 = PyTuple_New(6+__pyx_t_12); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_18); + if (__pyx_t_17) { + __Pyx_GIVEREF(__pyx_t_17); PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_17); __pyx_t_17 = NULL; + } + __Pyx_INCREF(__pyx_v_pvec); + __Pyx_GIVEREF(__pyx_v_pvec); + PyTuple_SET_ITEM(__pyx_t_18, 0+__pyx_t_12, __pyx_v_pvec); + __Pyx_GIVEREF(__pyx_t_7); + PyTuple_SET_ITEM(__pyx_t_18, 1+__pyx_t_12, __pyx_t_7); + __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_18, 2+__pyx_t_12, __pyx_t_3); + __Pyx_GIVEREF(__pyx_t_15); + PyTuple_SET_ITEM(__pyx_t_18, 3+__pyx_t_12, __pyx_t_15); + __Pyx_GIVEREF(__pyx_t_16); + PyTuple_SET_ITEM(__pyx_t_18, 4+__pyx_t_12, __pyx_t_16); + __Pyx_INCREF(__pyx_v_tstate); + __Pyx_GIVEREF(__pyx_v_tstate); + PyTuple_SET_ITEM(__pyx_t_18, 5+__pyx_t_12, __pyx_v_tstate); + __pyx_t_7 = 0; + __pyx_t_3 = 0; + __pyx_t_15 = 0; + __pyx_t_16 = 0; + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_t_18, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 151, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; + } + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_XDECREF_SET(__pyx_v_temp, __pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = 0; - __pyx_t_7 = 0; - __pyx_t_16 = 0; - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_15, __pyx_t_19, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_XDECREF_SET(__pyx_v_temp, __pyx_t_3); - __pyx_t_3 = 0; - /* "src/convert.pyx":152 + /* "convert.pyx":152 * * temp = tpm.tpm(pvec, s1, s2, epoch, equinox, tstate) * assert s2 == temp # <<<<<<<<<<<<<< @@ -2208,32 +2900,32 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py */ #ifndef CYTHON_WITHOUT_ASSERTIONS if (unlikely(!Py_OptimizeFlag)) { - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_s2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_15 = PyObject_RichCompare(__pyx_t_3, __pyx_v_temp, Py_EQ); __Pyx_XGOTREF(__pyx_t_15); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_15); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_s2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 152, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_14 = PyObject_RichCompare(__pyx_t_4, __pyx_v_temp, Py_EQ); __Pyx_XGOTREF(__pyx_t_14); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 152, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_14); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 152, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; if (unlikely(!__pyx_t_2)) { PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 152, __pyx_L1_error) } } #endif - /* "src/convert.pyx":153 + /* "convert.pyx":153 * temp = tpm.tpm(pvec, s1, s2, epoch, equinox, tstate) * assert s2 == temp * v6_out.append(pvec[s2]) # <<<<<<<<<<<<<< * * if len(v6) == 1: */ - __pyx_t_15 = __Pyx_GetItemInt(__pyx_v_pvec, __pyx_v_s2, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(__pyx_t_15 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_20 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_15); if (unlikely(__pyx_t_20 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __pyx_t_14 = __Pyx_GetItemInt(__pyx_v_pvec, __pyx_v_s2, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 153, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_19 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_14); if (unlikely(__pyx_t_19 == ((int)-1))) __PYX_ERR(0, 153, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "src/convert.pyx":148 + /* "convert.pyx":148 * pvec = tpm.PVEC() * v6_out = [] * for v in v6: # <<<<<<<<<<<<<< @@ -2243,18 +2935,18 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "src/convert.pyx":155 + /* "convert.pyx":155 * v6_out.append(pvec[s2]) * * if len(v6) == 1: # <<<<<<<<<<<<<< * return v6_out[0] * return v6_out */ - __pyx_t_12 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((__pyx_t_12 == 1) != 0); + __pyx_t_11 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_11 == ((Py_ssize_t)-1))) __PYX_ERR(0, 155, __pyx_L1_error) + __pyx_t_2 = ((__pyx_t_11 == 1) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":156 + /* "convert.pyx":156 * * if len(v6) == 1: * return v6_out[0] # <<<<<<<<<<<<<< @@ -2262,14 +2954,22 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_6 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 156, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_r = __pyx_t_6; __pyx_t_6 = 0; goto __pyx_L0; + + /* "convert.pyx":155 + * v6_out.append(pvec[s2]) + * + * if len(v6) == 1: # <<<<<<<<<<<<<< + * return v6_out[0] + * return v6_out + */ } - /* "src/convert.pyx":157 + /* "convert.pyx":157 * if len(v6) == 1: * return v6_out[0] * return v6_out # <<<<<<<<<<<<<< @@ -2281,7 +2981,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __pyx_r = __pyx_v_v6_out; goto __pyx_L0; - /* "src/convert.pyx":4 + /* "convert.pyx":4 * * * def convertv6(v6=None, double utc=-999, double delta_at=-999, # <<<<<<<<<<<<<< @@ -2295,12 +2995,12 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py __Pyx_XDECREF(__pyx_t_4); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); + __Pyx_XDECREF(__pyx_t_14); __Pyx_XDECREF(__pyx_t_15); __Pyx_XDECREF(__pyx_t_16); __Pyx_XDECREF(__pyx_t_17); - __Pyx_XDECREF(__pyx_t_19); - __Pyx_AddTraceback("pytpm.convert.convertv6", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_XDECREF(__pyx_t_18); + __Pyx_AddTraceback("convert.convertv6", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_j); @@ -2315,7 +3015,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py return __pyx_r; } -/* "src/convert.pyx":160 +/* "convert.pyx":160 * * * def precess(alpha=-999, delta=-999, start=-999, end=-999, # <<<<<<<<<<<<<< @@ -2324,10 +3024,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_convertv6(CYTHON_UNUSED PyObject *__py */ /* Python wrapper */ -static PyObject *__pyx_pw_5pytpm_7convert_3precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_7convert_2precess[] = "Precess list of alpha and delta values.\n\n Parameters\n ----------\n alpha : float or list of floats or 1D Numpy array.\n Longitudinal angle in degrees.\n dec : float or list of floats or 1D Numpy array.\n Latitudinal angle in degrees.\n start : float\n Starting time for precession, as a Julian date.\n end : float\n End time for precession, as a Julian date.\n pflag : int\n The precession model to use.\n\n Returns\n -------\n (a, d) : 2-element tuple or list of 2-element tuples\n Precessed longitudinal and latitudinal angles.\n\n Notes\n -----\n This function can be used to precess equatorial (ra,dec)\n coordinates using a particular model of precession. The input\n coordinates can be in the FK5 or FK4 systems. In the FK5 system\n there is only one precession model, which is selected using ``pflag\n == tpm.PRECESS_FK5``. The FK4 system has several models, and can be\n selected by setting appropriate constants as the value of\n `pflag`:\n\n PRECESS_ANDOYER, PRECESS_NEWCOMB, PRECESS_KINOSHITA,\n PRECESS_LIESKE\n\n See the tpm manual for definitions of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_7convert_3precess = {"precess", (PyCFunction)__pyx_pw_5pytpm_7convert_3precess, METH_VARARGS|METH_KEYWORDS, __pyx_doc_5pytpm_7convert_2precess}; -static PyObject *__pyx_pw_5pytpm_7convert_3precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +static PyObject *__pyx_pw_7convert_3precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_7convert_2precess[] = "Precess list of alpha and delta values.\n\n Parameters\n ----------\n alpha : float or list of floats or 1D Numpy array.\n Longitudinal angle in degrees.\n dec : float or list of floats or 1D Numpy array.\n Latitudinal angle in degrees.\n start : float\n Starting time for precession, as a Julian date.\n end : float\n End time for precession, as a Julian date.\n pflag : int\n The precession model to use.\n\n Returns\n -------\n (a, d) : 2-element tuple or list of 2-element tuples\n Precessed longitudinal and latitudinal angles.\n\n Notes\n -----\n This function can be used to precess equatorial (ra,dec)\n coordinates using a particular model of precession. The input\n coordinates can be in the FK5 or FK4 systems. In the FK5 system\n there is only one precession model, which is selected using ``pflag\n == tpm.PRECESS_FK5``. The FK4 system has several models, and can be\n selected by setting appropriate constants as the value of\n `pflag`:\n\n PRECESS_ANDOYER, PRECESS_NEWCOMB, PRECESS_KINOSHITA,\n PRECESS_LIESKE\n\n See the tpm manual for definitions of these constants.\n\n "; +static PyMethodDef __pyx_mdef_7convert_3precess = {"precess", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7convert_3precess, METH_VARARGS|METH_KEYWORDS, __pyx_doc_7convert_2precess}; +static PyObject *__pyx_pw_7convert_3precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_alpha = 0; PyObject *__pyx_v_delta = 0; PyObject *__pyx_v_start = 0; @@ -2352,10 +3052,15 @@ static PyObject *__pyx_pw_5pytpm_7convert_3precess(PyObject *__pyx_self, PyObjec const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); switch (pos_args) { case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -2363,40 +3068,49 @@ static PyObject *__pyx_pw_5pytpm_7convert_3precess(PyObject *__pyx_self, PyObjec switch (pos_args) { case 0: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alpha); if (value) { values[0] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_delta); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta); if (value) { values[1] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_start); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start); if (value) { values[2] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 3: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end); if (value) { values[3] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 4: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pflag); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag); if (value) { values[4] = value; kw_args--; } } } if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "precess") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "precess") < 0)) __PYX_ERR(0, 160, __pyx_L3_error) } } else { switch (PyTuple_GET_SIZE(__pyx_args)) { case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -2409,20 +3123,20 @@ static PyObject *__pyx_pw_5pytpm_7convert_3precess(PyObject *__pyx_self, PyObjec } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("precess", 0, 0, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("precess", 0, 0, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 160, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_5pytpm_7convert_2precess(__pyx_self, __pyx_v_alpha, __pyx_v_delta, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + __pyx_r = __pyx_pf_7convert_2precess(__pyx_self, __pyx_v_alpha, __pyx_v_delta, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { +static PyObject *__pyx_pf_7convert_2precess(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { int __pyx_v_j; double __pyx_v_i; PyObject *__pyx_v_alpha_out = NULL; @@ -2442,9 +3156,9 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx PyObject *__pyx_t_10 = NULL; PyObject *__pyx_t_11 = NULL; PyObject *__pyx_t_12 = NULL; - PyObject *__pyx_t_13 = NULL; - int __pyx_t_14; - Py_ssize_t __pyx_t_15; + int __pyx_t_13; + Py_ssize_t __pyx_t_14; + int __pyx_t_15; int __pyx_t_16; int __pyx_t_17; int __pyx_lineno = 0; @@ -2454,7 +3168,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_INCREF(__pyx_v_alpha); __Pyx_INCREF(__pyx_v_delta); - /* "src/convert.pyx":200 + /* "convert.pyx":200 * cdef int j * cdef double i * try: # <<<<<<<<<<<<<< @@ -2462,55 +3176,67 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx * except TypeError: */ { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_3); /*try:*/ { - /* "src/convert.pyx":201 + /* "convert.pyx":201 * cdef double i * try: * len(alpha) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single number. */ - __pyx_t_4 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 201, __pyx_L3_error) + + /* "convert.pyx":200 + * cdef int j + * cdef double i + * try: # <<<<<<<<<<<<<< + * len(alpha) + * except TypeError: + */ } - /*else:*/ { - /* "src/convert.pyx":206 + /* "convert.pyx":206 * alpha = [tpm.d2r(alpha)] * else: * alpha = [tpm.d2r(i) for i in alpha] # <<<<<<<<<<<<<< * try: * len(delta) */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + /*else:*/ { + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_5); if (likely(PyList_CheckExact(__pyx_v_alpha)) || PyTuple_CheckExact(__pyx_v_alpha)) { __pyx_t_6 = __pyx_v_alpha; __Pyx_INCREF(__pyx_t_6); __pyx_t_4 = 0; __pyx_t_7 = NULL; } else { - __pyx_t_4 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_alpha); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_4 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_alpha); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 206, __pyx_L5_except_error) } for (;;) { if (likely(!__pyx_t_7)) { if (likely(PyList_CheckExact(__pyx_t_6))) { if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_8 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_8); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_8 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_8); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 206, __pyx_L5_except_error) #else - __pyx_t_8 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 206, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_8); #endif } else { if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_8); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_8); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 206, __pyx_L5_except_error) #else - __pyx_t_8 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 206, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_8); #endif } } else { @@ -2518,25 +3244,25 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx if (unlikely(!__pyx_t_8)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 206, __pyx_L5_except_error) } break; } __Pyx_GOTREF(__pyx_t_8); } - __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_i = __pyx_t_9; - __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_tpm); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_d2r); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_d2r); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_10 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_12 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_11))) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_11))) { __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_11); if (likely(__pyx_t_12)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11); @@ -2545,23 +3271,13 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_DECREF_SET(__pyx_t_11, function); } } - if (!__pyx_t_12) { - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_10); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_GOTREF(__pyx_t_8); - } else { - __pyx_t_13 = PyTuple_New(1+1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_13); - PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_12); __Pyx_GIVEREF(__pyx_t_12); __pyx_t_12 = NULL; - PyTuple_SET_ITEM(__pyx_t_13, 0+1, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_10 = 0; - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_13, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - } + __pyx_t_8 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_11, __pyx_t_12, __pyx_t_10) : __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_10); + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 206, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_8))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_8))) __PYX_ERR(0, 206, __pyx_L5_except_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -2571,75 +3287,73 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L10_try_end; + goto __pyx_L8_try_end; __pyx_L3_error:; - /* "src/convert.pyx":202 + /* "convert.pyx":202 * try: * len(alpha) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single number. * alpha = [tpm.d2r(alpha)] */ - __pyx_t_14 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); - if (__pyx_t_14) { - __Pyx_AddTraceback("pytpm.convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); + if (__pyx_t_13) { + __Pyx_AddTraceback("convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_8) < 0) __PYX_ERR(0, 202, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GOTREF(__pyx_t_6); __Pyx_GOTREF(__pyx_t_8); - /* "src/convert.pyx":204 + /* "convert.pyx":204 * except TypeError: * # Not a list. Assume that this is a single number. * alpha = [tpm.d2r(alpha)] # <<<<<<<<<<<<<< * else: * alpha = [tpm.d2r(i) for i in alpha] */ - __pyx_t_13 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_d2r); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_tpm); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 204, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_10))) { - __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_10); - if (likely(__pyx_t_13)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); - __Pyx_INCREF(__pyx_t_13); + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_d2r); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 204, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_12); + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_12))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_12); + if (likely(__pyx_t_10)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_12); + __Pyx_INCREF(__pyx_t_10); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_10, function); + __Pyx_DECREF_SET(__pyx_t_12, function); } } - if (!__pyx_t_13) { - __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_alpha); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_11); - } else { - __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_12); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_13); __Pyx_GIVEREF(__pyx_t_13); __pyx_t_13 = NULL; - __Pyx_INCREF(__pyx_v_alpha); - PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_v_alpha); - __Pyx_GIVEREF(__pyx_v_alpha); - __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_12, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - } - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyList_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} - __Pyx_GOTREF(__pyx_t_10); - PyList_SET_ITEM(__pyx_t_10, 0, __pyx_t_11); + __pyx_t_11 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_12, __pyx_t_10, __pyx_v_alpha) : __Pyx_PyObject_CallOneArg(__pyx_t_12, __pyx_v_alpha); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 204, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_11); + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + __pyx_t_12 = PyList_New(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 204, __pyx_L5_except_error) + __Pyx_GOTREF(__pyx_t_12); __Pyx_GIVEREF(__pyx_t_11); + PyList_SET_ITEM(__pyx_t_12, 0, __pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF_SET(__pyx_v_alpha, __pyx_t_10); - __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_DECREF_SET(__pyx_v_alpha, __pyx_t_12); + __pyx_t_12 = 0; + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L4_exception_handled; } goto __pyx_L5_except_error; __pyx_L5_except_error:; + + /* "convert.pyx":200 + * cdef int j + * cdef double i + * try: # <<<<<<<<<<<<<< + * len(alpha) + * except TypeError: + */ __Pyx_XGIVEREF(__pyx_t_1); __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_3); @@ -2650,10 +3364,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_3); __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - __pyx_L10_try_end:; + __pyx_L8_try_end:; } - /* "src/convert.pyx":207 + /* "convert.pyx":207 * else: * alpha = [tpm.d2r(i) for i in alpha] * try: # <<<<<<<<<<<<<< @@ -2661,55 +3375,67 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx * except TypeError: */ { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign __Pyx_ExceptionSave(&__pyx_t_3, &__pyx_t_2, &__pyx_t_1); __Pyx_XGOTREF(__pyx_t_3); __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_1); /*try:*/ { - /* "src/convert.pyx":208 + /* "convert.pyx":208 * alpha = [tpm.d2r(i) for i in alpha] * try: * len(delta) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single number. */ - __pyx_t_4 = PyObject_Length(__pyx_v_delta); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L15_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_delta); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 208, __pyx_L13_error) + + /* "convert.pyx":207 + * else: + * alpha = [tpm.d2r(i) for i in alpha] + * try: # <<<<<<<<<<<<<< + * len(delta) + * except TypeError: + */ } - /*else:*/ { - /* "src/convert.pyx":213 + /* "convert.pyx":213 * delta = [tpm.d2r(delta)] * else: * delta = [tpm.d2r(i) for i in delta] # <<<<<<<<<<<<<< * * if len(alpha) != len(delta): */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + /*else:*/ { + __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 213, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_8); if (likely(PyList_CheckExact(__pyx_v_delta)) || PyTuple_CheckExact(__pyx_v_delta)) { __pyx_t_6 = __pyx_v_delta; __Pyx_INCREF(__pyx_t_6); __pyx_t_4 = 0; __pyx_t_7 = NULL; } else { - __pyx_t_4 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_delta); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_4 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_delta); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 213, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext; if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 213, __pyx_L15_except_error) } for (;;) { if (likely(!__pyx_t_7)) { if (likely(PyList_CheckExact(__pyx_t_6))) { if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_5 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 213, __pyx_L15_except_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_5 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 213, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_5); #endif } else { if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_4); __Pyx_INCREF(__pyx_t_5); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 213, __pyx_L15_except_error) #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_5 = PySequence_ITEM(__pyx_t_6, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 213, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_5); #endif } } else { @@ -2717,50 +3443,40 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx if (unlikely(!__pyx_t_5)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 213, __pyx_L15_except_error) } break; } __Pyx_GOTREF(__pyx_t_5); } - __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 213, __pyx_L15_except_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_i = __pyx_t_9; - __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_d2r); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_tpm); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 213, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_12); + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_d2r); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 213, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_12 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_11))) { - __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_11); - if (likely(__pyx_t_12)) { + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + __pyx_t_12 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 213, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_12); + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_11))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_11); + if (likely(__pyx_t_10)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11); - __Pyx_INCREF(__pyx_t_12); + __Pyx_INCREF(__pyx_t_10); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_11, function); } } - if (!__pyx_t_12) { - __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_10); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_GOTREF(__pyx_t_5); - } else { - __pyx_t_13 = PyTuple_New(1+1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_13); - PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_12); __Pyx_GIVEREF(__pyx_t_12); __pyx_t_12 = NULL; - PyTuple_SET_ITEM(__pyx_t_13, 0+1, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_10 = 0; - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_13, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - } + __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_11, __pyx_t_10, __pyx_t_12) : __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_12); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 213, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_8, (PyObject*)__pyx_t_5))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + if (unlikely(__Pyx_ListComp_Append(__pyx_t_8, (PyObject*)__pyx_t_5))) __PYX_ERR(0, 213, __pyx_L15_except_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -2770,197 +3486,203 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L22_try_end; - __pyx_L15_error:; - __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + goto __pyx_L18_try_end; + __pyx_L13_error:; __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":209 + /* "convert.pyx":209 * try: * len(delta) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single number. * delta = [tpm.d2r(delta)] */ - __pyx_t_14 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); - if (__pyx_t_14) { - __Pyx_AddTraceback("pytpm.convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_6, &__pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); + if (__pyx_t_13) { + __Pyx_AddTraceback("convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_6, &__pyx_t_5) < 0) __PYX_ERR(0, 209, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GOTREF(__pyx_t_6); __Pyx_GOTREF(__pyx_t_5); - /* "src/convert.pyx":211 + /* "convert.pyx":211 * except TypeError: * # Not a list. Assume that this is a single number. * delta = [tpm.d2r(delta)] # <<<<<<<<<<<<<< * else: * delta = [tpm.d2r(i) for i in delta] */ - __pyx_t_13 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_d2r); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_tpm); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 211, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_12); + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_d2r); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 211, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_10))) { - __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_10); - if (likely(__pyx_t_13)) { + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + __pyx_t_12 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_10))) { + __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_10); + if (likely(__pyx_t_12)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); - __Pyx_INCREF(__pyx_t_13); + __Pyx_INCREF(__pyx_t_12); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_10, function); } } - if (!__pyx_t_13) { - __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_delta); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_11); - } else { - __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_12); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_13); __Pyx_GIVEREF(__pyx_t_13); __pyx_t_13 = NULL; - __Pyx_INCREF(__pyx_v_delta); - PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_v_delta); - __Pyx_GIVEREF(__pyx_v_delta); - __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_12, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - } + __pyx_t_11 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_10, __pyx_t_12, __pyx_v_delta) : __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_v_delta); + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 211, __pyx_L15_except_error) + __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyList_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L17_except_error;} + __pyx_t_10 = PyList_New(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 211, __pyx_L15_except_error) __Pyx_GOTREF(__pyx_t_10); - PyList_SET_ITEM(__pyx_t_10, 0, __pyx_t_11); __Pyx_GIVEREF(__pyx_t_11); + PyList_SET_ITEM(__pyx_t_10, 0, __pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_delta, __pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L16_exception_handled; + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + goto __pyx_L14_exception_handled; } - goto __pyx_L17_except_error; - __pyx_L17_except_error:; + goto __pyx_L15_except_error; + __pyx_L15_except_error:; + + /* "convert.pyx":207 + * else: + * alpha = [tpm.d2r(i) for i in alpha] + * try: # <<<<<<<<<<<<<< + * len(delta) + * except TypeError: + */ __Pyx_XGIVEREF(__pyx_t_3); __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_1); __Pyx_ExceptionReset(__pyx_t_3, __pyx_t_2, __pyx_t_1); goto __pyx_L1_error; - __pyx_L16_exception_handled:; + __pyx_L14_exception_handled:; __Pyx_XGIVEREF(__pyx_t_3); __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_1); __Pyx_ExceptionReset(__pyx_t_3, __pyx_t_2, __pyx_t_1); - __pyx_L22_try_end:; + __pyx_L18_try_end:; } - /* "src/convert.pyx":215 + /* "convert.pyx":215 * delta = [tpm.d2r(i) for i in delta] * * if len(alpha) != len(delta): # <<<<<<<<<<<<<< * raise ValueError( * "Both alpha and delta must be of equal length.") */ - __pyx_t_4 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_15 = PyObject_Length(__pyx_v_delta); if (unlikely(__pyx_t_15 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_16 = ((__pyx_t_4 != __pyx_t_15) != 0); - if (__pyx_t_16) { + __pyx_t_4 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 215, __pyx_L1_error) + __pyx_t_14 = PyObject_Length(__pyx_v_delta); if (unlikely(__pyx_t_14 == ((Py_ssize_t)-1))) __PYX_ERR(0, 215, __pyx_L1_error) + __pyx_t_15 = ((__pyx_t_4 != __pyx_t_14) != 0); + if (unlikely(__pyx_t_15)) { - /* "src/convert.pyx":216 + /* "convert.pyx":216 * * if len(alpha) != len(delta): * raise ValueError( # <<<<<<<<<<<<<< * "Both alpha and delta must be of equal length.") * */ - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_Raise(__pyx_t_5, 0, 0, 0); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 216, __pyx_L1_error) + + /* "convert.pyx":215 + * delta = [tpm.d2r(i) for i in delta] + * + * if len(alpha) != len(delta): # <<<<<<<<<<<<<< + * raise ValueError( + * "Both alpha and delta must be of equal length.") + */ } - /* "src/convert.pyx":219 + /* "convert.pyx":219 * "Both alpha and delta must be of equal length.") * * alpha_out = [] # <<<<<<<<<<<<<< * delta_out = [] * for j in range(len(alpha)): */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_alpha_out = ((PyObject*)__pyx_t_5); __pyx_t_5 = 0; - /* "src/convert.pyx":220 + /* "convert.pyx":220 * * alpha_out = [] * delta_out = [] # <<<<<<<<<<<<<< * for j in range(len(alpha)): * v6 = tpm.V6S(r=1e10,alpha=alpha[j],delta=delta[j]) */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_v_delta_out = ((PyObject*)__pyx_t_5); __pyx_t_5 = 0; - /* "src/convert.pyx":221 + /* "convert.pyx":221 * alpha_out = [] * delta_out = [] * for j in range(len(alpha)): # <<<<<<<<<<<<<< * v6 = tpm.V6S(r=1e10,alpha=alpha[j],delta=delta[j]) * v6 = v6.s2c() */ - __pyx_t_15 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_15 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - for (__pyx_t_14 = 0; __pyx_t_14 < __pyx_t_15; __pyx_t_14+=1) { - __pyx_v_j = __pyx_t_14; + __pyx_t_14 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_14 == ((Py_ssize_t)-1))) __PYX_ERR(0, 221, __pyx_L1_error) + __pyx_t_4 = __pyx_t_14; + for (__pyx_t_13 = 0; __pyx_t_13 < __pyx_t_4; __pyx_t_13+=1) { + __pyx_v_j = __pyx_t_13; - /* "src/convert.pyx":222 + /* "convert.pyx":222 * delta_out = [] * for j in range(len(alpha)): * v6 = tpm.V6S(r=1e10,alpha=alpha[j],delta=delta[j]) # <<<<<<<<<<<<<< * v6 = v6.s2c() * v6 = tpm.precess(start,end,v6,pflag) */ - __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_tpm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_V6S); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_V6S); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_r, __pyx_float_1e10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_alpha, __pyx_v_j, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(__pyx_t_8 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_r, __pyx_float_1e10) < 0) __PYX_ERR(0, 222, __pyx_L1_error) + __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_alpha, __pyx_v_j, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_alpha, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_alpha, __pyx_t_8) < 0) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_delta, __pyx_v_j, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(__pyx_t_8 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_delta, __pyx_v_j, int, 1, __Pyx_PyInt_From_int, 0, 1, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_delta, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_delta, __pyx_t_8) < 0) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF_SET(__pyx_v_v6, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":223 + /* "convert.pyx":223 * for j in range(len(alpha)): * v6 = tpm.V6S(r=1e10,alpha=alpha[j],delta=delta[j]) * v6 = v6.s2c() # <<<<<<<<<<<<<< * v6 = tpm.precess(start,end,v6,pflag) * v6 = v6.c2s() */ - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_s2c); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_s2c); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); @@ -2969,77 +3691,92 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_DECREF_SET(__pyx_t_5, function); } } - if (__pyx_t_6) { - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else { - __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_8 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":224 + /* "convert.pyx":224 * v6 = tpm.V6S(r=1e10,alpha=alpha[j],delta=delta[j]) * v6 = v6.s2c() * v6 = tpm.precess(start,end,v6,pflag) # <<<<<<<<<<<<<< * v6 = v6.c2s() * alpha_out.append(v6.nalpha) */ - __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_tpm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_precess); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_precess); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; - __pyx_t_4 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_16 = 0; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_4 = 1; + __pyx_t_16 = 1; } } - __pyx_t_10 = PyTuple_New(4+__pyx_t_4); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (__pyx_t_5) { - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __pyx_t_5 = NULL; - } - __Pyx_INCREF(__pyx_v_start); - PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_4, __pyx_v_start); - __Pyx_GIVEREF(__pyx_v_start); - __Pyx_INCREF(__pyx_v_end); - PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_4, __pyx_v_end); - __Pyx_GIVEREF(__pyx_v_end); - __Pyx_INCREF(__pyx_v_v6); - PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_4, __pyx_v_v6); - __Pyx_GIVEREF(__pyx_v_v6); - __Pyx_INCREF(__pyx_v_pflag); - PyTuple_SET_ITEM(__pyx_t_10, 3+__pyx_t_4, __pyx_v_pflag); - __Pyx_GIVEREF(__pyx_v_pflag); - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_10, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_8); - __pyx_t_8 = 0; - - /* "src/convert.pyx":225 - * v6 = v6.s2c() - * v6 = tpm.precess(start,end,v6,pflag) - * v6 = v6.c2s() # <<<<<<<<<<<<<< - * alpha_out.append(v6.nalpha) - * delta_out.append(v6.ndelta) - */ - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_c2s); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_6); + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_6)) { + PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_v_start, __pyx_v_end, __pyx_v_v6, __pyx_v_pflag}; + __pyx_t_8 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_16, 4+__pyx_t_16); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 224, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GOTREF(__pyx_t_8); + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) { + PyObject *__pyx_temp[5] = {__pyx_t_5, __pyx_v_start, __pyx_v_end, __pyx_v_v6, __pyx_v_pflag}; + __pyx_t_8 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_16, 4+__pyx_t_16); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 224, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_GOTREF(__pyx_t_8); + } else + #endif + { + __pyx_t_10 = PyTuple_New(4+__pyx_t_16); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 224, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); + if (__pyx_t_5) { + __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); __pyx_t_5 = NULL; + } + __Pyx_INCREF(__pyx_v_start); + __Pyx_GIVEREF(__pyx_v_start); + PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_16, __pyx_v_start); + __Pyx_INCREF(__pyx_v_end); + __Pyx_GIVEREF(__pyx_v_end); + PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_16, __pyx_v_end); + __Pyx_INCREF(__pyx_v_v6); + __Pyx_GIVEREF(__pyx_v_v6); + PyTuple_SET_ITEM(__pyx_t_10, 2+__pyx_t_16, __pyx_v_v6); + __Pyx_INCREF(__pyx_v_pflag); + __Pyx_GIVEREF(__pyx_v_pflag); + PyTuple_SET_ITEM(__pyx_t_10, 3+__pyx_t_16, __pyx_v_pflag); + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_10, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 224, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + } + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_8); + __pyx_t_8 = 0; + + /* "convert.pyx":225 + * v6 = v6.s2c() + * v6 = tpm.precess(start,end,v6,pflag) + * v6 = v6.c2s() # <<<<<<<<<<<<<< + * alpha_out.append(v6.nalpha) + * delta_out.append(v6.ndelta) + */ + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_c2s); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 225, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_10)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_10); @@ -3047,71 +3784,69 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_DECREF_SET(__pyx_t_6, function); } } - if (__pyx_t_10) { - __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_10); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - } else { - __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_8 = (__pyx_t_10) ? __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_10) : __Pyx_PyObject_CallNoArg(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 225, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":226 + /* "convert.pyx":226 * v6 = tpm.precess(start,end,v6,pflag) * v6 = v6.c2s() * alpha_out.append(v6.nalpha) # <<<<<<<<<<<<<< * delta_out.append(v6.ndelta) * */ - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_nalpha); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_nalpha); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 226, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_17 = __Pyx_PyList_Append(__pyx_v_alpha_out, __pyx_t_8); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_17 = __Pyx_PyList_Append(__pyx_v_alpha_out, __pyx_t_8); if (unlikely(__pyx_t_17 == ((int)-1))) __PYX_ERR(0, 226, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":227 + /* "convert.pyx":227 * v6 = v6.c2s() * alpha_out.append(v6.nalpha) * delta_out.append(v6.ndelta) # <<<<<<<<<<<<<< * * alpha_out = [tpm.r2d(i) for i in alpha_out] */ - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_ndelta); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v6, __pyx_n_s_ndelta); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_17 = __Pyx_PyList_Append(__pyx_v_delta_out, __pyx_t_8); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_17 = __Pyx_PyList_Append(__pyx_v_delta_out, __pyx_t_8); if (unlikely(__pyx_t_17 == ((int)-1))) __PYX_ERR(0, 227, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } - /* "src/convert.pyx":229 + /* "convert.pyx":229 * delta_out.append(v6.ndelta) * * alpha_out = [tpm.r2d(i) for i in alpha_out] # <<<<<<<<<<<<<< * delta_out = [tpm.r2d(i) for i in delta_out] * */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = __pyx_v_alpha_out; __Pyx_INCREF(__pyx_t_6); __pyx_t_15 = 0; + __pyx_t_6 = __pyx_v_alpha_out; __Pyx_INCREF(__pyx_t_6); __pyx_t_14 = 0; for (;;) { - if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_10 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_15); __Pyx_INCREF(__pyx_t_10); __pyx_t_15++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_14 >= PyList_GET_SIZE(__pyx_t_6)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_10 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_14); __Pyx_INCREF(__pyx_t_10); __pyx_t_14++; if (unlikely(0 < 0)) __PYX_ERR(0, 229, __pyx_L1_error) #else - __pyx_t_10 = PySequence_ITEM(__pyx_t_6, __pyx_t_15); __pyx_t_15++; if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PySequence_ITEM(__pyx_t_6, __pyx_t_14); __pyx_t_14++; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 229, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); #endif - __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_10); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_10); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_v_i = __pyx_t_9; - __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_tpm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_r2d); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_r2d); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_12 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_11))) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_11))) { __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_11); if (likely(__pyx_t_12)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11); @@ -3120,101 +3855,82 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_DECREF_SET(__pyx_t_11, function); } } - if (!__pyx_t_12) { - __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_5); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_GOTREF(__pyx_t_10); - } else { - __pyx_t_13 = PyTuple_New(1+1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_12); __Pyx_GIVEREF(__pyx_t_12); __pyx_t_12 = NULL; - PyTuple_SET_ITEM(__pyx_t_13, 0+1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_5 = 0; - __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_t_13, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - } + __pyx_t_10 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_11, __pyx_t_12, __pyx_t_5) : __Pyx_PyObject_CallOneArg(__pyx_t_11, __pyx_t_5); + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 229, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_8, (PyObject*)__pyx_t_10))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(__Pyx_ListComp_Append(__pyx_t_8, (PyObject*)__pyx_t_10))) __PYX_ERR(0, 229, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF_SET(__pyx_v_alpha_out, ((PyObject*)__pyx_t_8)); __pyx_t_8 = 0; - /* "src/convert.pyx":230 + /* "convert.pyx":230 * * alpha_out = [tpm.r2d(i) for i in alpha_out] * delta_out = [tpm.r2d(i) for i in delta_out] # <<<<<<<<<<<<<< * * if len(alpha) == 1: */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = __pyx_v_delta_out; __Pyx_INCREF(__pyx_t_6); __pyx_t_15 = 0; + __pyx_t_6 = __pyx_v_delta_out; __Pyx_INCREF(__pyx_t_6); __pyx_t_14 = 0; for (;;) { - if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_6)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_10 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_15); __Pyx_INCREF(__pyx_t_10); __pyx_t_15++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_14 >= PyList_GET_SIZE(__pyx_t_6)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_10 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_14); __Pyx_INCREF(__pyx_t_10); __pyx_t_14++; if (unlikely(0 < 0)) __PYX_ERR(0, 230, __pyx_L1_error) #else - __pyx_t_10 = PySequence_ITEM(__pyx_t_6, __pyx_t_15); __pyx_t_15++; if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PySequence_ITEM(__pyx_t_6, __pyx_t_14); __pyx_t_14++; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 230, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); #endif - __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_10); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = __pyx_PyFloat_AsDouble(__pyx_t_10); if (unlikely((__pyx_t_9 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_v_i = __pyx_t_9; - __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_r2d); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_r2d); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 230, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = PyFloat_FromDouble(__pyx_v_i); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_5 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_13))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_13); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_13); - __Pyx_INCREF(__pyx_t_5); + __pyx_t_12 = NULL; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_12 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_12)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_12); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_13, function); + __Pyx_DECREF_SET(__pyx_t_5, function); } } - if (!__pyx_t_5) { - __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_GOTREF(__pyx_t_10); - } else { - __pyx_t_12 = PyTuple_New(1+1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_12); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __pyx_t_5 = NULL; - PyTuple_SET_ITEM(__pyx_t_12, 0+1, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - __pyx_t_11 = 0; - __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_12, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - } - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (unlikely(__Pyx_ListComp_Append(__pyx_t_8, (PyObject*)__pyx_t_10))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = (__pyx_t_12) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_12, __pyx_t_11) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_11); + __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 230, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(__Pyx_ListComp_Append(__pyx_t_8, (PyObject*)__pyx_t_10))) __PYX_ERR(0, 230, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF_SET(__pyx_v_delta_out, ((PyObject*)__pyx_t_8)); __pyx_t_8 = 0; - /* "src/convert.pyx":232 + /* "convert.pyx":232 * delta_out = [tpm.r2d(i) for i in delta_out] * * if len(alpha) == 1: # <<<<<<<<<<<<<< * return alpha_out[0], delta_out[0] * else: */ - __pyx_t_15 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_15 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_16 = ((__pyx_t_15 == 1) != 0); - if (__pyx_t_16) { + __pyx_t_14 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_14 == ((Py_ssize_t)-1))) __PYX_ERR(0, 232, __pyx_L1_error) + __pyx_t_15 = ((__pyx_t_14 == 1) != 0); + if (__pyx_t_15) { - /* "src/convert.pyx":233 + /* "convert.pyx":233 * * if len(alpha) == 1: * return alpha_out[0], delta_out[0] # <<<<<<<<<<<<<< @@ -3222,46 +3938,54 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx * return alpha_out, delta_out */ __Pyx_XDECREF(__pyx_r); - __pyx_t_8 = __Pyx_GetItemInt_List(__pyx_v_alpha_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_8 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_8 = __Pyx_GetItemInt_List(__pyx_v_alpha_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = __Pyx_GetItemInt_List(__pyx_v_delta_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_6 = __Pyx_GetItemInt_List(__pyx_v_delta_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_6); + PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); + PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_r = __pyx_t_10; __pyx_t_10 = 0; goto __pyx_L0; + + /* "convert.pyx":232 + * delta_out = [tpm.r2d(i) for i in delta_out] + * + * if len(alpha) == 1: # <<<<<<<<<<<<<< + * return alpha_out[0], delta_out[0] + * else: + */ } - /*else*/ { - /* "src/convert.pyx":235 + /* "convert.pyx":235 * return alpha_out[0], delta_out[0] * else: * return alpha_out, delta_out # <<<<<<<<<<<<<< * * */ + /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_INCREF(__pyx_v_alpha_out); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_alpha_out); __Pyx_GIVEREF(__pyx_v_alpha_out); + PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_alpha_out); __Pyx_INCREF(__pyx_v_delta_out); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_delta_out); __Pyx_GIVEREF(__pyx_v_delta_out); + PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_delta_out); __pyx_r = __pyx_t_10; __pyx_t_10 = 0; goto __pyx_L0; } - /* "src/convert.pyx":160 + /* "convert.pyx":160 * * * def precess(alpha=-999, delta=-999, start=-999, end=-999, # <<<<<<<<<<<<<< @@ -3277,8 +4001,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); __Pyx_XDECREF(__pyx_t_12); - __Pyx_XDECREF(__pyx_t_13); - __Pyx_AddTraceback("pytpm.convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_alpha_out); @@ -3291,7 +4014,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx return __pyx_r; } -/* "src/convert.pyx":238 +/* "convert.pyx":238 * * * def precessv6(v6=None, start=-999, end=-999, pflag=tpm.PRECESS_FK5): # <<<<<<<<<<<<<< @@ -3300,10 +4023,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_2precess(CYTHON_UNUSED PyObject *__pyx */ /* Python wrapper */ -static PyObject *__pyx_pw_5pytpm_7convert_5precessv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_7convert_4precessv6[] = "Precess a list of V6C vectors.\n\n Parameters\n ----------\n v6 : tpm.V6C or list of tpm.V6C\n V6C vector to be precessed.\n start : float\n Starting time for precession, as a Julian date.\n end : float\n End time for precession, as a Julian date.\n pflag : int\n The precession model to use.\n\n Returns\n -------\n v6 : tpm.V6C or list of tpm.V6C objects.\n Precessed V6C vector.\n\n Notes\n -----\n This function can be used to precess equatorial in a V6C vector\n using a particular model of precession. The input coordinates can\n be in the FK5 or FK4 systems. In the FK5 system there is only one\n precession model, which is selected using ``pflag ==\n tpm.PRECESS_FK5``. The FK4 system has several models, and can be\n selected by setting appropriate constants as the value of `pflag`::\n\n PRECESS_ANDOYER, PRECESS_NEWCOMB, PRECESS_KINOSHITA,\n PRECESS_LIESKE\n\n See the tpm manual for definitions of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_7convert_5precessv6 = {"precessv6", (PyCFunction)__pyx_pw_5pytpm_7convert_5precessv6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_5pytpm_7convert_4precessv6}; -static PyObject *__pyx_pw_5pytpm_7convert_5precessv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +static PyObject *__pyx_pw_7convert_5precessv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_7convert_4precessv6[] = "Precess a list of V6C vectors.\n\n Parameters\n ----------\n v6 : tpm.V6C or list of tpm.V6C\n V6C vector to be precessed.\n start : float\n Starting time for precession, as a Julian date.\n end : float\n End time for precession, as a Julian date.\n pflag : int\n The precession model to use.\n\n Returns\n -------\n v6 : tpm.V6C or list of tpm.V6C objects.\n Precessed V6C vector.\n\n Notes\n -----\n This function can be used to precess equatorial in a V6C vector\n using a particular model of precession. The input coordinates can\n be in the FK5 or FK4 systems. In the FK5 system there is only one\n precession model, which is selected using ``pflag ==\n tpm.PRECESS_FK5``. The FK4 system has several models, and can be\n selected by setting appropriate constants as the value of `pflag`::\n\n PRECESS_ANDOYER, PRECESS_NEWCOMB, PRECESS_KINOSHITA,\n PRECESS_LIESKE\n\n See the tpm manual for definitions of these constants.\n\n "; +static PyMethodDef __pyx_mdef_7convert_5precessv6 = {"precessv6", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7convert_5precessv6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_7convert_4precessv6}; +static PyObject *__pyx_pw_7convert_5precessv6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_v6 = 0; PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; @@ -3326,9 +4049,13 @@ static PyObject *__pyx_pw_5pytpm_7convert_5precessv6(PyObject *__pyx_self, PyObj const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); switch (pos_args) { case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -3336,34 +4063,41 @@ static PyObject *__pyx_pw_5pytpm_7convert_5precessv6(PyObject *__pyx_self, PyObj switch (pos_args) { case 0: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v6); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6); if (value) { values[0] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_start); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start); if (value) { values[1] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end); if (value) { values[2] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 3: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pflag); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag); if (value) { values[3] = value; kw_args--; } } } if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "precessv6") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "precessv6") < 0)) __PYX_ERR(0, 238, __pyx_L3_error) } } else { switch (PyTuple_GET_SIZE(__pyx_args)) { case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -3375,20 +4109,20 @@ static PyObject *__pyx_pw_5pytpm_7convert_5precessv6(PyObject *__pyx_self, PyObj } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("precessv6", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("precessv6", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 238, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.convert.precessv6", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.precessv6", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_5pytpm_7convert_4precessv6(__pyx_self, __pyx_v_v6, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + __pyx_r = __pyx_pf_7convert_4precessv6(__pyx_self, __pyx_v_v6, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { +static PyObject *__pyx_pf_7convert_4precessv6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { PyObject *__pyx_v_j = NULL; PyObject *__pyx_v_v = NULL; PyObject *__pyx_v_v6_out = NULL; @@ -3407,41 +4141,47 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p PyObject *__pyx_t_11 = NULL; PyObject *(*__pyx_t_12)(PyObject *); PyObject *__pyx_t_13 = NULL; - PyObject *__pyx_t_14 = NULL; - Py_ssize_t __pyx_t_15; - int __pyx_t_16; + int __pyx_t_14; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("precessv6", 0); __Pyx_INCREF(__pyx_v_v6); - /* "src/convert.pyx":273 + /* "convert.pyx":273 * """ * cdef int i * if not v6: # <<<<<<<<<<<<<< * raise TypeError("precessv6 needs V6C object.") * */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 273, __pyx_L1_error) __pyx_t_2 = ((!__pyx_t_1) != 0); - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":274 + /* "convert.pyx":274 * cdef int i * if not v6: * raise TypeError("precessv6 needs V6C object.") # <<<<<<<<<<<<<< * * try: */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__10, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 274, __pyx_L1_error) + + /* "convert.pyx":273 + * """ + * cdef int i + * if not v6: # <<<<<<<<<<<<<< + * raise TypeError("precessv6 needs V6C object.") + * + */ } - /* "src/convert.pyx":276 + /* "convert.pyx":276 * raise TypeError("precessv6 needs V6C object.") * * try: # <<<<<<<<<<<<<< @@ -3449,64 +4189,82 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p * except TypeError: */ { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign __Pyx_ExceptionSave(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6); __Pyx_XGOTREF(__pyx_t_4); __Pyx_XGOTREF(__pyx_t_5); __Pyx_XGOTREF(__pyx_t_6); /*try:*/ { - /* "src/convert.pyx":277 + /* "convert.pyx":277 * * try: * len(v6) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single vector. */ - __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L4_error;} + __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 277, __pyx_L4_error) + + /* "convert.pyx":276 + * raise TypeError("precessv6 needs V6C object.") + * + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ } __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L11_try_end; + goto __pyx_L9_try_end; __pyx_L4_error:; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "src/convert.pyx":278 + /* "convert.pyx":278 * try: * len(v6) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single vector. * v6 = (v6,) */ - __pyx_t_8 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); + __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); if (__pyx_t_8) { - __Pyx_AddTraceback("pytpm.convert.precessv6", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;} + __Pyx_AddTraceback("convert.precessv6", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_10) < 0) __PYX_ERR(0, 278, __pyx_L6_except_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GOTREF(__pyx_t_9); __Pyx_GOTREF(__pyx_t_10); - /* "src/convert.pyx":280 + /* "convert.pyx":280 * except TypeError: * # Not a list. Assume that this is a single vector. * v6 = (v6,) # <<<<<<<<<<<<<< * * for j,v in enumerate(v6): */ - __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;} + __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 280, __pyx_L6_except_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_INCREF(__pyx_v_v6); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_v6); __Pyx_GIVEREF(__pyx_v_v6); + PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_v6); __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L5_exception_handled; } goto __pyx_L6_except_error; __pyx_L6_except_error:; + + /* "convert.pyx":276 + * raise TypeError("precessv6 needs V6C object.") + * + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ __Pyx_XGIVEREF(__pyx_t_4); __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -3517,10 +4275,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6); - __pyx_L11_try_end:; + __pyx_L9_try_end:; } - /* "src/convert.pyx":282 + /* "convert.pyx":282 * v6 = (v6,) * * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -3533,25 +4291,27 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __pyx_t_9 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_9); __pyx_t_7 = 0; __pyx_t_12 = NULL; } else { - __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_12 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_12 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 282, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_12)) { if (likely(PyList_CheckExact(__pyx_t_9))) { if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_9)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 282, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 282, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); #endif } else { if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 282, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 282, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); #endif } } else { @@ -3559,8 +4319,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p if (unlikely(!__pyx_t_3)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 282, __pyx_L1_error) } break; } @@ -3570,26 +4330,26 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __pyx_t_3 = 0; __Pyx_INCREF(__pyx_t_10); __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_10); - __pyx_t_3 = PyNumber_Add(__pyx_t_10, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_t_10, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = __pyx_t_3; __pyx_t_3 = 0; - /* "src/convert.pyx":283 + /* "convert.pyx":283 * * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") */ - __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_V6C); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_V6C); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_t_11 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_13))) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_13))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_13); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_13); @@ -3598,58 +4358,72 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __Pyx_DECREF_SET(__pyx_t_13, function); } } - if (__pyx_t_11) { - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - } else { - __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_13); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_3 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_13); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_3)), Py_NE); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_3)), Py_NE); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 283, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 283, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; if (__pyx_t_2) { - /* "src/convert.pyx":284 + /* "convert.pyx":284 * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): * if j == 0: # <<<<<<<<<<<<<< * raise TypeError("v6 must be an object of type tpm.V6C.") * else: */ - __pyx_t_13 = PyObject_RichCompare(__pyx_v_j, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyInt_EqObjC(__pyx_v_j, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 284, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 284, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":285 + /* "convert.pyx":285 * if type(v) != type(tpm.V6C()): * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< * else: * raise TypeError( */ - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_Raise(__pyx_t_13, 0, 0, 0); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 285, __pyx_L1_error) + + /* "convert.pyx":284 + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): + * if j == 0: # <<<<<<<<<<<<<< + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + */ } + + /* "convert.pyx":287 + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + * raise TypeError( # <<<<<<<<<<<<<< + * "v6[{0}] must be an object of type tpm.V6C.".format(j)) + * + */ /*else*/ { - /* "src/convert.pyx":288 + /* "convert.pyx":288 * else: * raise TypeError( * "v6[{0}] must be an object of type tpm.V6C.".format(j)) # <<<<<<<<<<<<<< * * v6_out = [] */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_11 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) { + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -3658,44 +4432,37 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __Pyx_DECREF_SET(__pyx_t_3, function); } } - if (!__pyx_t_11) { - __pyx_t_13 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_j); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - } else { - __pyx_t_14 = PyTuple_New(1+1); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_11); __Pyx_GIVEREF(__pyx_t_11); __pyx_t_11 = NULL; - __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_14, 0+1, __pyx_v_j); - __Pyx_GIVEREF(__pyx_v_j); - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - } + __pyx_t_13 = (__pyx_t_11) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_11, __pyx_v_j) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_j); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 288, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "src/convert.pyx":287 + /* "convert.pyx":287 * raise TypeError("v6 must be an object of type tpm.V6C.") * else: * raise TypeError( # <<<<<<<<<<<<<< * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * */ - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_13); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_13); - __Pyx_GIVEREF(__pyx_t_13); - __pyx_t_13 = 0; - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_13, 0, 0, 0); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(0, 287, __pyx_L1_error) } + + /* "convert.pyx":283 + * + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< + * if j == 0: + * raise TypeError("v6 must be an object of type tpm.V6C.") + */ } - /* "src/convert.pyx":282 + /* "convert.pyx":282 * v6 = (v6,) * * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -3706,19 +4473,19 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":290 + /* "convert.pyx":290 * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * * v6_out = [] # <<<<<<<<<<<<<< * for j in v6: * v6_out.append(tpm.precess(start, end, j, pflag)) */ - __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_v_v6_out = ((PyObject*)__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":291 + /* "convert.pyx":291 * * v6_out = [] * for j in v6: # <<<<<<<<<<<<<< @@ -3729,25 +4496,27 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __pyx_t_10 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_10); __pyx_t_7 = 0; __pyx_t_12 = NULL; } else { - __pyx_t_7 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 291, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 291, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_12)) { if (likely(PyList_CheckExact(__pyx_t_10))) { if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 291, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 291, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); #endif } else { if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 291, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 291, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); #endif } } else { @@ -3755,8 +4524,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p if (unlikely(!__pyx_t_9)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 291, __pyx_L1_error) } break; } @@ -3765,55 +4534,73 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":292 + /* "convert.pyx":292 * v6_out = [] * for j in v6: * v6_out.append(tpm.precess(start, end, j, pflag)) # <<<<<<<<<<<<<< * * if len(v6) == 1: */ - __pyx_t_13 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_precess); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = NULL; - __pyx_t_15 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_13)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_13); + __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_precess); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 292, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = NULL; + __pyx_t_8 = 0; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_13))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_13); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_13); + __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_15 = 1; + __Pyx_DECREF_SET(__pyx_t_13, function); + __pyx_t_8 = 1; } } - __pyx_t_14 = PyTuple_New(4+__pyx_t_15); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - if (__pyx_t_13) { - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_13); __Pyx_GIVEREF(__pyx_t_13); __pyx_t_13 = NULL; - } - __Pyx_INCREF(__pyx_v_start); - PyTuple_SET_ITEM(__pyx_t_14, 0+__pyx_t_15, __pyx_v_start); - __Pyx_GIVEREF(__pyx_v_start); - __Pyx_INCREF(__pyx_v_end); - PyTuple_SET_ITEM(__pyx_t_14, 1+__pyx_t_15, __pyx_v_end); - __Pyx_GIVEREF(__pyx_v_end); - __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_14, 2+__pyx_t_15, __pyx_v_j); - __Pyx_GIVEREF(__pyx_v_j); - __Pyx_INCREF(__pyx_v_pflag); - PyTuple_SET_ITEM(__pyx_t_14, 3+__pyx_t_15, __pyx_v_pflag); - __Pyx_GIVEREF(__pyx_v_pflag); - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_16 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_9); if (unlikely(__pyx_t_16 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_13)) { + PyObject *__pyx_temp[5] = {__pyx_t_3, __pyx_v_start, __pyx_v_end, __pyx_v_j, __pyx_v_pflag}; + __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_8, 4+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 292, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GOTREF(__pyx_t_9); + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_13)) { + PyObject *__pyx_temp[5] = {__pyx_t_3, __pyx_v_start, __pyx_v_end, __pyx_v_j, __pyx_v_pflag}; + __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_8, 4+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 292, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GOTREF(__pyx_t_9); + } else + #endif + { + __pyx_t_11 = PyTuple_New(4+__pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 292, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + if (__pyx_t_3) { + __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_3); __pyx_t_3 = NULL; + } + __Pyx_INCREF(__pyx_v_start); + __Pyx_GIVEREF(__pyx_v_start); + PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_8, __pyx_v_start); + __Pyx_INCREF(__pyx_v_end); + __Pyx_GIVEREF(__pyx_v_end); + PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_8, __pyx_v_end); + __Pyx_INCREF(__pyx_v_j); + __Pyx_GIVEREF(__pyx_v_j); + PyTuple_SET_ITEM(__pyx_t_11, 2+__pyx_t_8, __pyx_v_j); + __Pyx_INCREF(__pyx_v_pflag); + __Pyx_GIVEREF(__pyx_v_pflag); + PyTuple_SET_ITEM(__pyx_t_11, 3+__pyx_t_8, __pyx_v_pflag); + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_11, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 292, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + } + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __pyx_t_14 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_9); if (unlikely(__pyx_t_14 == ((int)-1))) __PYX_ERR(0, 292, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":291 + /* "convert.pyx":291 * * v6_out = [] * for j in v6: # <<<<<<<<<<<<<< @@ -3823,18 +4610,18 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p } __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":294 + /* "convert.pyx":294 * v6_out.append(tpm.precess(start, end, j, pflag)) * * if len(v6) == 1: # <<<<<<<<<<<<<< * return v6_out[0] * else: */ - __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 294, __pyx_L1_error) __pyx_t_2 = ((__pyx_t_7 == 1) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":295 + /* "convert.pyx":295 * * if len(v6) == 1: * return v6_out[0] # <<<<<<<<<<<<<< @@ -3842,28 +4629,36 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p * return v6_out */ __Pyx_XDECREF(__pyx_r); - __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_r = __pyx_t_10; __pyx_t_10 = 0; goto __pyx_L0; + + /* "convert.pyx":294 + * v6_out.append(tpm.precess(start, end, j, pflag)) + * + * if len(v6) == 1: # <<<<<<<<<<<<<< + * return v6_out[0] + * else: + */ } - /*else*/ { - /* "src/convert.pyx":297 + /* "convert.pyx":297 * return v6_out[0] * else: * return v6_out # <<<<<<<<<<<<<< * * */ + /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_v6_out); __pyx_r = __pyx_v_v6_out; goto __pyx_L0; } - /* "src/convert.pyx":238 + /* "convert.pyx":238 * * * def precessv6(v6=None, start=-999, end=-999, pflag=tpm.PRECESS_FK5): # <<<<<<<<<<<<<< @@ -3878,8 +4673,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); __Pyx_XDECREF(__pyx_t_13); - __Pyx_XDECREF(__pyx_t_14); - __Pyx_AddTraceback("pytpm.convert.precessv6", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.precessv6", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_j); @@ -3891,7 +4685,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p return __pyx_r; } -/* "src/convert.pyx":300 +/* "convert.pyx":300 * * * def proper_motion(v6, end, start): # <<<<<<<<<<<<<< @@ -3900,10 +4694,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_4precessv6(CYTHON_UNUSED PyObject *__p */ /* Python wrapper */ -static PyObject *__pyx_pw_5pytpm_7convert_7proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_7convert_6proper_motion[] = "Apply proper motion to tpm.V6C vectors.\n\n Parameters\n ----------\n v6 : tpm.V6C or a list of tpm.V6C objects.\n V6C object containing positions and velocities.\n end : float\n Ending/final time in days (can be Julian date).\n start : float\n Starting/initial time in days (can be Julian date).\n\n Returns\n -------\n v : tpm.V6C or a list of tpm.V6C objects.\n V6C object containing the coordinates obtained after applying\n proper motion.\n\n Notes\n -----\n Given starting time and end time, this function applies proper\n motion to the coordinates in the given V6C object. A simple linear\n multiplication of velocity with time is performed, followed by\n addition of this increment to the position coordinates.\n\n The difference, ``end - start``, should be the number of days in\n the time interval. Hence Julian dates can be used. The velocities\n in V6C are stored as AU/day and hence time interval must be in\n days.\n\n This function calls tpm.proper_motion repeatedly to perform the\n calculations.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_7convert_7proper_motion = {"proper_motion", (PyCFunction)__pyx_pw_5pytpm_7convert_7proper_motion, METH_VARARGS|METH_KEYWORDS, __pyx_doc_5pytpm_7convert_6proper_motion}; -static PyObject *__pyx_pw_5pytpm_7convert_7proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +static PyObject *__pyx_pw_7convert_7proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_7convert_6proper_motion[] = "Apply proper motion to tpm.V6C vectors.\n\n Parameters\n ----------\n v6 : tpm.V6C or a list of tpm.V6C objects.\n V6C object containing positions and velocities.\n end : float\n Ending/final time in days (can be Julian date).\n start : float\n Starting/initial time in days (can be Julian date).\n\n Returns\n -------\n v : tpm.V6C or a list of tpm.V6C objects.\n V6C object containing the coordinates obtained after applying\n proper motion.\n\n Notes\n -----\n Given starting time and end time, this function applies proper\n motion to the coordinates in the given V6C object. A simple linear\n multiplication of velocity with time is performed, followed by\n addition of this increment to the position coordinates.\n\n The difference, ``end - start``, should be the number of days in\n the time interval. Hence Julian dates can be used. The velocities\n in V6C are stored as AU/day and hence time interval must be in\n days.\n\n This function calls tpm.proper_motion repeatedly to perform the\n calculations.\n\n "; +static PyMethodDef __pyx_mdef_7convert_7proper_motion = {"proper_motion", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7convert_7proper_motion, METH_VARARGS|METH_KEYWORDS, __pyx_doc_7convert_6proper_motion}; +static PyObject *__pyx_pw_7convert_7proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_v6 = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_start = 0; @@ -3921,29 +4715,34 @@ static PyObject *__pyx_pw_5pytpm_7convert_7proper_motion(PyObject *__pyx_self, P const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); switch (pos_args) { case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } kw_args = PyDict_Size(__pyx_kwds); switch (pos_args) { case 0: - if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; case 1: - if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; else { - __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 1); __PYX_ERR(0, 300, __pyx_L3_error) } + CYTHON_FALLTHROUGH; case 2: - if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; else { - __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 2); __PYX_ERR(0, 300, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "proper_motion") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "proper_motion") < 0)) __PYX_ERR(0, 300, __pyx_L3_error) } } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { goto __pyx_L5_argtuple_error; @@ -3958,20 +4757,20 @@ static PyObject *__pyx_pw_5pytpm_7convert_7proper_motion(PyObject *__pyx_self, P } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 300, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.convert.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_5pytpm_7convert_6proper_motion(__pyx_self, __pyx_v_v6, __pyx_v_end, __pyx_v_start); + __pyx_r = __pyx_pf_7convert_6proper_motion(__pyx_self, __pyx_v_v6, __pyx_v_end, __pyx_v_start); /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_end, PyObject *__pyx_v_start) { +static PyObject *__pyx_pf_7convert_6proper_motion(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_end, PyObject *__pyx_v_start) { PyObject *__pyx_v_j = NULL; PyObject *__pyx_v_v = NULL; PyObject *__pyx_v_v6_out = NULL; @@ -3990,40 +4789,47 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject PyObject *__pyx_t_11 = NULL; PyObject *(*__pyx_t_12)(PyObject *); PyObject *__pyx_t_13 = NULL; - PyObject *__pyx_t_14 = NULL; - int __pyx_t_15; + int __pyx_t_14; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("proper_motion", 0); __Pyx_INCREF(__pyx_v_v6); - /* "src/convert.pyx":335 + /* "convert.pyx":335 * """ * cdef int i * if not v6: # <<<<<<<<<<<<<< * raise TypeError("proper_motion needs V6C object.") * try: */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 335, __pyx_L1_error) __pyx_t_2 = ((!__pyx_t_1) != 0); - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":336 + /* "convert.pyx":336 * cdef int i * if not v6: * raise TypeError("proper_motion needs V6C object.") # <<<<<<<<<<<<<< * try: * len(v6) */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 336, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 336, __pyx_L1_error) + + /* "convert.pyx":335 + * """ + * cdef int i + * if not v6: # <<<<<<<<<<<<<< + * raise TypeError("proper_motion needs V6C object.") + * try: + */ } - /* "src/convert.pyx":337 + /* "convert.pyx":337 * if not v6: * raise TypeError("proper_motion needs V6C object.") * try: # <<<<<<<<<<<<<< @@ -4031,64 +4837,82 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject * except TypeError: */ { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign __Pyx_ExceptionSave(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6); __Pyx_XGOTREF(__pyx_t_4); __Pyx_XGOTREF(__pyx_t_5); __Pyx_XGOTREF(__pyx_t_6); /*try:*/ { - /* "src/convert.pyx":338 + /* "convert.pyx":338 * raise TypeError("proper_motion needs V6C object.") * try: * len(v6) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single vector. */ - __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L4_error;} + __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 338, __pyx_L4_error) + + /* "convert.pyx":337 + * if not v6: + * raise TypeError("proper_motion needs V6C object.") + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ } __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L11_try_end; + goto __pyx_L9_try_end; __pyx_L4_error:; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "src/convert.pyx":339 + /* "convert.pyx":339 * try: * len(v6) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single vector. * v6 = (v6,) */ - __pyx_t_8 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); + __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); if (__pyx_t_8) { - __Pyx_AddTraceback("pytpm.convert.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;} + __Pyx_AddTraceback("convert.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_10) < 0) __PYX_ERR(0, 339, __pyx_L6_except_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GOTREF(__pyx_t_9); __Pyx_GOTREF(__pyx_t_10); - /* "src/convert.pyx":341 + /* "convert.pyx":341 * except TypeError: * # Not a list. Assume that this is a single vector. * v6 = (v6,) # <<<<<<<<<<<<<< * * for j,v in enumerate(v6): */ - __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;} + __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 341, __pyx_L6_except_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_INCREF(__pyx_v_v6); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_v6); __Pyx_GIVEREF(__pyx_v_v6); + PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_v6); __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L5_exception_handled; } goto __pyx_L6_except_error; __pyx_L6_except_error:; + + /* "convert.pyx":337 + * if not v6: + * raise TypeError("proper_motion needs V6C object.") + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ __Pyx_XGIVEREF(__pyx_t_4); __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -4099,10 +4923,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6); - __pyx_L11_try_end:; + __pyx_L9_try_end:; } - /* "src/convert.pyx":343 + /* "convert.pyx":343 * v6 = (v6,) * * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -4115,25 +4939,27 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __pyx_t_9 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_9); __pyx_t_7 = 0; __pyx_t_12 = NULL; } else { - __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_12 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_12 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 343, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_12)) { if (likely(PyList_CheckExact(__pyx_t_9))) { if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_9)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 343, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 343, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); #endif } else { if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 343, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 343, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); #endif } } else { @@ -4141,8 +4967,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject if (unlikely(!__pyx_t_3)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 343, __pyx_L1_error) } break; } @@ -4152,26 +4978,26 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __pyx_t_3 = 0; __Pyx_INCREF(__pyx_t_10); __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_10); - __pyx_t_3 = PyNumber_Add(__pyx_t_10, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_t_10, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = __pyx_t_3; __pyx_t_3 = 0; - /* "src/convert.pyx":344 + /* "convert.pyx":344 * * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") */ - __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_V6C); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_V6C); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_t_11 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_13))) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_13))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_13); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_13); @@ -4180,58 +5006,72 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __Pyx_DECREF_SET(__pyx_t_13, function); } } - if (__pyx_t_11) { - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - } else { - __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_13); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_3 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_13); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_3)), Py_NE); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_3)), Py_NE); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; if (__pyx_t_2) { - /* "src/convert.pyx":345 + /* "convert.pyx":345 * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): * if j == 0: # <<<<<<<<<<<<<< * raise TypeError("v6 must be an object of type tpm.V6C.") * else: */ - __pyx_t_13 = PyObject_RichCompare(__pyx_v_j, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyInt_EqObjC(__pyx_v_j, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 345, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":346 + /* "convert.pyx":346 * if type(v) != type(tpm.V6C()): * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< * else: * raise TypeError( */ - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_Raise(__pyx_t_13, 0, 0, 0); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 346, __pyx_L1_error) + + /* "convert.pyx":345 + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): + * if j == 0: # <<<<<<<<<<<<<< + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + */ } + + /* "convert.pyx":348 + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + * raise TypeError( # <<<<<<<<<<<<<< + * "v6[{0}] must be an object of type tpm.V6C.".format(j)) + * + */ /*else*/ { - /* "src/convert.pyx":349 + /* "convert.pyx":349 * else: * raise TypeError( * "v6[{0}] must be an object of type tpm.V6C.".format(j)) # <<<<<<<<<<<<<< * * v6_out = [] */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_11 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) { + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -4240,44 +5080,37 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __Pyx_DECREF_SET(__pyx_t_3, function); } } - if (!__pyx_t_11) { - __pyx_t_13 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_j); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - } else { - __pyx_t_14 = PyTuple_New(1+1); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_11); __Pyx_GIVEREF(__pyx_t_11); __pyx_t_11 = NULL; - __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_14, 0+1, __pyx_v_j); - __Pyx_GIVEREF(__pyx_v_j); - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - } + __pyx_t_13 = (__pyx_t_11) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_11, __pyx_v_j) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_j); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 349, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "src/convert.pyx":348 + /* "convert.pyx":348 * raise TypeError("v6 must be an object of type tpm.V6C.") * else: * raise TypeError( # <<<<<<<<<<<<<< * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * */ - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_13); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_13); - __Pyx_GIVEREF(__pyx_t_13); - __pyx_t_13 = 0; - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_13, 0, 0, 0); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(0, 348, __pyx_L1_error) } - } - /* "src/convert.pyx":343 + /* "convert.pyx":344 + * + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< + * if j == 0: + * raise TypeError("v6 must be an object of type tpm.V6C.") + */ + } + + /* "convert.pyx":343 * v6 = (v6,) * * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -4288,19 +5121,19 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":351 + /* "convert.pyx":351 * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * * v6_out = [] # <<<<<<<<<<<<<< * for j in v6: * v6_out.append(tpm.proper_motion(j, end=end, start=start)) */ - __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_v_v6_out = ((PyObject*)__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":352 + /* "convert.pyx":352 * * v6_out = [] * for j in v6: # <<<<<<<<<<<<<< @@ -4311,25 +5144,27 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __pyx_t_10 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_10); __pyx_t_7 = 0; __pyx_t_12 = NULL; } else { - __pyx_t_7 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 352, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_12)) { if (likely(PyList_CheckExact(__pyx_t_10))) { if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 352, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 352, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); #endif } else { if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 352, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 352, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); #endif } } else { @@ -4337,8 +5172,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject if (unlikely(!__pyx_t_9)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 352, __pyx_L1_error) } break; } @@ -4347,36 +5182,36 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":353 + /* "convert.pyx":353 * v6_out = [] * for j in v6: * v6_out.append(tpm.proper_motion(j, end=end, start=start)) # <<<<<<<<<<<<<< * * if len(v6) == 1: */ - __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_tpm); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_proper_motion); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_proper_motion); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 353, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_j); __Pyx_GIVEREF(__pyx_v_j); - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_end, __pyx_v_end) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_start, __pyx_v_start) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_9, __pyx_t_3); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_j); + __pyx_t_13 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 353, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_end, __pyx_v_end) < 0) __PYX_ERR(0, 353, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_start, __pyx_v_start) < 0) __PYX_ERR(0, 353, __pyx_L1_error) + __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_9, __pyx_t_13); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 353, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_15 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_14); if (unlikely(__pyx_t_15 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __pyx_t_14 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_11); if (unlikely(__pyx_t_14 == ((int)-1))) __PYX_ERR(0, 353, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "src/convert.pyx":352 + /* "convert.pyx":352 * * v6_out = [] * for j in v6: # <<<<<<<<<<<<<< @@ -4386,18 +5221,18 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject } __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":355 + /* "convert.pyx":355 * v6_out.append(tpm.proper_motion(j, end=end, start=start)) * * if len(v6) == 1: # <<<<<<<<<<<<<< * return v6_out[0] * else: */ - __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 355, __pyx_L1_error) __pyx_t_2 = ((__pyx_t_7 == 1) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":356 + /* "convert.pyx":356 * * if len(v6) == 1: * return v6_out[0] # <<<<<<<<<<<<<< @@ -4405,28 +5240,36 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject * return v6_out */ __Pyx_XDECREF(__pyx_r); - __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_r = __pyx_t_10; __pyx_t_10 = 0; goto __pyx_L0; + + /* "convert.pyx":355 + * v6_out.append(tpm.proper_motion(j, end=end, start=start)) + * + * if len(v6) == 1: # <<<<<<<<<<<<<< + * return v6_out[0] + * else: + */ } - /*else*/ { - /* "src/convert.pyx":358 + /* "convert.pyx":358 * return v6_out[0] * else: * return v6_out # <<<<<<<<<<<<<< * * */ + /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_v6_out); __pyx_r = __pyx_v_v6_out; goto __pyx_L0; } - /* "src/convert.pyx":300 + /* "convert.pyx":300 * * * def proper_motion(v6, end, start): # <<<<<<<<<<<<<< @@ -4441,8 +5284,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); __Pyx_XDECREF(__pyx_t_13); - __Pyx_XDECREF(__pyx_t_14); - __Pyx_AddTraceback("pytpm.convert.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_j); @@ -4454,7 +5296,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject return __pyx_r; } -/* "src/convert.pyx":361 +/* "convert.pyx":361 * * * def v62cat(v6=None, C=36525.0): # <<<<<<<<<<<<<< @@ -4463,10 +5305,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_6proper_motion(CYTHON_UNUSED PyObject */ /* Python wrapper */ -static PyObject *__pyx_pw_5pytpm_7convert_9v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_7convert_8v62cat[] = "Convert V6C vectors into catalog entries.\n\n Parameters\n ----------\n v6 : tpm.V6C or a list of tpm.V6C objects.\n V6C object containing positions and velocities.\n C : float\n Number of days in a century, as used in proper motions in the\n given V6C vectors.\n\n Returns\n -------\n cat : dict or list of dictionaries.\n Each distionary contains the catalog quantites for the\n corresponding V6C vector.\n\n The keys are:\n + alpha : float\n Longitudinal coordinate (e.g., RA) in radians.\n + delta : float\n Latitudinal coordinate (e.g., Dec) in radians.\n + pma : float\n Proper motion in `alpha` (not alpha*cos(delta) in\n \"/century\n + pmd : float\n Proper motion in `delta` in \"/century.\n + px : float\n Parallax in arc-seconds.\n + rv : float\n Radial velocity in km/s.\n\n See also\n --------\n tpm.v62cat\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_7convert_9v62cat = {"v62cat", (PyCFunction)__pyx_pw_5pytpm_7convert_9v62cat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_5pytpm_7convert_8v62cat}; -static PyObject *__pyx_pw_5pytpm_7convert_9v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +static PyObject *__pyx_pw_7convert_9v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_7convert_8v62cat[] = "Convert V6C vectors into catalog entries.\n\n Parameters\n ----------\n v6 : tpm.V6C or a list of tpm.V6C objects.\n V6C object containing positions and velocities.\n C : float\n Number of days in a century, as used in proper motions in the\n given V6C vectors.\n\n Returns\n -------\n cat : dict or list of dictionaries.\n Each distionary contains the catalog quantites for the\n corresponding V6C vector.\n\n The keys are:\n + alpha : float\n Longitudinal coordinate (e.g., RA) in radians.\n + delta : float\n Latitudinal coordinate (e.g., Dec) in radians.\n + pma : float\n Proper motion in `alpha` (not alpha*cos(delta) in\n \"/century\n + pmd : float\n Proper motion in `delta` in \"/century.\n + px : float\n Parallax in arc-seconds.\n + rv : float\n Radial velocity in km/s.\n\n See also\n --------\n tpm.v62cat\n\n "; +static PyMethodDef __pyx_mdef_7convert_9v62cat = {"v62cat", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7convert_9v62cat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_7convert_8v62cat}; +static PyObject *__pyx_pw_7convert_9v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_v6 = 0; PyObject *__pyx_v_C = 0; int __pyx_lineno = 0; @@ -4485,7 +5327,9 @@ static PyObject *__pyx_pw_5pytpm_7convert_9v62cat(PyObject *__pyx_self, PyObject const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); switch (pos_args) { case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -4493,22 +5337,25 @@ static PyObject *__pyx_pw_5pytpm_7convert_9v62cat(PyObject *__pyx_self, PyObject switch (pos_args) { case 0: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v6); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6); if (value) { values[0] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_C); if (value) { values[1] = value; kw_args--; } } } if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "v62cat") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "v62cat") < 0)) __PYX_ERR(0, 361, __pyx_L3_error) } } else { switch (PyTuple_GET_SIZE(__pyx_args)) { case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -4518,20 +5365,20 @@ static PyObject *__pyx_pw_5pytpm_7convert_9v62cat(PyObject *__pyx_self, PyObject } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("v62cat", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("v62cat", 0, 0, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 361, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.convert.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_5pytpm_7convert_8v62cat(__pyx_self, __pyx_v_v6, __pyx_v_C); + __pyx_r = __pyx_pf_7convert_8v62cat(__pyx_self, __pyx_v_v6, __pyx_v_C); /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_C) { +static PyObject *__pyx_pf_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v6, PyObject *__pyx_v_C) { PyObject *__pyx_v_j = NULL; PyObject *__pyx_v_v = NULL; PyObject *__pyx_v_cat_out = NULL; @@ -4550,41 +5397,47 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ PyObject *__pyx_t_11 = NULL; PyObject *(*__pyx_t_12)(PyObject *); PyObject *__pyx_t_13 = NULL; - PyObject *__pyx_t_14 = NULL; - Py_ssize_t __pyx_t_15; - int __pyx_t_16; + int __pyx_t_14; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("v62cat", 0); __Pyx_INCREF(__pyx_v_v6); - /* "src/convert.pyx":399 + /* "convert.pyx":399 * """ * cdef int i * if not v6: # <<<<<<<<<<<<<< * raise TypeError("v62cat needs V6C objects.") * try: */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_v6); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(0, 399, __pyx_L1_error) __pyx_t_2 = ((!__pyx_t_1) != 0); - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":400 + /* "convert.pyx":400 * cdef int i * if not v6: * raise TypeError("v62cat needs V6C objects.") # <<<<<<<<<<<<<< * try: * len(v6) */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 400, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_Raise(__pyx_t_3, 0, 0, 0); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 400, __pyx_L1_error) + + /* "convert.pyx":399 + * """ + * cdef int i + * if not v6: # <<<<<<<<<<<<<< + * raise TypeError("v62cat needs V6C objects.") + * try: + */ } - /* "src/convert.pyx":401 + /* "convert.pyx":401 * if not v6: * raise TypeError("v62cat needs V6C objects.") * try: # <<<<<<<<<<<<<< @@ -4592,64 +5445,82 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ * except TypeError: */ { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign __Pyx_ExceptionSave(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6); __Pyx_XGOTREF(__pyx_t_4); __Pyx_XGOTREF(__pyx_t_5); __Pyx_XGOTREF(__pyx_t_6); /*try:*/ { - /* "src/convert.pyx":402 + /* "convert.pyx":402 * raise TypeError("v62cat needs V6C objects.") * try: * len(v6) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single vector. */ - __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L4_error;} + __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 402, __pyx_L4_error) + + /* "convert.pyx":401 + * if not v6: + * raise TypeError("v62cat needs V6C objects.") + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ } __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L11_try_end; + goto __pyx_L9_try_end; __pyx_L4_error:; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "src/convert.pyx":403 + /* "convert.pyx":403 * try: * len(v6) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single vector. * v6 = (v6,) */ - __pyx_t_8 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); + __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); if (__pyx_t_8) { - __Pyx_AddTraceback("pytpm.convert.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;} + __Pyx_AddTraceback("convert.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_10) < 0) __PYX_ERR(0, 403, __pyx_L6_except_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GOTREF(__pyx_t_9); __Pyx_GOTREF(__pyx_t_10); - /* "src/convert.pyx":405 + /* "convert.pyx":405 * except TypeError: * # Not a list. Assume that this is a single vector. * v6 = (v6,) # <<<<<<<<<<<<<< * * for j,v in enumerate(v6): */ - __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;} + __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 405, __pyx_L6_except_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_INCREF(__pyx_v_v6); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_v6); __Pyx_GIVEREF(__pyx_v_v6); + PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_v6); __Pyx_DECREF_SET(__pyx_v_v6, __pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L5_exception_handled; } goto __pyx_L6_except_error; __pyx_L6_except_error:; + + /* "convert.pyx":401 + * if not v6: + * raise TypeError("v62cat needs V6C objects.") + * try: # <<<<<<<<<<<<<< + * len(v6) + * except TypeError: + */ __Pyx_XGIVEREF(__pyx_t_4); __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -4660,10 +5531,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6); - __pyx_L11_try_end:; + __pyx_L9_try_end:; } - /* "src/convert.pyx":407 + /* "convert.pyx":407 * v6 = (v6,) * * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -4676,25 +5547,27 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __pyx_t_9 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_9); __pyx_t_7 = 0; __pyx_t_12 = NULL; } else { - __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_12 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_12 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 407, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_12)) { if (likely(PyList_CheckExact(__pyx_t_9))) { if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_9)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 407, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 407, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); #endif } else { if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 407, __pyx_L1_error) #else - __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 407, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); #endif } } else { @@ -4702,8 +5575,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ if (unlikely(!__pyx_t_3)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 407, __pyx_L1_error) } break; } @@ -4713,26 +5586,26 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __pyx_t_3 = 0; __Pyx_INCREF(__pyx_t_10); __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_10); - __pyx_t_3 = PyNumber_Add(__pyx_t_10, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_t_10, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = __pyx_t_3; __pyx_t_3 = 0; - /* "src/convert.pyx":408 + /* "convert.pyx":408 * * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") */ - __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 408, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_V6C); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_V6C); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 408, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_t_11 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_13))) { + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_13))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_13); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_13); @@ -4741,58 +5614,72 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __Pyx_DECREF_SET(__pyx_t_13, function); } } - if (__pyx_t_11) { - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - } else { - __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_13); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } + __pyx_t_3 = (__pyx_t_11) ? __Pyx_PyObject_CallOneArg(__pyx_t_13, __pyx_t_11) : __Pyx_PyObject_CallNoArg(__pyx_t_13); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 408, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_3)), Py_NE); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v)), ((PyObject *)Py_TYPE(__pyx_t_3)), Py_NE); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 408, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 408, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; if (__pyx_t_2) { - /* "src/convert.pyx":409 + /* "convert.pyx":409 * for j,v in enumerate(v6): * if type(v) != type(tpm.V6C()): * if j == 0: # <<<<<<<<<<<<<< * raise TypeError("v6 must be an object of type tpm.V6C.") * else: */ - __pyx_t_13 = PyObject_RichCompare(__pyx_v_j, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_13); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyInt_EqObjC(__pyx_v_j, __pyx_int_0, 0, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 409, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_13); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 409, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (__pyx_t_2) { + if (unlikely(__pyx_t_2)) { - /* "src/convert.pyx":410 + /* "convert.pyx":410 * if type(v) != type(tpm.V6C()): * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< * else: * raise TypeError( */ - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__15, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 410, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_Raise(__pyx_t_13, 0, 0, 0); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __PYX_ERR(0, 410, __pyx_L1_error) + + /* "convert.pyx":409 + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): + * if j == 0: # <<<<<<<<<<<<<< + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + */ } + + /* "convert.pyx":412 + * raise TypeError("v6 must be an object of type tpm.V6C.") + * else: + * raise TypeError( # <<<<<<<<<<<<<< + * "v6[{0}] must be an object of type tpm.V6C.".format(j)) + * + */ /*else*/ { - /* "src/convert.pyx":413 + /* "convert.pyx":413 * else: * raise TypeError( * "v6[{0}] must be an object of type tpm.V6C.".format(j)) # <<<<<<<<<<<<<< * * cat_out = [] */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_v6_0_must_be_an_object_of_type_t, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 413, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_11 = NULL; - if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) { + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_11 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_11)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); @@ -4801,44 +5688,37 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __Pyx_DECREF_SET(__pyx_t_3, function); } } - if (!__pyx_t_11) { - __pyx_t_13 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_j); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - } else { - __pyx_t_14 = PyTuple_New(1+1); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_11); __Pyx_GIVEREF(__pyx_t_11); __pyx_t_11 = NULL; - __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_14, 0+1, __pyx_v_j); - __Pyx_GIVEREF(__pyx_v_j); - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - } + __pyx_t_13 = (__pyx_t_11) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_11, __pyx_v_j) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_v_j); + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 413, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "src/convert.pyx":412 + /* "convert.pyx":412 * raise TypeError("v6 must be an object of type tpm.V6C.") * else: * raise TypeError( # <<<<<<<<<<<<<< * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * */ - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 412; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_13); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_13); - __Pyx_GIVEREF(__pyx_t_13); - __pyx_t_13 = 0; - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 412; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_13, 0, 0, 0); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 412; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_Raise(__pyx_t_3, 0, 0, 0); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __PYX_ERR(0, 412, __pyx_L1_error) } + + /* "convert.pyx":408 + * + * for j,v in enumerate(v6): + * if type(v) != type(tpm.V6C()): # <<<<<<<<<<<<<< + * if j == 0: + * raise TypeError("v6 must be an object of type tpm.V6C.") + */ } - /* "src/convert.pyx":407 + /* "convert.pyx":407 * v6 = (v6,) * * for j,v in enumerate(v6): # <<<<<<<<<<<<<< @@ -4849,19 +5729,19 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":415 + /* "convert.pyx":415 * "v6[{0}] must be an object of type tpm.V6C.".format(j)) * * cat_out = [] # <<<<<<<<<<<<<< * for j in v6: * cat_out.append(tpm.v62cat(j, C)) */ - __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 415, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_v_cat_out = ((PyObject*)__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":416 + /* "convert.pyx":416 * * cat_out = [] * for j in v6: # <<<<<<<<<<<<<< @@ -4872,25 +5752,27 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __pyx_t_10 = __pyx_v_v6; __Pyx_INCREF(__pyx_t_10); __pyx_t_7 = 0; __pyx_t_12 = NULL; } else { - __pyx_t_7 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_v_v6); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 416, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 416, __pyx_L1_error) } for (;;) { if (likely(!__pyx_t_12)) { if (likely(PyList_CheckExact(__pyx_t_10))) { if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 416, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 416, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); #endif } else { if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(0, 416, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 416, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); #endif } } else { @@ -4898,8 +5780,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ if (unlikely(!__pyx_t_9)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 416, __pyx_L1_error) } break; } @@ -4908,49 +5790,67 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":417 + /* "convert.pyx":417 * cat_out = [] * for j in v6: * cat_out.append(tpm.v62cat(j, C)) # <<<<<<<<<<<<<< * * if len(v6) == 1: */ - __pyx_t_13 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_v62cat); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 417, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = NULL; - __pyx_t_15 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_13 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_13)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_13); + __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_v62cat); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 417, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_13); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = NULL; + __pyx_t_8 = 0; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_13))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_13); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_13); + __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_15 = 1; + __Pyx_DECREF_SET(__pyx_t_13, function); + __pyx_t_8 = 1; } } - __pyx_t_14 = PyTuple_New(2+__pyx_t_15); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - if (__pyx_t_13) { - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_13); __Pyx_GIVEREF(__pyx_t_13); __pyx_t_13 = NULL; + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_13)) { + PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_j, __pyx_v_C}; + __pyx_t_9 = __Pyx_PyFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 417, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GOTREF(__pyx_t_9); + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_13)) { + PyObject *__pyx_temp[3] = {__pyx_t_3, __pyx_v_j, __pyx_v_C}; + __pyx_t_9 = __Pyx_PyCFunction_FastCall(__pyx_t_13, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 417, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_GOTREF(__pyx_t_9); + } else + #endif + { + __pyx_t_11 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 417, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + if (__pyx_t_3) { + __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_3); __pyx_t_3 = NULL; + } + __Pyx_INCREF(__pyx_v_j); + __Pyx_GIVEREF(__pyx_v_j); + PyTuple_SET_ITEM(__pyx_t_11, 0+__pyx_t_8, __pyx_v_j); + __Pyx_INCREF(__pyx_v_C); + __Pyx_GIVEREF(__pyx_v_C); + PyTuple_SET_ITEM(__pyx_t_11, 1+__pyx_t_8, __pyx_v_C); + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_11, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 417, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; } - __Pyx_INCREF(__pyx_v_j); - PyTuple_SET_ITEM(__pyx_t_14, 0+__pyx_t_15, __pyx_v_j); - __Pyx_GIVEREF(__pyx_v_j); - __Pyx_INCREF(__pyx_v_C); - PyTuple_SET_ITEM(__pyx_t_14, 1+__pyx_t_15, __pyx_v_C); - __Pyx_GIVEREF(__pyx_v_C); - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_14, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_16 = __Pyx_PyList_Append(__pyx_v_cat_out, __pyx_t_9); if (unlikely(__pyx_t_16 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; + __pyx_t_14 = __Pyx_PyList_Append(__pyx_v_cat_out, __pyx_t_9); if (unlikely(__pyx_t_14 == ((int)-1))) __PYX_ERR(0, 417, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":416 + /* "convert.pyx":416 * * cat_out = [] * for j in v6: # <<<<<<<<<<<<<< @@ -4960,18 +5860,18 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ } __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":419 + /* "convert.pyx":419 * cat_out.append(tpm.v62cat(j, C)) * * if len(v6) == 1: # <<<<<<<<<<<<<< * return cat_out[0] * else: */ - __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 419; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_7 = PyObject_Length(__pyx_v_v6); if (unlikely(__pyx_t_7 == ((Py_ssize_t)-1))) __PYX_ERR(0, 419, __pyx_L1_error) __pyx_t_2 = ((__pyx_t_7 == 1) != 0); if (__pyx_t_2) { - /* "src/convert.pyx":420 + /* "convert.pyx":420 * * if len(v6) == 1: * return cat_out[0] # <<<<<<<<<<<<<< @@ -4979,28 +5879,36 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ * return cat_out */ __Pyx_XDECREF(__pyx_r); - __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_cat_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_cat_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_r = __pyx_t_10; __pyx_t_10 = 0; goto __pyx_L0; + + /* "convert.pyx":419 + * cat_out.append(tpm.v62cat(j, C)) + * + * if len(v6) == 1: # <<<<<<<<<<<<<< + * return cat_out[0] + * else: + */ } - /*else*/ { - /* "src/convert.pyx":422 + /* "convert.pyx":422 * return cat_out[0] * else: * return cat_out # <<<<<<<<<<<<<< * * */ + /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_cat_out); __pyx_r = __pyx_v_cat_out; goto __pyx_L0; } - /* "src/convert.pyx":361 + /* "convert.pyx":361 * * * def v62cat(v6=None, C=36525.0): # <<<<<<<<<<<<<< @@ -5015,8 +5923,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ __Pyx_XDECREF(__pyx_t_10); __Pyx_XDECREF(__pyx_t_11); __Pyx_XDECREF(__pyx_t_13); - __Pyx_XDECREF(__pyx_t_14); - __Pyx_AddTraceback("pytpm.convert.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_j); @@ -5028,7 +5935,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ return __pyx_r; } -/* "src/convert.pyx":425 +/* "convert.pyx":425 * * * def cat2v6(alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0, # <<<<<<<<<<<<<< @@ -5037,10 +5944,10 @@ static PyObject *__pyx_pf_5pytpm_7convert_8v62cat(CYTHON_UNUSED PyObject *__pyx_ */ /* Python wrapper */ -static PyObject *__pyx_pw_5pytpm_7convert_11cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_7convert_10cat2v6[] = "Convert catalog entires into V6C vectors.\n\n Parameters\n ----------\n alpha : float\n Longitudinal coordinate (e.g., RA) in radians.\n delta : float\n Latitudinal coordinate (e.g., Dec) in radians.\n pma : float\n Proper motion in `alpha` (not alpha*cos(delta) in \"/century.\n pmd : float\n Proper motion in `delta` in \"/century.\n px : float\n Parallax in arc-seconds.\n rv : float\n Radial velocity in km/s.\n C : float\n Number of days in a century, as used in `pma` and `pmd`.\n\n Returns\n -------\n v : one or a list of V6C vectors\n V6C vectors corresponding to the input catalog quantities.\n\n See also\n --------\n tpm.cat2v6\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_7convert_11cat2v6 = {"cat2v6", (PyCFunction)__pyx_pw_5pytpm_7convert_11cat2v6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_5pytpm_7convert_10cat2v6}; -static PyObject *__pyx_pw_5pytpm_7convert_11cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +static PyObject *__pyx_pw_7convert_11cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_7convert_10cat2v6[] = "Convert catalog entires into V6C vectors.\n\n Parameters\n ----------\n alpha : float\n Longitudinal coordinate (e.g., RA) in radians.\n delta : float\n Latitudinal coordinate (e.g., Dec) in radians.\n pma : float\n Proper motion in `alpha` (not alpha*cos(delta) in \"/century.\n pmd : float\n Proper motion in `delta` in \"/century.\n px : float\n Parallax in arc-seconds.\n rv : float\n Radial velocity in km/s.\n C : float\n Number of days in a century, as used in `pma` and `pmd`.\n\n Returns\n -------\n v : one or a list of V6C vectors\n V6C vectors corresponding to the input catalog quantities.\n\n See also\n --------\n tpm.cat2v6\n\n "; +static PyMethodDef __pyx_mdef_7convert_11cat2v6 = {"cat2v6", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_7convert_11cat2v6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_7convert_10cat2v6}; +static PyObject *__pyx_pw_7convert_11cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_alpha = 0; PyObject *__pyx_v_delta = 0; PyObject *__pyx_v_pma = 0; @@ -5069,12 +5976,19 @@ static PyObject *__pyx_pw_5pytpm_7convert_11cat2v6(PyObject *__pyx_self, PyObjec const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); switch (pos_args) { case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -5082,52 +5996,65 @@ static PyObject *__pyx_pw_5pytpm_7convert_11cat2v6(PyObject *__pyx_self, PyObjec switch (pos_args) { case 0: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_alpha); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alpha); if (value) { values[0] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 1: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_delta); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta); if (value) { values[1] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pma); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pma); if (value) { values[2] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 3: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pmd); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pmd); if (value) { values[3] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 4: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_px); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_px); if (value) { values[4] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 5: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rv); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_rv); if (value) { values[5] = value; kw_args--; } } + CYTHON_FALLTHROUGH; case 6: if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_C); + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_C); if (value) { values[6] = value; kw_args--; } } } if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "cat2v6") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "cat2v6") < 0)) __PYX_ERR(0, 425, __pyx_L3_error) } } else { switch (PyTuple_GET_SIZE(__pyx_args)) { case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; case 0: break; default: goto __pyx_L5_argtuple_error; } @@ -5142,20 +6069,20 @@ static PyObject *__pyx_pw_5pytpm_7convert_11cat2v6(PyObject *__pyx_self, PyObjec } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 425, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.convert.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("convert.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_5pytpm_7convert_10cat2v6(__pyx_self, __pyx_v_alpha, __pyx_v_delta, __pyx_v_pma, __pyx_v_pmd, __pyx_v_px, __pyx_v_rv, __pyx_v_C); + __pyx_r = __pyx_pf_7convert_10cat2v6(__pyx_self, __pyx_v_alpha, __pyx_v_delta, __pyx_v_pma, __pyx_v_pmd, __pyx_v_px, __pyx_v_rv, __pyx_v_C); /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_pma, PyObject *__pyx_v_pmd, PyObject *__pyx_v_px, PyObject *__pyx_v_rv, PyObject *__pyx_v_C) { +static PyObject *__pyx_pf_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_pma, PyObject *__pyx_v_pmd, PyObject *__pyx_v_px, PyObject *__pyx_v_rv, PyObject *__pyx_v_C) { PyObject *__pyx_v_l = NULL; PyObject *__pyx_v_v6_out = NULL; PyObject *__pyx_v_i = NULL; @@ -5178,9 +6105,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx PyObject *__pyx_t_15 = NULL; PyObject *__pyx_t_16 = NULL; PyObject *__pyx_t_17 = NULL; - Py_ssize_t __pyx_t_18; - PyObject *__pyx_t_19 = NULL; - int __pyx_t_20; + PyObject *__pyx_t_18 = NULL; + int __pyx_t_19; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; @@ -5192,7 +6118,7 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx __Pyx_INCREF(__pyx_v_px); __Pyx_INCREF(__pyx_v_rv); - /* "src/convert.pyx":456 + /* "convert.pyx":456 * * """ * try: # <<<<<<<<<<<<<< @@ -5200,226 +6126,252 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx * len(rv)]) */ { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_3); /*try:*/ { - /* "src/convert.pyx":457 + /* "convert.pyx":457 * """ * try: * l = set([len(alpha), len(delta), len(pma), len(pmd), len(px), # <<<<<<<<<<<<<< * len(rv)]) * except TypeError: */ - __pyx_t_4 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_t_5 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_alpha); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 457, __pyx_L3_error) + __pyx_t_5 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_Length(__pyx_v_delta); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_t_6 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_delta); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 457, __pyx_L3_error) + __pyx_t_6 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_Length(__pyx_v_pma); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_t_7 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_pma); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 457, __pyx_L3_error) + __pyx_t_7 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_4 = PyObject_Length(__pyx_v_pmd); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_t_8 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_pmd); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 457, __pyx_L3_error) + __pyx_t_8 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_8); - __pyx_t_4 = PyObject_Length(__pyx_v_px); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_t_9 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_px); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 457, __pyx_L3_error) + __pyx_t_9 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_9); - /* "src/convert.pyx":458 + /* "convert.pyx":458 * try: * l = set([len(alpha), len(delta), len(pma), len(pmd), len(px), * len(rv)]) # <<<<<<<<<<<<<< * except TypeError: * # Not a list. Assume that this is a single vector. */ - __pyx_t_4 = PyObject_Length(__pyx_v_rv); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_t_10 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_4 = PyObject_Length(__pyx_v_rv); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 458, __pyx_L3_error) + __pyx_t_10 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 458, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = PySet_New(0); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_t_11 = PySet_New(0); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_11); - if (PySet_Add(__pyx_t_11, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (PySet_Add(__pyx_t_11, __pyx_t_5) < 0) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (PySet_Add(__pyx_t_11, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (PySet_Add(__pyx_t_11, __pyx_t_6) < 0) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PySet_Add(__pyx_t_11, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (PySet_Add(__pyx_t_11, __pyx_t_7) < 0) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PySet_Add(__pyx_t_11, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (PySet_Add(__pyx_t_11, __pyx_t_8) < 0) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (PySet_Add(__pyx_t_11, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (PySet_Add(__pyx_t_11, __pyx_t_9) < 0) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PySet_Add(__pyx_t_11, __pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (PySet_Add(__pyx_t_11, __pyx_t_10) < 0) __PYX_ERR(0, 457, __pyx_L3_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_v_l = ((PyObject*)__pyx_t_11); __pyx_t_11 = 0; + + /* "convert.pyx":456 + * + * """ + * try: # <<<<<<<<<<<<<< + * l = set([len(alpha), len(delta), len(pma), len(pmd), len(px), + * len(rv)]) + */ } - /*else:*/ { - /* "src/convert.pyx":469 + /* "convert.pyx":469 * l = set([1]) * else: * if len(l) != 1: # <<<<<<<<<<<<<< * raise ValueError("All coordinates must be of the same length.") * */ - __pyx_t_4 = PySet_Size(__pyx_v_l); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + /*else:*/ { + __pyx_t_4 = PySet_GET_SIZE(__pyx_v_l); if (unlikely(__pyx_t_4 == ((Py_ssize_t)-1))) __PYX_ERR(0, 469, __pyx_L5_except_error) __pyx_t_12 = ((__pyx_t_4 != 1) != 0); - if (__pyx_t_12) { + if (unlikely(__pyx_t_12)) { - /* "src/convert.pyx":470 + /* "convert.pyx":470 * else: * if len(l) != 1: * raise ValueError("All coordinates must be of the same length.") # <<<<<<<<<<<<<< * * v6_out = [] */ - __pyx_t_11 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_11 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 470, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_Raise(__pyx_t_11, 0, 0, 0); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __PYX_ERR(0, 470, __pyx_L5_except_error) + + /* "convert.pyx":469 + * l = set([1]) + * else: + * if len(l) != 1: # <<<<<<<<<<<<<< + * raise ValueError("All coordinates must be of the same length.") + * + */ } } __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L10_try_end; + goto __pyx_L8_try_end; __pyx_L3_error:; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "src/convert.pyx":459 + /* "convert.pyx":459 * l = set([len(alpha), len(delta), len(pma), len(pmd), len(px), * len(rv)]) * except TypeError: # <<<<<<<<<<<<<< * # Not a list. Assume that this is a single vector. * alpha = (alpha, ) */ - __pyx_t_13 = PyErr_ExceptionMatches(__pyx_builtin_TypeError); + __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); if (__pyx_t_13) { - __Pyx_AddTraceback("pytpm.convert.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_10, &__pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __Pyx_AddTraceback("convert.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_10, &__pyx_t_9) < 0) __PYX_ERR(0, 459, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_GOTREF(__pyx_t_10); __Pyx_GOTREF(__pyx_t_9); - /* "src/convert.pyx":461 + /* "convert.pyx":461 * except TypeError: * # Not a list. Assume that this is a single vector. * alpha = (alpha, ) # <<<<<<<<<<<<<< * delta = (delta, ) * pma = (pma, ) */ - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 461; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 461, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_alpha); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_alpha); __Pyx_GIVEREF(__pyx_v_alpha); + PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_alpha); __Pyx_DECREF_SET(__pyx_v_alpha, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":462 + /* "convert.pyx":462 * # Not a list. Assume that this is a single vector. * alpha = (alpha, ) * delta = (delta, ) # <<<<<<<<<<<<<< * pma = (pma, ) * pmd = (pmd, ) */ - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 462; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 462, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_delta); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_delta); __Pyx_GIVEREF(__pyx_v_delta); + PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_delta); __Pyx_DECREF_SET(__pyx_v_delta, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":463 + /* "convert.pyx":463 * alpha = (alpha, ) * delta = (delta, ) * pma = (pma, ) # <<<<<<<<<<<<<< * pmd = (pmd, ) * px = (px, ) */ - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 463; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 463, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_pma); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_pma); __Pyx_GIVEREF(__pyx_v_pma); + PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_pma); __Pyx_DECREF_SET(__pyx_v_pma, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":464 + /* "convert.pyx":464 * delta = (delta, ) * pma = (pma, ) * pmd = (pmd, ) # <<<<<<<<<<<<<< * px = (px, ) * rv = (rv, ) */ - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 464, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_pmd); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_pmd); __Pyx_GIVEREF(__pyx_v_pmd); + PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_pmd); __Pyx_DECREF_SET(__pyx_v_pmd, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":465 + /* "convert.pyx":465 * pma = (pma, ) * pmd = (pmd, ) * px = (px, ) # <<<<<<<<<<<<<< * rv = (rv, ) * l = set([1]) */ - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 465; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 465, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_px); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_px); __Pyx_GIVEREF(__pyx_v_px); + PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_px); __Pyx_DECREF_SET(__pyx_v_px, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":466 + /* "convert.pyx":466 * pmd = (pmd, ) * px = (px, ) * rv = (rv, ) # <<<<<<<<<<<<<< * l = set([1]) * else: */ - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 466, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_rv); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_rv); __Pyx_GIVEREF(__pyx_v_rv); + PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_rv); __Pyx_DECREF_SET(__pyx_v_rv, __pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":467 + /* "convert.pyx":467 * px = (px, ) * rv = (rv, ) * l = set([1]) # <<<<<<<<<<<<<< * else: * if len(l) != 1: */ - __pyx_t_8 = PySet_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + __pyx_t_8 = PySet_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 467, __pyx_L5_except_error) __Pyx_GOTREF(__pyx_t_8); - if (PySet_Add(__pyx_t_8, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;} + if (PySet_Add(__pyx_t_8, __pyx_int_1) < 0) __PYX_ERR(0, 467, __pyx_L5_except_error) __Pyx_XDECREF_SET(__pyx_v_l, ((PyObject*)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; goto __pyx_L4_exception_handled; } goto __pyx_L5_except_error; __pyx_L5_except_error:; + + /* "convert.pyx":456 + * + * """ + * try: # <<<<<<<<<<<<<< + * l = set([len(alpha), len(delta), len(pma), len(pmd), len(px), + * len(rv)]) + */ __Pyx_XGIVEREF(__pyx_t_1); __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_3); @@ -5430,165 +6382,192 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx __Pyx_XGIVEREF(__pyx_t_2); __Pyx_XGIVEREF(__pyx_t_3); __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - __pyx_L10_try_end:; + __pyx_L8_try_end:; } - /* "src/convert.pyx":472 + /* "convert.pyx":472 * raise ValueError("All coordinates must be of the same length.") * * v6_out = [] # <<<<<<<<<<<<<< * for i in range(l.pop()): * v6_out.append(tpm.cat2v6(alpha[i], delta[i], pma[i], pmd[i], */ - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_v_v6_out = ((PyObject*)__pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":473 + /* "convert.pyx":473 * * v6_out = [] * for i in range(l.pop()): # <<<<<<<<<<<<<< * v6_out.append(tpm.cat2v6(alpha[i], delta[i], pma[i], pmd[i], * px[i], rv[i], C)) */ - __pyx_t_9 = PySet_Pop(__pyx_v_l); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_9 = PySet_Pop(__pyx_v_l); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_builtin_range, __pyx_t_9); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_t_9 = 0; - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_builtin_range, __pyx_t_10, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (likely(PyList_CheckExact(__pyx_t_9)) || PyTuple_CheckExact(__pyx_t_9)) { - __pyx_t_10 = __pyx_t_9; __Pyx_INCREF(__pyx_t_10); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + if (likely(PyList_CheckExact(__pyx_t_10)) || PyTuple_CheckExact(__pyx_t_10)) { + __pyx_t_9 = __pyx_t_10; __Pyx_INCREF(__pyx_t_9); __pyx_t_4 = 0; __pyx_t_14 = NULL; } else { - __pyx_t_4 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_14 = Py_TYPE(__pyx_t_10)->tp_iternext; if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_10); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 473, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_14 = Py_TYPE(__pyx_t_9)->tp_iternext; if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 473, __pyx_L1_error) } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; for (;;) { if (likely(!__pyx_t_14)) { - if (likely(PyList_CheckExact(__pyx_t_10))) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_4); __Pyx_INCREF(__pyx_t_9); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(PyList_CheckExact(__pyx_t_9))) { + if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_9)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_10 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_4); __Pyx_INCREF(__pyx_t_10); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 473, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PySequence_ITEM(__pyx_t_9, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 473, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); #endif } else { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_10)) break; - #if CYTHON_COMPILING_IN_CPYTHON - __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_4); __Pyx_INCREF(__pyx_t_9); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_9)) break; + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + __pyx_t_10 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_4); __Pyx_INCREF(__pyx_t_10); __pyx_t_4++; if (unlikely(0 < 0)) __PYX_ERR(0, 473, __pyx_L1_error) #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_10, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PySequence_ITEM(__pyx_t_9, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 473, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); #endif } } else { - __pyx_t_9 = __pyx_t_14(__pyx_t_10); - if (unlikely(!__pyx_t_9)) { + __pyx_t_10 = __pyx_t_14(__pyx_t_9); + if (unlikely(!__pyx_t_10)) { PyObject* exc_type = PyErr_Occurred(); if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); + else __PYX_ERR(0, 473, __pyx_L1_error) } break; } - __Pyx_GOTREF(__pyx_t_9); + __Pyx_GOTREF(__pyx_t_10); } - __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_9); - __pyx_t_9 = 0; + __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_10); + __pyx_t_10 = 0; - /* "src/convert.pyx":474 + /* "convert.pyx":474 * v6_out = [] * for i in range(l.pop()): * v6_out.append(tpm.cat2v6(alpha[i], delta[i], pma[i], pmd[i], # <<<<<<<<<<<<<< * px[i], rv[i], C)) * */ - __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_tpm); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_cat2v6); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_cat2v6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = PyObject_GetItem(__pyx_v_alpha, __pyx_v_i); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_11 = __Pyx_PyObject_GetItem(__pyx_v_alpha, __pyx_v_i); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_7 = PyObject_GetItem(__pyx_v_delta, __pyx_v_i); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_7 = __Pyx_PyObject_GetItem(__pyx_v_delta, __pyx_v_i); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_GetItem(__pyx_v_pma, __pyx_v_i); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_6 = __Pyx_PyObject_GetItem(__pyx_v_pma, __pyx_v_i); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetItem(__pyx_v_pmd, __pyx_v_i); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_5 = __Pyx_PyObject_GetItem(__pyx_v_pmd, __pyx_v_i); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - /* "src/convert.pyx":475 + /* "convert.pyx":475 * for i in range(l.pop()): * v6_out.append(tpm.cat2v6(alpha[i], delta[i], pma[i], pmd[i], * px[i], rv[i], C)) # <<<<<<<<<<<<<< * * if l == 1: */ - __pyx_t_15 = PyObject_GetItem(__pyx_v_px, __pyx_v_i); if (unlikely(__pyx_t_15 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_15 = __Pyx_PyObject_GetItem(__pyx_v_px, __pyx_v_i); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 475, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyObject_GetItem(__pyx_v_rv, __pyx_v_i); if (unlikely(__pyx_t_16 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_t_16 = __Pyx_PyObject_GetItem(__pyx_v_rv, __pyx_v_i); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 475, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_17 = NULL; - __pyx_t_18 = 0; - if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { + __pyx_t_13 = 0; + if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_17 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_17)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_17); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); - __pyx_t_18 = 1; + __pyx_t_13 = 1; } } - __pyx_t_19 = PyTuple_New(7+__pyx_t_18); if (unlikely(!__pyx_t_19)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_19); - if (__pyx_t_17) { - PyTuple_SET_ITEM(__pyx_t_19, 0, __pyx_t_17); __Pyx_GIVEREF(__pyx_t_17); __pyx_t_17 = NULL; + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(__pyx_t_8)) { + PyObject *__pyx_temp[8] = {__pyx_t_17, __pyx_t_11, __pyx_t_7, __pyx_t_6, __pyx_t_5, __pyx_t_15, __pyx_t_16, __pyx_v_C}; + __pyx_t_10 = __Pyx_PyFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_13, 7+__pyx_t_13); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 474, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_GOTREF(__pyx_t_10); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + } else + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(__pyx_t_8)) { + PyObject *__pyx_temp[8] = {__pyx_t_17, __pyx_t_11, __pyx_t_7, __pyx_t_6, __pyx_t_5, __pyx_t_15, __pyx_t_16, __pyx_v_C}; + __pyx_t_10 = __Pyx_PyCFunction_FastCall(__pyx_t_8, __pyx_temp+1-__pyx_t_13, 7+__pyx_t_13); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 474, __pyx_L1_error) + __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_GOTREF(__pyx_t_10); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; + __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; + } else + #endif + { + __pyx_t_18 = PyTuple_New(7+__pyx_t_13); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 474, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_18); + if (__pyx_t_17) { + __Pyx_GIVEREF(__pyx_t_17); PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_17); __pyx_t_17 = NULL; + } + __Pyx_GIVEREF(__pyx_t_11); + PyTuple_SET_ITEM(__pyx_t_18, 0+__pyx_t_13, __pyx_t_11); + __Pyx_GIVEREF(__pyx_t_7); + PyTuple_SET_ITEM(__pyx_t_18, 1+__pyx_t_13, __pyx_t_7); + __Pyx_GIVEREF(__pyx_t_6); + PyTuple_SET_ITEM(__pyx_t_18, 2+__pyx_t_13, __pyx_t_6); + __Pyx_GIVEREF(__pyx_t_5); + PyTuple_SET_ITEM(__pyx_t_18, 3+__pyx_t_13, __pyx_t_5); + __Pyx_GIVEREF(__pyx_t_15); + PyTuple_SET_ITEM(__pyx_t_18, 4+__pyx_t_13, __pyx_t_15); + __Pyx_GIVEREF(__pyx_t_16); + PyTuple_SET_ITEM(__pyx_t_18, 5+__pyx_t_13, __pyx_t_16); + __Pyx_INCREF(__pyx_v_C); + __Pyx_GIVEREF(__pyx_v_C); + PyTuple_SET_ITEM(__pyx_t_18, 6+__pyx_t_13, __pyx_v_C); + __pyx_t_11 = 0; + __pyx_t_7 = 0; + __pyx_t_6 = 0; + __pyx_t_5 = 0; + __pyx_t_15 = 0; + __pyx_t_16 = 0; + __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_18, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 474, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; } - PyTuple_SET_ITEM(__pyx_t_19, 0+__pyx_t_18, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - PyTuple_SET_ITEM(__pyx_t_19, 1+__pyx_t_18, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_19, 2+__pyx_t_18, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_19, 3+__pyx_t_18, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_19, 4+__pyx_t_18, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - PyTuple_SET_ITEM(__pyx_t_19, 5+__pyx_t_18, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __Pyx_INCREF(__pyx_v_C); - PyTuple_SET_ITEM(__pyx_t_19, 6+__pyx_t_18, __pyx_v_C); - __Pyx_GIVEREF(__pyx_v_C); - __pyx_t_11 = 0; - __pyx_t_7 = 0; - __pyx_t_6 = 0; - __pyx_t_5 = 0; - __pyx_t_15 = 0; - __pyx_t_16 = 0; - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_19, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "src/convert.pyx":474 + /* "convert.pyx":474 * v6_out = [] * for i in range(l.pop()): * v6_out.append(tpm.cat2v6(alpha[i], delta[i], pma[i], pmd[i], # <<<<<<<<<<<<<< * px[i], rv[i], C)) * */ - __pyx_t_20 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_9); if (unlikely(__pyx_t_20 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __pyx_t_19 = __Pyx_PyList_Append(__pyx_v_v6_out, __pyx_t_10); if (unlikely(__pyx_t_19 == ((int)-1))) __PYX_ERR(0, 474, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "src/convert.pyx":473 + /* "convert.pyx":473 * * v6_out = [] * for i in range(l.pop()): # <<<<<<<<<<<<<< @@ -5596,21 +6575,21 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx * px[i], rv[i], C)) */ } - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "src/convert.pyx":477 + /* "convert.pyx":477 * px[i], rv[i], C)) * * if l == 1: # <<<<<<<<<<<<<< * return v6_out[0] * else: */ - __pyx_t_10 = PyObject_RichCompare(__pyx_v_l, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_10); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_10); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_9 = PyObject_RichCompare(__pyx_v_l, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 477, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_12 < 0)) __PYX_ERR(0, 477, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (__pyx_t_12) { - /* "src/convert.pyx":478 + /* "convert.pyx":478 * * if l == 1: * return v6_out[0] # <<<<<<<<<<<<<< @@ -5618,26 +6597,34 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx * return v6_out */ __Pyx_XDECREF(__pyx_r); - __pyx_t_10 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 478; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_GOTREF(__pyx_t_10); - __pyx_r = __pyx_t_10; - __pyx_t_10 = 0; + __pyx_t_9 = __Pyx_GetItemInt_List(__pyx_v_v6_out, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 478, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_r = __pyx_t_9; + __pyx_t_9 = 0; goto __pyx_L0; + + /* "convert.pyx":477 + * px[i], rv[i], C)) + * + * if l == 1: # <<<<<<<<<<<<<< + * return v6_out[0] + * else: + */ } - /*else*/ { - /* "src/convert.pyx":480 + /* "convert.pyx":480 * return v6_out[0] * else: * return v6_out # <<<<<<<<<<<<<< */ + /*else*/ { __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_v6_out); __pyx_r = __pyx_v_v6_out; goto __pyx_L0; } - /* "src/convert.pyx":425 + /* "convert.pyx":425 * * * def cat2v6(alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0, # <<<<<<<<<<<<<< @@ -5657,8 +6644,8 @@ static PyObject *__pyx_pf_5pytpm_7convert_10cat2v6(CYTHON_UNUSED PyObject *__pyx __Pyx_XDECREF(__pyx_t_15); __Pyx_XDECREF(__pyx_t_16); __Pyx_XDECREF(__pyx_t_17); - __Pyx_XDECREF(__pyx_t_19); - __Pyx_AddTraceback("pytpm.convert.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_XDECREF(__pyx_t_18); + __Pyx_AddTraceback("convert.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_l); @@ -5680,22 +6667,45 @@ static PyMethodDef __pyx_methods[] = { }; #if PY_MAJOR_VERSION >= 3 +#if CYTHON_PEP489_MULTI_PHASE_INIT +static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ +static int __pyx_pymod_exec_convert(PyObject* module); /*proto*/ +static PyModuleDef_Slot __pyx_moduledef_slots[] = { + {Py_mod_create, (void*)__pyx_pymod_create}, + {Py_mod_exec, (void*)__pyx_pymod_exec_convert}, + {0, NULL} +}; +#endif + static struct PyModuleDef __pyx_moduledef = { - #if PY_VERSION_HEX < 0x03020000 - { PyObject_HEAD_INIT(NULL) NULL, 0, NULL }, - #else PyModuleDef_HEAD_INIT, - #endif "convert", 0, /* m_doc */ + #if CYTHON_PEP489_MULTI_PHASE_INIT + 0, /* m_size */ + #else -1, /* m_size */ + #endif __pyx_methods /* m_methods */, + #if CYTHON_PEP489_MULTI_PHASE_INIT + __pyx_moduledef_slots, /* m_slots */ + #else NULL, /* m_reload */ + #endif NULL, /* m_traverse */ NULL, /* m_clear */ NULL /* m_free */ }; #endif +#ifndef CYTHON_SMALL_CODE +#if defined(__clang__) + #define CYTHON_SMALL_CODE +#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + #define CYTHON_SMALL_CODE __attribute__((cold)) +#else + #define CYTHON_SMALL_CODE +#endif +#endif static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_kp_s_All_coordinates_must_be_of_the_s, __pyx_k_All_coordinates_must_be_of_the_s, sizeof(__pyx_k_All_coordinates_must_be_of_the_s), 0, 0, 1, 0}, @@ -5713,17 +6723,18 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_n_s_TPM_S06, __pyx_k_TPM_S06, sizeof(__pyx_k_TPM_S06), 0, 0, 1, 1}, {&__pyx_n_s_TSTATE, __pyx_k_TSTATE, sizeof(__pyx_k_TSTATE), 0, 0, 1, 1}, {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, - {&__pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_k_Users_deil_code_pytpm_src_conve, sizeof(__pyx_k_Users_deil_code_pytpm_src_conve), 0, 0, 1, 0}, {&__pyx_n_s_V6C, __pyx_k_V6C, sizeof(__pyx_k_V6C), 0, 0, 1, 1}, {&__pyx_n_s_V6S, __pyx_k_V6S, sizeof(__pyx_k_V6S), 0, 0, 1, 1}, {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, - {&__pyx_n_s__17, __pyx_k__17, sizeof(__pyx_k__17), 0, 0, 1, 1}, + {&__pyx_n_s__14, __pyx_k__14, sizeof(__pyx_k__14), 0, 0, 1, 1}, {&__pyx_n_s_alpha, __pyx_k_alpha, sizeof(__pyx_k_alpha), 0, 0, 1, 1}, {&__pyx_n_s_alpha_out, __pyx_k_alpha_out, sizeof(__pyx_k_alpha_out), 0, 0, 1, 1}, {&__pyx_n_s_alt, __pyx_k_alt, sizeof(__pyx_k_alt), 0, 0, 1, 1}, {&__pyx_n_s_c2s, __pyx_k_c2s, sizeof(__pyx_k_c2s), 0, 0, 1, 1}, {&__pyx_n_s_cat2v6, __pyx_k_cat2v6, sizeof(__pyx_k_cat2v6), 0, 0, 1, 1}, {&__pyx_n_s_cat_out, __pyx_k_cat_out, sizeof(__pyx_k_cat_out), 0, 0, 1, 1}, + {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, + {&__pyx_n_s_convert, __pyx_k_convert, sizeof(__pyx_k_convert), 0, 0, 1, 1}, {&__pyx_n_s_convertv6, __pyx_k_convertv6, sizeof(__pyx_k_convertv6), 0, 0, 1, 1}, {&__pyx_kp_s_convertv6_needs_V6C_object, __pyx_k_convertv6_needs_V6C_object, sizeof(__pyx_k_convertv6_needs_V6C_object), 0, 0, 1, 0}, {&__pyx_n_s_d2r, __pyx_k_d2r, sizeof(__pyx_k_d2r), 0, 0, 1, 1}, @@ -5746,6 +6757,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_n_s_lon, __pyx_k_lon, sizeof(__pyx_k_lon), 0, 0, 1, 1}, {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, {&__pyx_n_s_nalpha, __pyx_k_nalpha, sizeof(__pyx_k_nalpha), 0, 0, 1, 1}, + {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, {&__pyx_n_s_ndelta, __pyx_k_ndelta, sizeof(__pyx_k_ndelta), 0, 0, 1, 1}, {&__pyx_n_s_pflag, __pyx_k_pflag, sizeof(__pyx_k_pflag), 0, 0, 1, 1}, {&__pyx_n_s_pma, __pyx_k_pma, sizeof(__pyx_k_pma), 0, 0, 1, 1}, @@ -5757,7 +6769,6 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_kp_s_proper_motion_needs_V6C_object, __pyx_k_proper_motion_needs_V6C_object, sizeof(__pyx_k_proper_motion_needs_V6C_object), 0, 0, 1, 0}, {&__pyx_n_s_pvec, __pyx_k_pvec, sizeof(__pyx_k_pvec), 0, 0, 1, 1}, {&__pyx_n_s_px, __pyx_k_px, sizeof(__pyx_k_px), 0, 0, 1, 1}, - {&__pyx_n_s_pytpm_convert, __pyx_k_pytpm_convert, sizeof(__pyx_k_pytpm_convert), 0, 0, 1, 1}, {&__pyx_n_s_r, __pyx_k_r, sizeof(__pyx_k_r), 0, 0, 1, 1}, {&__pyx_n_s_r2d, __pyx_k_r2d, sizeof(__pyx_k_r2d), 0, 0, 1, 1}, {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1}, @@ -5765,6 +6776,7 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_n_s_s1, __pyx_k_s1, sizeof(__pyx_k_s1), 0, 0, 1, 1}, {&__pyx_n_s_s2, __pyx_k_s2, sizeof(__pyx_k_s2), 0, 0, 1, 1}, {&__pyx_n_s_s2c, __pyx_k_s2c, sizeof(__pyx_k_s2c), 0, 0, 1, 1}, + {&__pyx_kp_s_src_convert_pyx, __pyx_k_src_convert_pyx, sizeof(__pyx_k_src_convert_pyx), 0, 0, 1, 0}, {&__pyx_n_s_start, __pyx_k_start, sizeof(__pyx_k_start), 0, 0, 1, 1}, {&__pyx_n_s_temp, __pyx_k_temp, sizeof(__pyx_k_temp), 0, 0, 1, 1}, {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, @@ -5784,201 +6796,168 @@ static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_n_s_ypole, __pyx_k_ypole, sizeof(__pyx_k_ypole), 0, 0, 1, 1}, {0, 0, 0, 0, 0, 0, 0} }; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} +static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { + __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 100, __pyx_L1_error) + __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(0, 117, __pyx_L1_error) + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 216, __pyx_L1_error) + __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(0, 221, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; } -static int __Pyx_InitCachedConstants(void) { +static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "src/convert.pyx":100 + /* "convert.pyx":100 * cdef int i * if not v6: * raise TypeError("convertv6 needs V6C object.") # <<<<<<<<<<<<<< * if utc == -999: * # UTC not supplied set all three time scale values, ignoring */ - __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_s_convertv6_needs_V6C_object); if (unlikely(!__pyx_tuple__5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_s_convertv6_needs_V6C_object); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(0, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__5); __Pyx_GIVEREF(__pyx_tuple__5); - /* "src/convert.pyx":120 + /* "convert.pyx":120 * if type(v) != type(tpm.V6C()): * if j == 0: * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< * else: * raise TypeError( */ - __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_s_v6_must_be_an_object_of_type_tpm); if (unlikely(!__pyx_tuple__6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_s_v6_must_be_an_object_of_type_tpm); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 120, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__6); __Pyx_GIVEREF(__pyx_tuple__6); - /* "src/convert.pyx":216 + /* "convert.pyx":216 * * if len(alpha) != len(delta): * raise ValueError( # <<<<<<<<<<<<<< * "Both alpha and delta must be of equal length.") * */ - __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_s_Both_alpha_and_delta_must_be_of); if (unlikely(!__pyx_tuple__8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_s_Both_alpha_and_delta_must_be_of); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 216, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__8); __Pyx_GIVEREF(__pyx_tuple__8); - /* "src/convert.pyx":274 + /* "convert.pyx":274 * cdef int i * if not v6: * raise TypeError("precessv6 needs V6C object.") # <<<<<<<<<<<<<< * * try: */ - __pyx_tuple__10 = PyTuple_Pack(1, __pyx_kp_s_precessv6_needs_V6C_object); if (unlikely(!__pyx_tuple__10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__10 = PyTuple_Pack(1, __pyx_kp_s_precessv6_needs_V6C_object); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 274, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__10); __Pyx_GIVEREF(__pyx_tuple__10); - /* "src/convert.pyx":285 - * if type(v) != type(tpm.V6C()): - * if j == 0: - * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< - * else: - * raise TypeError( - */ - __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_s_v6_must_be_an_object_of_type_tpm); if (unlikely(!__pyx_tuple__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__11); - __Pyx_GIVEREF(__pyx_tuple__11); - - /* "src/convert.pyx":336 + /* "convert.pyx":336 * cdef int i * if not v6: * raise TypeError("proper_motion needs V6C object.") # <<<<<<<<<<<<<< * try: * len(v6) */ - __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_s_proper_motion_needs_V6C_object); if (unlikely(!__pyx_tuple__12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__12); - __Pyx_GIVEREF(__pyx_tuple__12); - - /* "src/convert.pyx":346 - * if type(v) != type(tpm.V6C()): - * if j == 0: - * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< - * else: - * raise TypeError( - */ - __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_v6_must_be_an_object_of_type_tpm); if (unlikely(!__pyx_tuple__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__13); - __Pyx_GIVEREF(__pyx_tuple__13); + __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_s_proper_motion_needs_V6C_object); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(0, 336, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__11); + __Pyx_GIVEREF(__pyx_tuple__11); - /* "src/convert.pyx":400 + /* "convert.pyx":400 * cdef int i * if not v6: * raise TypeError("v62cat needs V6C objects.") # <<<<<<<<<<<<<< * try: * len(v6) */ - __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_s_v62cat_needs_V6C_objects); if (unlikely(!__pyx_tuple__14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__14); - __Pyx_GIVEREF(__pyx_tuple__14); - - /* "src/convert.pyx":410 - * if type(v) != type(tpm.V6C()): - * if j == 0: - * raise TypeError("v6 must be an object of type tpm.V6C.") # <<<<<<<<<<<<<< - * else: - * raise TypeError( - */ - __pyx_tuple__15 = PyTuple_Pack(1, __pyx_kp_s_v6_must_be_an_object_of_type_tpm); if (unlikely(!__pyx_tuple__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__15); - __Pyx_GIVEREF(__pyx_tuple__15); + __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_s_v62cat_needs_V6C_objects); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 400, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__12); + __Pyx_GIVEREF(__pyx_tuple__12); - /* "src/convert.pyx":470 + /* "convert.pyx":470 * else: * if len(l) != 1: * raise ValueError("All coordinates must be of the same length.") # <<<<<<<<<<<<<< * * v6_out = [] */ - __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_s_All_coordinates_must_be_of_the_s); if (unlikely(!__pyx_tuple__16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__16); - __Pyx_GIVEREF(__pyx_tuple__16); + __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_All_coordinates_must_be_of_the_s); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 470, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__13); + __Pyx_GIVEREF(__pyx_tuple__13); - /* "src/convert.pyx":4 + /* "convert.pyx":4 * * * def convertv6(v6=None, double utc=-999, double delta_at=-999, # <<<<<<<<<<<<<< * double delta_ut=-999, * int s1=tpm.TPM_S06, int s2=tpm.TARGET_OBS_AZEL, */ - __pyx_tuple__18 = PyTuple_Pack(24, __pyx_n_s_v6, __pyx_n_s_utc, __pyx_n_s_delta_at, __pyx_n_s_delta_ut, __pyx_n_s_s1, __pyx_n_s_s2, __pyx_n_s_epoch, __pyx_n_s_equinox, __pyx_n_s_lon, __pyx_n_s_lat, __pyx_n_s_alt, __pyx_n_s_xpole, __pyx_n_s_ypole, __pyx_n_s_T, __pyx_n_s_P, __pyx_n_s_H, __pyx_n_s_wavelength, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_tstate, __pyx_n_s_pvec, __pyx_n_s_v6_out, __pyx_n_s_temp); if (unlikely(!__pyx_tuple__18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__18); - __Pyx_GIVEREF(__pyx_tuple__18); - __pyx_codeobj__19 = (PyObject*)__Pyx_PyCode_New(17, 0, 24, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__18, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_n_s_convertv6, 4, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__19)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__15 = PyTuple_Pack(24, __pyx_n_s_v6, __pyx_n_s_utc, __pyx_n_s_delta_at, __pyx_n_s_delta_ut, __pyx_n_s_s1, __pyx_n_s_s2, __pyx_n_s_epoch, __pyx_n_s_equinox, __pyx_n_s_lon, __pyx_n_s_lat, __pyx_n_s_alt, __pyx_n_s_xpole, __pyx_n_s_ypole, __pyx_n_s_T, __pyx_n_s_P, __pyx_n_s_H, __pyx_n_s_wavelength, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_tstate, __pyx_n_s_pvec, __pyx_n_s_v6_out, __pyx_n_s_temp); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(0, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__15); + __Pyx_GIVEREF(__pyx_tuple__15); + __pyx_codeobj__16 = (PyObject*)__Pyx_PyCode_New(17, 0, 24, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__15, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_convert_pyx, __pyx_n_s_convertv6, 4, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__16)) __PYX_ERR(0, 4, __pyx_L1_error) - /* "src/convert.pyx":160 + /* "convert.pyx":160 * * * def precess(alpha=-999, delta=-999, start=-999, end=-999, # <<<<<<<<<<<<<< * pflag=tpm.PRECESS_FK5): * """Precess list of alpha and delta values. */ - __pyx_tuple__20 = PyTuple_Pack(10, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag, __pyx_n_s_j, __pyx_n_s_i, __pyx_n_s_alpha_out, __pyx_n_s_delta_out, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__20)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__20); - __Pyx_GIVEREF(__pyx_tuple__20); - __pyx_codeobj__21 = (PyObject*)__Pyx_PyCode_New(5, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__20, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_n_s_precess, 160, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__21)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__17 = PyTuple_Pack(10, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag, __pyx_n_s_j, __pyx_n_s_i, __pyx_n_s_alpha_out, __pyx_n_s_delta_out, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 160, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__17); + __Pyx_GIVEREF(__pyx_tuple__17); + __pyx_codeobj__18 = (PyObject*)__Pyx_PyCode_New(5, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__17, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_convert_pyx, __pyx_n_s_precess, 160, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__18)) __PYX_ERR(0, 160, __pyx_L1_error) - /* "src/convert.pyx":238 + /* "convert.pyx":238 * * * def precessv6(v6=None, start=-999, end=-999, pflag=tpm.PRECESS_FK5): # <<<<<<<<<<<<<< * """Precess a list of V6C vectors. * */ - __pyx_tuple__22 = PyTuple_Pack(8, __pyx_n_s_v6, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_v6_out); if (unlikely(!__pyx_tuple__22)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__22); - __Pyx_GIVEREF(__pyx_tuple__22); - __pyx_codeobj__23 = (PyObject*)__Pyx_PyCode_New(4, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__22, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_n_s_precessv6, 238, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__23)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__19 = PyTuple_Pack(8, __pyx_n_s_v6, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_v6_out); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 238, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__19); + __Pyx_GIVEREF(__pyx_tuple__19); + __pyx_codeobj__20 = (PyObject*)__Pyx_PyCode_New(4, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__19, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_convert_pyx, __pyx_n_s_precessv6, 238, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__20)) __PYX_ERR(0, 238, __pyx_L1_error) - /* "src/convert.pyx":300 + /* "convert.pyx":300 * * * def proper_motion(v6, end, start): # <<<<<<<<<<<<<< * """Apply proper motion to tpm.V6C vectors. * */ - __pyx_tuple__24 = PyTuple_Pack(7, __pyx_n_s_v6, __pyx_n_s_end, __pyx_n_s_start, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_v6_out); if (unlikely(!__pyx_tuple__24)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__24); - __Pyx_GIVEREF(__pyx_tuple__24); - __pyx_codeobj__25 = (PyObject*)__Pyx_PyCode_New(3, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__24, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_n_s_proper_motion, 300, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__25)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__21 = PyTuple_Pack(7, __pyx_n_s_v6, __pyx_n_s_end, __pyx_n_s_start, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_v6_out); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 300, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__21); + __Pyx_GIVEREF(__pyx_tuple__21); + __pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(3, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__21, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_convert_pyx, __pyx_n_s_proper_motion, 300, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) __PYX_ERR(0, 300, __pyx_L1_error) - /* "src/convert.pyx":361 + /* "convert.pyx":361 * * * def v62cat(v6=None, C=36525.0): # <<<<<<<<<<<<<< * """Convert V6C vectors into catalog entries. * */ - __pyx_tuple__26 = PyTuple_Pack(6, __pyx_n_s_v6, __pyx_n_s_C, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_cat_out); if (unlikely(!__pyx_tuple__26)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__26); - __Pyx_GIVEREF(__pyx_tuple__26); - __pyx_codeobj__27 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__26, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_n_s_v62cat, 361, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__27)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__23 = PyTuple_Pack(6, __pyx_n_s_v6, __pyx_n_s_C, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_v, __pyx_n_s_cat_out); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 361, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__23); + __Pyx_GIVEREF(__pyx_tuple__23); + __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__23, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_convert_pyx, __pyx_n_s_v62cat, 361, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(0, 361, __pyx_L1_error) - /* "src/convert.pyx":425 + /* "convert.pyx":425 * * * def cat2v6(alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0, # <<<<<<<<<<<<<< * C=36525.0): * """Convert catalog entires into V6C vectors. */ - __pyx_tuple__28 = PyTuple_Pack(10, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_pma, __pyx_n_s_pmd, __pyx_n_s_px, __pyx_n_s_rv, __pyx_n_s_C, __pyx_n_s_l, __pyx_n_s_v6_out, __pyx_n_s_i); if (unlikely(!__pyx_tuple__28)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_tuple__28); - __Pyx_GIVEREF(__pyx_tuple__28); - __pyx_codeobj__29 = (PyObject*)__Pyx_PyCode_New(7, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__28, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Users_deil_code_pytpm_src_conve, __pyx_n_s_cat2v6, 425, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__29)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_tuple__25 = PyTuple_Pack(10, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_pma, __pyx_n_s_pmd, __pyx_n_s_px, __pyx_n_s_rv, __pyx_n_s_C, __pyx_n_s_l, __pyx_n_s_v6_out, __pyx_n_s_i); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 425, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__25); + __Pyx_GIVEREF(__pyx_tuple__25); + __pyx_codeobj__26 = (PyObject*)__Pyx_PyCode_New(7, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__25, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_convert_pyx, __pyx_n_s_cat2v6, 425, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__26)) __PYX_ERR(0, 425, __pyx_L1_error) __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -5986,25 +6965,175 @@ static int __Pyx_InitCachedConstants(void) { return -1; } -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_float_0_0 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_float_0_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_float_1e10 = PyFloat_FromDouble(1e10); if (unlikely(!__pyx_float_1e10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_float_36525_0 = PyFloat_FromDouble(36525.0); if (unlikely(!__pyx_float_36525_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_int_neg_999 = PyInt_FromLong(-999); if (unlikely(!__pyx_int_neg_999)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} +static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { + if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error); + __pyx_float_0_0 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_float_0_0)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_float_1e10 = PyFloat_FromDouble(1e10); if (unlikely(!__pyx_float_1e10)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_float_36525_0 = PyFloat_FromDouble(36525.0); if (unlikely(!__pyx_float_36525_0)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_int_neg_999 = PyInt_FromLong(-999); if (unlikely(!__pyx_int_neg_999)) __PYX_ERR(0, 1, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; } +static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ + +static int __Pyx_modinit_global_init_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); + /*--- Global init code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_variable_export_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); + /*--- Variable export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_export_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); + /*--- Function export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_type_init_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); + /*--- Type init code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_type_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); + /*--- Type import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_variable_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); + /*--- Variable import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); + /*--- Function import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + + +#ifndef CYTHON_NO_PYINIT_EXPORT +#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC +#elif PY_MAJOR_VERSION < 3 +#ifdef __cplusplus +#define __Pyx_PyMODINIT_FUNC extern "C" void +#else +#define __Pyx_PyMODINIT_FUNC void +#endif +#else +#ifdef __cplusplus +#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * +#else +#define __Pyx_PyMODINIT_FUNC PyObject * +#endif +#endif + + #if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initconvert(void); /*proto*/ -PyMODINIT_FUNC initconvert(void) +__Pyx_PyMODINIT_FUNC initconvert(void) CYTHON_SMALL_CODE; /*proto*/ +__Pyx_PyMODINIT_FUNC initconvert(void) #else -PyMODINIT_FUNC PyInit_convert(void); /*proto*/ -PyMODINIT_FUNC PyInit_convert(void) +__Pyx_PyMODINIT_FUNC PyInit_convert(void) CYTHON_SMALL_CODE; /*proto*/ +__Pyx_PyMODINIT_FUNC PyInit_convert(void) +#if CYTHON_PEP489_MULTI_PHASE_INIT +{ + return PyModuleDef_Init(&__pyx_moduledef); +} +static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { + #if PY_VERSION_HEX >= 0x030700A1 + static PY_INT64_T main_interpreter_id = -1; + PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); + if (main_interpreter_id == -1) { + main_interpreter_id = current_id; + return (unlikely(current_id == -1)) ? -1 : 0; + } else if (unlikely(main_interpreter_id != current_id)) + #else + static PyInterpreterState *main_interpreter = NULL; + PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; + if (!main_interpreter) { + main_interpreter = current_interpreter; + } else if (unlikely(main_interpreter != current_interpreter)) + #endif + { + PyErr_SetString( + PyExc_ImportError, + "Interpreter change detected - this module can only be loaded into one interpreter per process."); + return -1; + } + return 0; +} +static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { + PyObject *value = PyObject_GetAttrString(spec, from_name); + int result = 0; + if (likely(value)) { + if (allow_none || value != Py_None) { + result = PyDict_SetItemString(moddict, to_name, value); + } + Py_DECREF(value); + } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { + PyErr_Clear(); + } else { + result = -1; + } + return result; +} +static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) { + PyObject *module = NULL, *moddict, *modname; + if (__Pyx_check_single_interpreter()) + return NULL; + if (__pyx_m) + return __Pyx_NewRef(__pyx_m); + modname = PyObject_GetAttrString(spec, "name"); + if (unlikely(!modname)) goto bad; + module = PyModule_NewObject(modname); + Py_DECREF(modname); + if (unlikely(!module)) goto bad; + moddict = PyModule_GetDict(module); + if (unlikely(!moddict)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__", 0) < 0)) goto bad; + return module; +bad: + Py_XDECREF(module); + return NULL; +} + + +static CYTHON_SMALL_CODE int __pyx_pymod_exec_convert(PyObject *__pyx_pyinit_module) +#endif #endif { PyObject *__pyx_t_1 = NULL; @@ -6015,27 +7144,49 @@ PyMODINIT_FUNC PyInit_convert(void) const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); + #if CYTHON_PEP489_MULTI_PHASE_INIT + if (__pyx_m) { + if (__pyx_m == __pyx_pyinit_module) return 0; + PyErr_SetString(PyExc_RuntimeError, "Module 'convert' has already been imported. Re-initialisation is not supported."); + return -1; } + #elif PY_MAJOR_VERSION >= 3 + if (__pyx_m) return __Pyx_NewRef(__pyx_m); + #endif + #if CYTHON_REFNANNY +__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); +if (!__Pyx_RefNanny) { + PyErr_Clear(); + __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); + if (!__Pyx_RefNanny) + Py_FatalError("failed to import 'refnanny' module"); +} +#endif + __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_convert(void)", 0); + if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #ifdef __Pxy_PyFrame_Initialize_Offsets + __Pxy_PyFrame_Initialize_Offsets(); #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_convert(void)", 0); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) + __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) #ifdef __Pyx_CyFunction_USED - if (__Pyx_CyFunction_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_CyFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_FusedFunction_USED - if (__pyx_FusedFunction_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_FusedFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_Coroutine_USED + if (__pyx_Coroutine_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif #ifdef __Pyx_Generator_USED - if (__pyx_Generator_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_AsyncGen_USED + if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_StopAsyncIteration_USED + if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif /*--- Library function declarations ---*/ /*--- Threads initialization code ---*/ @@ -6045,219 +7196,228 @@ PyMODINIT_FUNC PyInit_convert(void) #endif #endif /*--- Module creation code ---*/ + #if CYTHON_PEP489_MULTI_PHASE_INIT + __pyx_m = __pyx_pyinit_module; + Py_INCREF(__pyx_m); + #else #if PY_MAJOR_VERSION < 3 __pyx_m = Py_InitModule4("convert", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); #else __pyx_m = PyModule_Create(&__pyx_moduledef); #endif - if (unlikely(!__pyx_m)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) + #endif + __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) Py_INCREF(__pyx_d); - __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #if CYTHON_COMPILING_IN_PYPY + __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) Py_INCREF(__pyx_b); - #endif - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) + Py_INCREF(__pyx_cython_runtime); + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error); /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) - if (__Pyx_init_sys_getdefaultencoding_params() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - if (__pyx_module_is_main_pytpm__convert) { - if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + if (__pyx_module_is_main_convert) { + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name, __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) } #if PY_MAJOR_VERSION >= 3 { - PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (!PyDict_GetItemString(modules, "pytpm.convert")) { - if (unlikely(PyDict_SetItemString(modules, "pytpm.convert", __pyx_m) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) + if (!PyDict_GetItemString(modules, "convert")) { + if (unlikely(PyDict_SetItemString(modules, "convert", __pyx_m) < 0)) __PYX_ERR(0, 1, __pyx_L1_error) } } #endif /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error) /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ + if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + /*--- Global type/function init code ---*/ + (void)__Pyx_modinit_global_init_code(); + (void)__Pyx_modinit_variable_export_code(); + (void)__Pyx_modinit_function_export_code(); + (void)__Pyx_modinit_type_init_code(); + (void)__Pyx_modinit_type_import_code(); + (void)__Pyx_modinit_variable_import_code(); + (void)__Pyx_modinit_function_import_code(); /*--- Execution code ---*/ + #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) + if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) + #endif - /* "src/convert.pyx":1 + /* "convert.pyx":1 * from . import tpm # <<<<<<<<<<<<<< * * */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_n_s_tpm); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_tpm); __Pyx_GIVEREF(__pyx_n_s_tpm); - __pyx_t_2 = __Pyx_Import(__pyx_n_s__17, __pyx_t_1, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_tpm); + __pyx_t_2 = __Pyx_Import(__pyx_n_s__14, __pyx_t_1, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_tpm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tpm, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/convert.pyx":6 + /* "convert.pyx":6 * def convertv6(v6=None, double utc=-999, double delta_at=-999, * double delta_ut=-999, * int s1=tpm.TPM_S06, int s2=tpm.TARGET_OBS_AZEL, # <<<<<<<<<<<<<< * double epoch=tpm.J2000, double equinox=tpm.J2000, * double lon=-111.598333, */ - __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_TPM_S06); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_TPM_S06); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_k_ = __pyx_t_3; - __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_TARGET_OBS_AZEL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_TARGET_OBS_AZEL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_2); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_2); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_k__2 = __pyx_t_3; - /* "src/convert.pyx":7 + /* "convert.pyx":7 * double delta_ut=-999, * int s1=tpm.TPM_S06, int s2=tpm.TARGET_OBS_AZEL, * double epoch=tpm.J2000, double equinox=tpm.J2000, # <<<<<<<<<<<<<< * double lon=-111.598333, * double lat=31.956389, */ - __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_J2000); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_J2000); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_k__3 = __pyx_t_4; - __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_J2000); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_J2000); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_t_2); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_t_2); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_k__4 = __pyx_t_4; - /* "src/convert.pyx":4 + /* "convert.pyx":4 * * * def convertv6(v6=None, double utc=-999, double delta_at=-999, # <<<<<<<<<<<<<< * double delta_ut=-999, * int s1=tpm.TPM_S06, int s2=tpm.TARGET_OBS_AZEL, */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_7convert_1convertv6, NULL, __pyx_n_s_pytpm_convert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7convert_1convertv6, NULL, __pyx_n_s_convert); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_convertv6, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_convertv6, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/convert.pyx":161 + /* "convert.pyx":161 * * def precess(alpha=-999, delta=-999, start=-999, end=-999, * pflag=tpm.PRECESS_FK5): # <<<<<<<<<<<<<< * """Precess list of alpha and delta values. * */ - __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_PRECESS_FK5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_PRECESS_FK5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_k__7 = __pyx_t_1; __Pyx_GIVEREF(__pyx_t_1); __pyx_t_1 = 0; - /* "src/convert.pyx":160 + /* "convert.pyx":160 * * * def precess(alpha=-999, delta=-999, start=-999, end=-999, # <<<<<<<<<<<<<< * pflag=tpm.PRECESS_FK5): * """Precess list of alpha and delta values. */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_7convert_3precess, NULL, __pyx_n_s_pytpm_convert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_7convert_3precess, NULL, __pyx_n_s_convert); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 160, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_precess, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_precess, __pyx_t_1) < 0) __PYX_ERR(0, 160, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "src/convert.pyx":238 + /* "convert.pyx":238 * * * def precessv6(v6=None, start=-999, end=-999, pflag=tpm.PRECESS_FK5): # <<<<<<<<<<<<<< * """Precess a list of V6C vectors. * */ - __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 238, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_PRECESS_FK5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_PRECESS_FK5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 238, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_k__9 = __pyx_t_2; __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_7convert_5precessv6, NULL, __pyx_n_s_pytpm_convert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7convert_5precessv6, NULL, __pyx_n_s_convert); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 238, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_precessv6, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_precessv6, __pyx_t_2) < 0) __PYX_ERR(0, 238, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/convert.pyx":300 + /* "convert.pyx":300 * * * def proper_motion(v6, end, start): # <<<<<<<<<<<<<< * """Apply proper motion to tpm.V6C vectors. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_7convert_7proper_motion, NULL, __pyx_n_s_pytpm_convert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7convert_7proper_motion, NULL, __pyx_n_s_convert); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 300, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_proper_motion, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_proper_motion, __pyx_t_2) < 0) __PYX_ERR(0, 300, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/convert.pyx":361 + /* "convert.pyx":361 * * * def v62cat(v6=None, C=36525.0): # <<<<<<<<<<<<<< * """Convert V6C vectors into catalog entries. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_7convert_9v62cat, NULL, __pyx_n_s_pytpm_convert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7convert_9v62cat, NULL, __pyx_n_s_convert); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 361, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_v62cat, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_v62cat, __pyx_t_2) < 0) __PYX_ERR(0, 361, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/convert.pyx":425 + /* "convert.pyx":425 * * * def cat2v6(alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0, # <<<<<<<<<<<<<< * C=36525.0): * """Convert catalog entires into V6C vectors. */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_7convert_11cat2v6, NULL, __pyx_n_s_pytpm_convert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7convert_11cat2v6, NULL, __pyx_n_s_convert); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_cat2v6, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_cat2v6, __pyx_t_2) < 0) __PYX_ERR(0, 425, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/convert.pyx":1 + /* "convert.pyx":1 * from . import tpm # <<<<<<<<<<<<<< * * */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /*--- Wrapped vars code ---*/ @@ -6268,29 +7428,32 @@ PyMODINIT_FUNC PyInit_convert(void) __Pyx_XDECREF(__pyx_t_2); if (__pyx_m) { if (__pyx_d) { - __Pyx_AddTraceback("init pytpm.convert", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_AddTraceback("init convert", __pyx_clineno, __pyx_lineno, __pyx_filename); } - Py_DECREF(__pyx_m); __pyx_m = 0; + Py_CLEAR(__pyx_m); } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init pytpm.convert"); + PyErr_SetString(PyExc_ImportError, "init convert"); } __pyx_L0:; __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else + #if CYTHON_PEP489_MULTI_PHASE_INIT + return (__pyx_m != NULL) ? 0 : -1; + #elif PY_MAJOR_VERSION >= 3 return __pyx_m; + #else + return; #endif } -/* Runtime support code */ +/* --- Runtime support code --- */ +/* Refnanny */ #if CYTHON_REFNANNY static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { PyObject *m = NULL, *p = NULL; void *r = NULL; - m = PyImport_ImportModule((char *)modname); + m = PyImport_ImportModule(modname); if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); + p = PyObject_GetAttrString(m, "RefNannyAPI"); if (!p) goto end; r = PyLong_AsVoidPtr(p); end: @@ -6300,6 +7463,21 @@ static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { } #endif +/* PyObjectGetAttrStr */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_getattro)) + return tp->tp_getattro(obj, attr_name); +#if PY_MAJOR_VERSION < 3 + if (likely(tp->tp_getattr)) + return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); +#endif + return PyObject_GetAttr(obj, attr_name); +} +#endif + +/* GetBuiltinName */ static PyObject *__Pyx_GetBuiltinName(PyObject *name) { PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name); if (unlikely(!result)) { @@ -6313,6 +7491,7 @@ static PyObject *__Pyx_GetBuiltinName(PyObject *name) { return result; } +/* RaiseDoubleKeywords */ static void __Pyx_RaiseDoubleKeywordsError( const char* func_name, PyObject* kw_name) @@ -6326,6 +7505,7 @@ static void __Pyx_RaiseDoubleKeywordsError( #endif } +/* ParseKeywords */ static int __Pyx_ParseOptionalKeywords( PyObject *kwds, PyObject **argnames[], @@ -6347,7 +7527,7 @@ static int __Pyx_ParseOptionalKeywords( } name = first_kw_arg; #if PY_MAJOR_VERSION < 3 - if (likely(PyString_CheckExact(key)) || likely(PyString_Check(key))) { + if (likely(PyString_Check(key))) { while (*name) { if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) && _PyString_Eq(**name, key)) { @@ -6374,7 +7554,7 @@ static int __Pyx_ParseOptionalKeywords( while (*name) { int cmp = (**name == key) ? 0 : #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 : + (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : #endif PyUnicode_Compare(**name, key); if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; @@ -6390,7 +7570,7 @@ static int __Pyx_ParseOptionalKeywords( while (argname != first_kw_arg) { int cmp = (**argname == key) ? 0 : #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 : + (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : #endif PyUnicode_Compare(**argname, key); if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; @@ -6427,6 +7607,7 @@ static int __Pyx_ParseOptionalKeywords( return -1; } +/* RaiseArgTupleInvalid */ static void __Pyx_RaiseArgtupleInvalid( const char* func_name, int exact, @@ -6452,6 +7633,7 @@ static void __Pyx_RaiseArgtupleInvalid( (num_expected == 1) ? "" : "s", num_found); } +/* PyObjectCall */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { PyObject *result; @@ -6471,10 +7653,10 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg } #endif -static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) { -#if CYTHON_COMPILING_IN_CPYTHON +/* PyErrFetchRestore */ +#if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; tmp_tb = tstate->curexc_traceback; @@ -6484,27 +7666,22 @@ static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyOb Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); -#else - PyErr_Restore(type, value, tb); -#endif } -static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) { -#if CYTHON_COMPILING_IN_CPYTHON - PyThreadState *tstate = PyThreadState_GET(); +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; -#else - PyErr_Fetch(type, value, tb); -#endif } +#endif +/* RaiseException */ #if PY_MAJOR_VERSION < 3 static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, CYTHON_UNUSED PyObject *cause) { + __Pyx_PyThreadState_declare Py_XINCREF(type); if (!value || value == Py_None) value = NULL; @@ -6543,6 +7720,7 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, goto raise_error; } } + __Pyx_PyThreadState_assign __Pyx_ErrRestore(type, value, tb); return; raise_error: @@ -6576,10 +7754,13 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject if (value && PyExceptionInstance_Check(value)) { instance_class = (PyObject*) Py_TYPE(value); if (instance_class != type) { - if (PyObject_IsSubclass(instance_class, type)) { - type = instance_class; - } else { + int is_subclass = PyObject_IsSubclass(instance_class, type); + if (!is_subclass) { instance_class = NULL; + } else if (unlikely(is_subclass == -1)) { + goto bad; + } else { + type = instance_class; } } } @@ -6612,11 +7793,7 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject "raise: exception class must be a subclass of BaseException"); goto bad; } -#if PY_VERSION_HEX >= 0x03030000 if (cause) { -#else - if (cause && cause != Py_None) { -#endif PyObject *fixed_cause; if (cause == Py_None) { fixed_cause = NULL; @@ -6639,12 +7816,12 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject if (tb) { #if CYTHON_COMPILING_IN_PYPY PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_Fetch(tmp_type, tmp_value, tmp_tb); + PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); Py_INCREF(tb); PyErr_Restore(tmp_type, tmp_value, tb); Py_XDECREF(tmp_tb); #else - PyThreadState *tstate = PyThreadState_GET(); + PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { Py_INCREF(tb); @@ -6659,23 +7836,239 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject } #endif -static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) { - PyObject *result; +/* PyDictVersioning */ +#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) { + PyObject *dict = Py_TYPE(obj)->tp_dict; + return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; +} +static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) { + PyObject **dictptr = NULL; + Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; + if (offset) { #if CYTHON_COMPILING_IN_CPYTHON + dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); +#else + dictptr = _PyObject_GetDictPtr(obj); +#endif + } + return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; +} +static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) { + PyObject *dict = Py_TYPE(obj)->tp_dict; + if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) + return 0; + return obj_dict_version == __Pyx_get_object_dict_version(obj); +} +#endif + +/* GetModuleGlobalName */ +#if CYTHON_USE_DICT_VERSIONS +static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value) +#else +static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) +#endif +{ + PyObject *result; +#if !CYTHON_AVOID_BORROWED_REFS +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 + result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return __Pyx_NewRef(result); + } else if (unlikely(PyErr_Occurred())) { + return NULL; + } +#else result = PyDict_GetItem(__pyx_d, name); + __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) if (likely(result)) { - Py_INCREF(result); - } else { + return __Pyx_NewRef(result); + } +#endif #else result = PyObject_GetItem(__pyx_d, name); - if (!result) { - PyErr_Clear(); + __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return __Pyx_NewRef(result); + } + PyErr_Clear(); +#endif + return __Pyx_GetBuiltinName(name); +} + +/* PyCFunctionFastCall */ +#if CYTHON_FAST_PYCCALL +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) { + PyCFunctionObject *func = (PyCFunctionObject*)func_obj; + PyCFunction meth = PyCFunction_GET_FUNCTION(func); + PyObject *self = PyCFunction_GET_SELF(func); + int flags = PyCFunction_GET_FLAGS(func); + assert(PyCFunction_Check(func)); + assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS))); + assert(nargs >= 0); + assert(nargs == 0 || args != NULL); + /* _PyCFunction_FastCallDict() must not be called with an exception set, + because it may clear it (directly or indirectly) and so the + caller loses its exception */ + assert(!PyErr_Occurred()); + if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) { + return (*((__Pyx_PyCFunctionFastWithKeywords)(void*)meth)) (self, args, nargs, NULL); + } else { + return (*((__Pyx_PyCFunctionFast)(void*)meth)) (self, args, nargs); + } +} +#endif + +/* PyFunctionFastCall */ +#if CYTHON_FAST_PYCALL +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, + PyObject *globals) { + PyFrameObject *f; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject **fastlocals; + Py_ssize_t i; + PyObject *result; + assert(globals != NULL); + /* XXX Perhaps we should create a specialized + PyFrame_New() that doesn't take locals, but does + take builtins without sanity checking them. + */ + assert(tstate != NULL); + f = PyFrame_New(tstate, co, globals, NULL); + if (f == NULL) { + return NULL; + } + fastlocals = __Pyx_PyFrame_GetLocalsplus(f); + for (i = 0; i < na; i++) { + Py_INCREF(*args); + fastlocals[i] = *args++; + } + result = PyEval_EvalFrameEx(f,0); + ++tstate->recursion_depth; + Py_DECREF(f); + --tstate->recursion_depth; + return result; +} +#if 1 || PY_VERSION_HEX < 0x030600B1 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { + PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); + PyObject *globals = PyFunction_GET_GLOBALS(func); + PyObject *argdefs = PyFunction_GET_DEFAULTS(func); + PyObject *closure; +#if PY_MAJOR_VERSION >= 3 + PyObject *kwdefs; +#endif + PyObject *kwtuple, **k; + PyObject **d; + Py_ssize_t nd; + Py_ssize_t nk; + PyObject *result; + assert(kwargs == NULL || PyDict_Check(kwargs)); + nk = kwargs ? PyDict_Size(kwargs) : 0; + if (Py_EnterRecursiveCall((char*)" while calling a Python object")) { + return NULL; + } + if ( +#if PY_MAJOR_VERSION >= 3 + co->co_kwonlyargcount == 0 && +#endif + likely(kwargs == NULL || nk == 0) && + co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { + if (argdefs == NULL && co->co_argcount == nargs) { + result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); + goto done; + } + else if (nargs == 0 && argdefs != NULL + && co->co_argcount == Py_SIZE(argdefs)) { + /* function called with no arguments, but all parameters have + a default value: use default values as arguments .*/ + args = &PyTuple_GET_ITEM(argdefs, 0); + result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); + goto done; + } + } + if (kwargs != NULL) { + Py_ssize_t pos, i; + kwtuple = PyTuple_New(2 * nk); + if (kwtuple == NULL) { + result = NULL; + goto done; + } + k = &PyTuple_GET_ITEM(kwtuple, 0); + pos = i = 0; + while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { + Py_INCREF(k[i]); + Py_INCREF(k[i+1]); + i += 2; + } + nk = i / 2; + } + else { + kwtuple = NULL; + k = NULL; + } + closure = PyFunction_GET_CLOSURE(func); +#if PY_MAJOR_VERSION >= 3 + kwdefs = PyFunction_GET_KW_DEFAULTS(func); +#endif + if (argdefs != NULL) { + d = &PyTuple_GET_ITEM(argdefs, 0); + nd = Py_SIZE(argdefs); + } + else { + d = NULL; + nd = 0; + } +#if PY_MAJOR_VERSION >= 3 + result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, kwdefs, closure); +#else + result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, closure); +#endif + Py_XDECREF(kwtuple); +done: + Py_LeaveRecursiveCall(); + return result; +} +#endif #endif - result = __Pyx_GetBuiltinName(name); + +/* PyObjectCall2Args */ +static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args, *result = NULL; + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(function)) { + PyObject *args[2] = {arg1, arg2}; + return __Pyx_PyFunction_FastCall(function, args, 2); + } + #endif + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(function)) { + PyObject *args[2] = {arg1, arg2}; + return __Pyx_PyCFunction_FastCall(function, args, 2); } + #endif + args = PyTuple_New(2); + if (unlikely(!args)) goto done; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + Py_INCREF(function); + result = __Pyx_PyObject_Call(function, args, NULL); + Py_DECREF(args); + Py_DECREF(function); +done: return result; } +/* PyObjectCallMethO */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { PyObject *self, *result; @@ -6695,6 +8088,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject } #endif +/* PyObjectCallOneArg */ #if CYTHON_COMPILING_IN_CPYTHON static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) { PyObject *result; @@ -6707,60 +8101,124 @@ static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) { return result; } static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { -#ifdef __Pyx_CyFunction_USED - if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) { -#else - if (likely(PyCFunction_Check(func))) { +#if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCall(func, &arg, 1); + } #endif + if (likely(PyCFunction_Check(func))) { if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { return __Pyx_PyObject_CallMethO(func, arg); +#if CYTHON_FAST_PYCCALL + } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) { + return __Pyx_PyCFunction_FastCall(func, &arg, 1); +#endif } } return __Pyx__PyObject_CallOneArg(func, arg); } #else static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { - PyObject* args = PyTuple_Pack(1, arg); - return (likely(args)) ? __Pyx_PyObject_Call(func, args, NULL) : NULL; + PyObject *result; + PyObject *args = PyTuple_Pack(1, arg); + if (unlikely(!args)) return NULL; + result = __Pyx_PyObject_Call(func, args, NULL); + Py_DECREF(args); + return result; } #endif -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { -#if CYTHON_COMPILING_IN_CPYTHON - PyThreadState *tstate = PyThreadState_GET(); - *type = tstate->exc_type; +/* GetTopmostException */ +#if CYTHON_USE_EXC_INFO_STACK +static _PyErr_StackItem * +__Pyx_PyErr_GetTopmostException(PyThreadState *tstate) +{ + _PyErr_StackItem *exc_info = tstate->exc_info; + while ((exc_info->exc_type == NULL || exc_info->exc_type == Py_None) && + exc_info->previous_item != NULL) + { + exc_info = exc_info->previous_item; + } + return exc_info; +} +#endif + +/* SaveResetException */ +#if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { + #if CYTHON_USE_EXC_INFO_STACK + _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate); + *type = exc_info->exc_type; + *value = exc_info->exc_value; + *tb = exc_info->exc_traceback; + #else + *type = tstate->exc_type; *value = tstate->exc_value; *tb = tstate->exc_traceback; + #endif Py_XINCREF(*type); Py_XINCREF(*value); Py_XINCREF(*tb); -#else - PyErr_GetExcInfo(type, value, tb); -#endif } -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) { -#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); + #if CYTHON_USE_EXC_INFO_STACK + _PyErr_StackItem *exc_info = tstate->exc_info; + tmp_type = exc_info->exc_type; + tmp_value = exc_info->exc_value; + tmp_tb = exc_info->exc_traceback; + exc_info->exc_type = type; + exc_info->exc_value = value; + exc_info->exc_traceback = tb; + #else tmp_type = tstate->exc_type; tmp_value = tstate->exc_value; tmp_tb = tstate->exc_traceback; tstate->exc_type = type; tstate->exc_value = value; tstate->exc_traceback = tb; + #endif Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); -#else - PyErr_SetExcInfo(type, value, tb); +} +#endif + +/* PyErrExceptionMatches */ +#if CYTHON_FAST_THREAD_STATE +static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(tuple); +#if PY_MAJOR_VERSION >= 3 + for (i=0; icurexc_type; + if (exc_type == err) return 1; + if (unlikely(!exc_type)) return 0; + if (unlikely(PyTuple_Check(err))) + return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); } +#endif -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) { +/* GetException */ +#if CYTHON_FAST_THREAD_STATE +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) +#else +static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) +#endif +{ PyObject *local_type, *local_value, *local_tb; -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_FAST_THREAD_STATE PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); local_type = tstate->curexc_type; local_value = tstate->curexc_value; local_tb = tstate->curexc_traceback; @@ -6771,7 +8229,7 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) PyErr_Fetch(&local_type, &local_value, &local_tb); #endif PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_FAST_THREAD_STATE if (unlikely(tstate->curexc_type)) #else if (unlikely(PyErr_Occurred())) @@ -6789,13 +8247,25 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) *type = local_type; *value = local_value; *tb = local_tb; -#if CYTHON_COMPILING_IN_CPYTHON +#if CYTHON_FAST_THREAD_STATE + #if CYTHON_USE_EXC_INFO_STACK + { + _PyErr_StackItem *exc_info = tstate->exc_info; + tmp_type = exc_info->exc_type; + tmp_value = exc_info->exc_value; + tmp_tb = exc_info->exc_traceback; + exc_info->exc_type = local_type; + exc_info->exc_value = local_value; + exc_info->exc_traceback = local_tb; + } + #else tmp_type = tstate->exc_type; tmp_value = tstate->exc_value; tmp_tb = tstate->exc_traceback; tstate->exc_type = local_type; tstate->exc_value = local_value; tstate->exc_traceback = local_tb; + #endif Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); @@ -6813,13 +8283,144 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) return -1; } +/* PyIntBinop */ +#if !CYTHON_COMPILING_IN_PYPY +static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, int inplace, int zerodivision_check) { + (void)inplace; + (void)zerodivision_check; + #if PY_MAJOR_VERSION < 3 + if (likely(PyInt_CheckExact(op1))) { + const long b = intval; + long x; + long a = PyInt_AS_LONG(op1); + x = (long)((unsigned long)a + b); + if (likely((x^a) >= 0 || (x^b) >= 0)) + return PyInt_FromLong(x); + return PyLong_Type.tp_as_number->nb_add(op1, op2); + } + #endif + #if CYTHON_USE_PYLONG_INTERNALS + if (likely(PyLong_CheckExact(op1))) { + const long b = intval; + long a, x; +#ifdef HAVE_LONG_LONG + const PY_LONG_LONG llb = intval; + PY_LONG_LONG lla, llx; +#endif + const digit* digits = ((PyLongObject*)op1)->ob_digit; + const Py_ssize_t size = Py_SIZE(op1); + if (likely(__Pyx_sst_abs(size) <= 1)) { + a = likely(size) ? digits[0] : 0; + if (size == -1) a = -a; + } else { + switch (size) { + case -2: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; +#ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { + lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; +#endif + } + CYTHON_FALLTHROUGH; + case 2: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; +#ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { + lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; +#endif + } + CYTHON_FALLTHROUGH; + case -3: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; +#ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { + lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; +#endif + } + CYTHON_FALLTHROUGH; + case 3: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; +#ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { + lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; +#endif + } + CYTHON_FALLTHROUGH; + case -4: + if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; +#ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { + lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; +#endif + } + CYTHON_FALLTHROUGH; + case 4: + if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); + break; +#ifdef HAVE_LONG_LONG + } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { + lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); + goto long_long; +#endif + } + CYTHON_FALLTHROUGH; + default: return PyLong_Type.tp_as_number->nb_add(op1, op2); + } + } + x = a + b; + return PyLong_FromLong(x); +#ifdef HAVE_LONG_LONG + long_long: + llx = lla + llb; + return PyLong_FromLongLong(llx); +#endif + + + } + #endif + if (PyFloat_CheckExact(op1)) { + const long b = intval; + double a = PyFloat_AS_DOUBLE(op1); + double result; + PyFPE_START_PROTECT("add", return NULL) + result = ((double)a) + (double)b; + PyFPE_END_PROTECT(result) + return PyFloat_FromDouble(result); + } + return (inplace ? PyNumber_InPlaceAdd : PyNumber_Add)(op1, op2); +} +#endif + +/* PyObjectCallNoArg */ #if CYTHON_COMPILING_IN_CPYTHON static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { +#if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCall(func, NULL, 0); + } +#endif #ifdef __Pyx_CyFunction_USED - if (likely(PyCFunction_Check(func) || PyObject_TypeCheck(func, __pyx_CyFunctionType))) { + if (likely(PyCFunction_Check(func) || __Pyx_CyFunction_Check(func))) #else - if (likely(PyCFunction_Check(func))) { + if (likely(PyCFunction_Check(func))) #endif + { if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) { return __Pyx_PyObject_CallMethO(func, NULL); } @@ -6828,19 +8429,101 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { } #endif -static CYTHON_INLINE int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v) { +/* PyIntCompare */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED long inplace) { + if (op1 == op2) { + Py_RETURN_TRUE; + } + #if PY_MAJOR_VERSION < 3 + if (likely(PyInt_CheckExact(op1))) { + const long b = intval; + long a = PyInt_AS_LONG(op1); + if (a == b) Py_RETURN_TRUE; else Py_RETURN_FALSE; + } + #endif + #if CYTHON_USE_PYLONG_INTERNALS + if (likely(PyLong_CheckExact(op1))) { + int unequal; + unsigned long uintval; + Py_ssize_t size = Py_SIZE(op1); + const digit* digits = ((PyLongObject*)op1)->ob_digit; + if (intval == 0) { + if (size == 0) Py_RETURN_TRUE; else Py_RETURN_FALSE; + } else if (intval < 0) { + if (size >= 0) + Py_RETURN_FALSE; + intval = -intval; + size = -size; + } else { + if (size <= 0) + Py_RETURN_FALSE; + } + uintval = (unsigned long) intval; +#if PyLong_SHIFT * 4 < SIZEOF_LONG*8 + if (uintval >> (PyLong_SHIFT * 4)) { + unequal = (size != 5) || (digits[0] != (uintval & (unsigned long) PyLong_MASK)) + | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[2] != ((uintval >> (2 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[3] != ((uintval >> (3 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[4] != ((uintval >> (4 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)); + } else +#endif +#if PyLong_SHIFT * 3 < SIZEOF_LONG*8 + if (uintval >> (PyLong_SHIFT * 3)) { + unequal = (size != 4) || (digits[0] != (uintval & (unsigned long) PyLong_MASK)) + | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[2] != ((uintval >> (2 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[3] != ((uintval >> (3 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)); + } else +#endif +#if PyLong_SHIFT * 2 < SIZEOF_LONG*8 + if (uintval >> (PyLong_SHIFT * 2)) { + unequal = (size != 3) || (digits[0] != (uintval & (unsigned long) PyLong_MASK)) + | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)) | (digits[2] != ((uintval >> (2 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)); + } else +#endif +#if PyLong_SHIFT * 1 < SIZEOF_LONG*8 + if (uintval >> (PyLong_SHIFT * 1)) { + unequal = (size != 2) || (digits[0] != (uintval & (unsigned long) PyLong_MASK)) + | (digits[1] != ((uintval >> (1 * PyLong_SHIFT)) & (unsigned long) PyLong_MASK)); + } else +#endif + unequal = (size != 1) || (((unsigned long) digits[0]) != (uintval & (unsigned long) PyLong_MASK)); + if (unequal == 0) Py_RETURN_TRUE; else Py_RETURN_FALSE; + } + #endif + if (PyFloat_CheckExact(op1)) { + const long b = intval; + double a = PyFloat_AS_DOUBLE(op1); + if ((double)a == (double)b) Py_RETURN_TRUE; else Py_RETURN_FALSE; + } + return ( + PyObject_RichCompare(op1, op2, Py_EQ)); +} + +/* PyObjectSetAttrStr */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_setattro)) + return tp->tp_setattro(obj, attr_name, value); +#if PY_MAJOR_VERSION < 3 + if (likely(tp->tp_setattr)) + return tp->tp_setattr(obj, PyString_AS_STRING(attr_name), value); +#endif + return PyObject_SetAttr(obj, attr_name, value); +} +#endif + +/* SetItemInt */ +static int __Pyx_SetItemInt_Generic(PyObject *o, PyObject *j, PyObject *v) { int r; if (!j) return -1; r = PyObject_SetItem(o, j, v); Py_DECREF(j); return r; } -static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v, - int is_list, int wraparound, int boundscheck) { -#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObject *v, int is_list, + CYTHON_NCP_UNUSED int wraparound, CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS if (is_list || PyList_CheckExact(o)) { Py_ssize_t n = (!wraparound) ? i : ((likely(i >= 0)) ? i : i + PyList_GET_SIZE(o)); - if ((!boundscheck) || likely((n >= 0) & (n < PyList_GET_SIZE(o)))) { + if ((!boundscheck) || likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o)))) { PyObject* old = PyList_GET_ITEM(o, n); Py_INCREF(v); PyList_SET_ITEM(o, n, v); @@ -6855,10 +8538,9 @@ static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObje if (likely(l >= 0)) { i += l; } else { - if (PyErr_ExceptionMatches(PyExc_OverflowError)) - PyErr_Clear(); - else + if (!PyErr_ExceptionMatches(PyExc_OverflowError)) return -1; + PyErr_Clear(); } } return m->sq_ass_item(o, i, v); @@ -6866,17 +8548,19 @@ static CYTHON_INLINE int __Pyx_SetItemInt_Fast(PyObject *o, Py_ssize_t i, PyObje } #else #if CYTHON_COMPILING_IN_PYPY - if (is_list || (PySequence_Check(o) && !PyDict_Check(o))) { + if (is_list || (PySequence_Check(o) && !PyDict_Check(o))) #else - if (is_list || PySequence_Check(o)) { + if (is_list || PySequence_Check(o)) #endif + { return PySequence_SetItem(o, i, v); } #endif return __Pyx_SetItemInt_Generic(o, PyInt_FromSsize_t(i), v); } -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { +/* GetItemInt */ +static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { PyObject *r; if (!j) return NULL; r = PyObject_GetItem(o, j); @@ -6884,11 +8568,15 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j return r; } static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, - int wraparound, int boundscheck) { -#if CYTHON_COMPILING_IN_CPYTHON - if (wraparound & unlikely(i < 0)) i += PyList_GET_SIZE(o); - if ((!boundscheck) || likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, i); + CYTHON_NCP_UNUSED int wraparound, + CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + Py_ssize_t wrapped_i = i; + if (wraparound & unlikely(i < 0)) { + wrapped_i += PyList_GET_SIZE(o); + } + if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyList_GET_SIZE(o)))) { + PyObject *r = PyList_GET_ITEM(o, wrapped_i); Py_INCREF(r); return r; } @@ -6898,11 +8586,15 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_ #endif } static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, - int wraparound, int boundscheck) { -#if CYTHON_COMPILING_IN_CPYTHON - if (wraparound & unlikely(i < 0)) i += PyTuple_GET_SIZE(o); - if ((!boundscheck) || likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, i); + CYTHON_NCP_UNUSED int wraparound, + CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + Py_ssize_t wrapped_i = i; + if (wraparound & unlikely(i < 0)) { + wrapped_i += PyTuple_GET_SIZE(o); + } + if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyTuple_GET_SIZE(o)))) { + PyObject *r = PyTuple_GET_ITEM(o, wrapped_i); Py_INCREF(r); return r; } @@ -6911,12 +8603,13 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize return PySequence_GetItem(o, i); #endif } -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, - int is_list, int wraparound, int boundscheck) { -#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, + CYTHON_NCP_UNUSED int wraparound, + CYTHON_NCP_UNUSED int boundscheck) { +#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS if (is_list || PyList_CheckExact(o)) { Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o); - if ((!boundscheck) || (likely((n >= 0) & (n < PyList_GET_SIZE(o))))) { + if ((!boundscheck) || (likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o))))) { PyObject *r = PyList_GET_ITEM(o, n); Py_INCREF(r); return r; @@ -6924,7 +8617,7 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, } else if (PyTuple_CheckExact(o)) { Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o); - if ((!boundscheck) || likely((n >= 0) & (n < PyTuple_GET_SIZE(o)))) { + if ((!boundscheck) || likely(__Pyx_is_valid_index(n, PyTuple_GET_SIZE(o)))) { PyObject *r = PyTuple_GET_ITEM(o, n); Py_INCREF(r); return r; @@ -6937,10 +8630,9 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, if (likely(l >= 0)) { i += l; } else { - if (PyErr_ExceptionMatches(PyExc_OverflowError)) - PyErr_Clear(); - else + if (!PyErr_ExceptionMatches(PyExc_OverflowError)) return NULL; + PyErr_Clear(); } } return m->sq_item(o, i); @@ -6954,6 +8646,101 @@ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); } +/* ObjectGetItem */ +#if CYTHON_USE_TYPE_SLOTS +static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject* index) { + PyObject *runerr; + Py_ssize_t key_value; + PySequenceMethods *m = Py_TYPE(obj)->tp_as_sequence; + if (unlikely(!(m && m->sq_item))) { + PyErr_Format(PyExc_TypeError, "'%.200s' object is not subscriptable", Py_TYPE(obj)->tp_name); + return NULL; + } + key_value = __Pyx_PyIndex_AsSsize_t(index); + if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) { + return __Pyx_GetItemInt_Fast(obj, key_value, 0, 1, 1); + } + if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) { + PyErr_Clear(); + PyErr_Format(PyExc_IndexError, "cannot fit '%.200s' into an index-sized integer", Py_TYPE(index)->tp_name); + } + return NULL; +} +static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key) { + PyMappingMethods *m = Py_TYPE(obj)->tp_as_mapping; + if (likely(m && m->mp_subscript)) { + return m->mp_subscript(obj, key); + } + return __Pyx_PyObject_GetIndex(obj, key); +} +#endif + +/* Import */ +static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { + PyObject *empty_list = 0; + PyObject *module = 0; + PyObject *global_dict = 0; + PyObject *empty_dict = 0; + PyObject *list; + #if PY_MAJOR_VERSION < 3 + PyObject *py_import; + py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); + if (!py_import) + goto bad; + #endif + if (from_list) + list = from_list; + else { + empty_list = PyList_New(0); + if (!empty_list) + goto bad; + list = empty_list; + } + global_dict = PyModule_GetDict(__pyx_m); + if (!global_dict) + goto bad; + empty_dict = PyDict_New(); + if (!empty_dict) + goto bad; + { + #if PY_MAJOR_VERSION >= 3 + if (level == -1) { + if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) { + module = PyImport_ImportModuleLevelObject( + name, global_dict, empty_dict, list, 1); + if (!module) { + if (!PyErr_ExceptionMatches(PyExc_ImportError)) + goto bad; + PyErr_Clear(); + } + } + level = 0; + } + #endif + if (!module) { + #if PY_MAJOR_VERSION < 3 + PyObject *py_level = PyInt_FromLong(level); + if (!py_level) + goto bad; + module = PyObject_CallFunctionObjArgs(py_import, + name, global_dict, empty_dict, list, py_level, (PyObject *)NULL); + Py_DECREF(py_level); + #else + module = PyImport_ImportModuleLevelObject( + name, global_dict, empty_dict, list, level); + #endif + } + } +bad: + #if PY_MAJOR_VERSION < 3 + Py_XDECREF(py_import); + #endif + Py_XDECREF(empty_list); + Py_XDECREF(empty_dict); + return module; +} + +/* ImportFrom */ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { PyObject* value = __Pyx_PyObject_GetAttrStr(module, name); if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) { @@ -6967,13 +8754,56 @@ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { return value; } +/* CLineInTraceback */ +#ifndef CYTHON_CLINE_IN_TRACEBACK +static int __Pyx_CLineForTraceback(CYTHON_NCP_UNUSED PyThreadState *tstate, int c_line) { + PyObject *use_cline; + PyObject *ptype, *pvalue, *ptraceback; +#if CYTHON_COMPILING_IN_CPYTHON + PyObject **cython_runtime_dict; +#endif + if (unlikely(!__pyx_cython_runtime)) { + return c_line; + } + __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); +#if CYTHON_COMPILING_IN_CPYTHON + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + if (likely(cython_runtime_dict)) { + __PYX_PY_DICT_LOOKUP_IF_MODIFIED( + use_cline, *cython_runtime_dict, + __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) + } else +#endif + { + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + if (use_cline_obj) { + use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_DECREF(use_cline_obj); + } else { + PyErr_Clear(); + use_cline = NULL; + } + } + if (!use_cline) { + c_line = 0; + PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + } + else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { + c_line = 0; + } + __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); + return c_line; +} +#endif + +/* CodeObjectCache */ static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { int start = 0, mid = 0, end = count - 1; if (end >= 0 && code_line > entries[end].code_line) { return count; } while (start < end) { - mid = (start + end) / 2; + mid = start + (end - start) / 2; if (code_line < entries[mid].code_line) { end = mid; } else if (code_line > entries[mid].code_line) { @@ -7030,7 +8860,7 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { if (__pyx_code_cache.count == __pyx_code_cache.max_count) { int new_max = __pyx_code_cache.max_count + 64; entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - __pyx_code_cache.entries, (size_t)new_max*sizeof(__Pyx_CodeObjectCacheEntry)); + __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); if (unlikely(!entries)) { return; } @@ -7046,6 +8876,7 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { Py_INCREF(code_object); } +/* AddTraceback */ #include "compile.h" #include "frameobject.h" #include "traceback.h" @@ -7105,123 +8936,118 @@ static void __Pyx_AddTraceback(const char *funcname, int c_line, int py_line, const char *filename) { PyCodeObject *py_code = 0; PyFrameObject *py_frame = 0; - py_code = __pyx_find_code_object(c_line ? c_line : py_line); + PyThreadState *tstate = __Pyx_PyThreadState_Current; + if (c_line) { + c_line = __Pyx_CLineForTraceback(tstate, c_line); + } + py_code = __pyx_find_code_object(c_line ? -c_line : py_line); if (!py_code) { py_code = __Pyx_CreateCodeObjectForTraceback( funcname, c_line, py_line, filename); if (!py_code) goto bad; - __pyx_insert_code_object(c_line ? c_line : py_line, py_code); + __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); } py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ + tstate, /*PyThreadState *tstate,*/ + py_code, /*PyCodeObject *code,*/ + __pyx_d, /*PyObject *globals,*/ + 0 /*PyObject *locals*/ ); if (!py_frame) goto bad; - py_frame->f_lineno = py_line; + __Pyx_PyFrame_SetLineNumber(py_frame, py_line); PyTraceBack_Here(py_frame); bad: Py_XDECREF(py_code); Py_XDECREF(py_frame); } -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - #if PY_VERSION_HEX < 0x03030000 - PyObject *py_import; - py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); - if (!py_import) - goto bad; - #endif - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - { - #if PY_MAJOR_VERSION >= 3 - if (level == -1) { - if (strchr(__Pyx_MODULE_NAME, '.')) { - #if PY_VERSION_HEX < 0x03030000 - PyObject *py_level = PyInt_FromLong(1); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - #else - module = PyImport_ImportModuleLevelObject( - name, global_dict, empty_dict, list, 1); - #endif - if (!module) { - if (!PyErr_ExceptionMatches(PyExc_ImportError)) - goto bad; - PyErr_Clear(); - } - } - level = 0; +/* CIntFromPyVerify */ +#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) +#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) +#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ + {\ + func_type value = func_value;\ + if (sizeof(target_type) < sizeof(func_type)) {\ + if (unlikely(value != (func_type) (target_type) value)) {\ + func_type zero = 0;\ + if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ + return (target_type) -1;\ + if (is_unsigned && unlikely(value < zero))\ + goto raise_neg_overflow;\ + else\ + goto raise_overflow;\ + }\ + }\ + return (target_type) value;\ + } + +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { + const int neg_one = (int) ((int) 0 - (int) 1), const_zero = (int) 0; + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(int) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(int) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); +#endif } - #endif - if (!module) { - #if PY_VERSION_HEX < 0x03030000 - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - #else - module = PyImport_ImportModuleLevelObject( - name, global_dict, empty_dict, list, level); - #endif + } else { + if (sizeof(int) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif } } -bad: - #if PY_VERSION_HEX < 0x03030000 - Py_XDECREF(py_import); - #endif - Py_XDECREF(empty_list); - Py_XDECREF(empty_dict); - return module; + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(int), + little, !is_unsigned); + } } -#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value) \ - { \ - func_type value = func_value; \ - if (sizeof(target_type) < sizeof(func_type)) { \ - if (unlikely(value != (func_type) (target_type) value)) { \ - func_type zero = 0; \ - if (is_unsigned && unlikely(value < zero)) \ - goto raise_neg_overflow; \ - else \ - goto raise_overflow; \ - } \ - } \ - return (target_type) value; \ - } - -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 - #if CYTHON_USE_PYLONG_INTERNALS - #include "longintrepr.h" - #endif +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { + const long neg_one = (long) ((long) 0 - (long) 1), const_zero = (long) 0; + const int is_unsigned = neg_one > const_zero; + if (is_unsigned) { + if (sizeof(long) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(long) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif + } + } else { + if (sizeof(long) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(long), + little, !is_unsigned); + } +} +/* CIntFromPy */ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { - const int neg_one = (int) -1, const_zero = 0; + const int neg_one = (int) ((int) 0 - (int) 1), const_zero = (int) 0; const int is_unsigned = neg_one > const_zero; #if PY_MAJOR_VERSION < 3 if (likely(PyInt_Check(x))) { @@ -7238,36 +9064,129 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 - #if CYTHON_USE_PYLONG_INTERNALS +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; switch (Py_SIZE(x)) { - case 0: return 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, ((PyLongObject*)x)->ob_digit[0]); + case 0: return (int) 0; + case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) + case 2: + if (8 * sizeof(int) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + case 3: + if (8 * sizeof(int) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + case 4: + if (8 * sizeof(int) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; } - #endif #endif +#if CYTHON_COMPILING_IN_CPYTHON if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } +#endif if (sizeof(int) <= sizeof(unsigned long)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, PyLong_AsUnsignedLong(x)) - } else if (sizeof(int) <= sizeof(unsigned long long)) { - __PYX_VERIFY_RETURN_INT(int, unsigned long long, PyLong_AsUnsignedLongLong(x)) + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) +#endif } } else { -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 - #if CYTHON_USE_PYLONG_INTERNALS +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; switch (Py_SIZE(x)) { - case 0: return 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, +(((PyLongObject*)x)->ob_digit[0])); - case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, -(sdigit) ((PyLongObject*)x)->ob_digit[0]); + case 0: return (int) 0; + case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) + case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) + case -2: + if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 2: + if (8 * sizeof(int) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case -3: + if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 3: + if (8 * sizeof(int) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case -4: + if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 4: + if (8 * sizeof(int) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; } - #endif #endif if (sizeof(int) <= sizeof(long)) { - __PYX_VERIFY_RETURN_INT(int, long, PyLong_AsLong(x)) - } else if (sizeof(int) <= sizeof(long long)) { - __PYX_VERIFY_RETURN_INT(int, long long, PyLong_AsLongLong(x)) + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) +#endif } } { @@ -7276,7 +9195,7 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); #else int val; - PyObject *v = __Pyx_PyNumber_Int(x); + PyObject *v = __Pyx_PyNumber_IntOrLong(x); #if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; @@ -7299,7 +9218,7 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { } } else { int val; - PyObject *tmp = __Pyx_PyNumber_Int(x); + PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); if (!tmp) return (int) -1; val = __Pyx_PyInt_As_int(tmp); Py_DECREF(tmp); @@ -7315,60 +9234,9 @@ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { return (int) -1; } -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { - const int neg_one = (int) -1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(int) < sizeof(long)) { - return PyInt_FromLong((long) value); - } else if (sizeof(int) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); - } else if (sizeof(int) <= sizeof(unsigned long long)) { - return PyLong_FromUnsignedLongLong((unsigned long long) value); - } - } else { - if (sizeof(int) <= sizeof(long)) { - return PyInt_FromLong((long) value); - } else if (sizeof(int) <= sizeof(long long)) { - return PyLong_FromLongLong((long long) value); - } - } - { - int one = 1; int little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&value; - return _PyLong_FromByteArray(bytes, sizeof(int), - little, !is_unsigned); - } -} - -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { - const long neg_one = (long) -1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(long) < sizeof(long)) { - return PyInt_FromLong((long) value); - } else if (sizeof(long) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); - } else if (sizeof(long) <= sizeof(unsigned long long)) { - return PyLong_FromUnsignedLongLong((unsigned long long) value); - } - } else { - if (sizeof(long) <= sizeof(long)) { - return PyInt_FromLong((long) value); - } else if (sizeof(long) <= sizeof(long long)) { - return PyLong_FromLongLong((long long) value); - } - } - { - int one = 1; int little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&value; - return _PyLong_FromByteArray(bytes, sizeof(long), - little, !is_unsigned); - } -} - +/* CIntFromPy */ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { - const long neg_one = (long) -1, const_zero = 0; + const long neg_one = (long) ((long) 0 - (long) 1), const_zero = (long) 0; const int is_unsigned = neg_one > const_zero; #if PY_MAJOR_VERSION < 3 if (likely(PyInt_Check(x))) { @@ -7385,36 +9253,129 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 - #if CYTHON_USE_PYLONG_INTERNALS +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; switch (Py_SIZE(x)) { - case 0: return 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, ((PyLongObject*)x)->ob_digit[0]); + case 0: return (long) 0; + case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) + case 2: + if (8 * sizeof(long) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + case 3: + if (8 * sizeof(long) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + case 4: + if (8 * sizeof(long) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; } - #endif #endif +#if CYTHON_COMPILING_IN_CPYTHON if (unlikely(Py_SIZE(x) < 0)) { goto raise_neg_overflow; } +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } +#endif if (sizeof(long) <= sizeof(unsigned long)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, PyLong_AsUnsignedLong(x)) - } else if (sizeof(long) <= sizeof(unsigned long long)) { - __PYX_VERIFY_RETURN_INT(long, unsigned long long, PyLong_AsUnsignedLongLong(x)) + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) +#endif } } else { -#if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 - #if CYTHON_USE_PYLONG_INTERNALS +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; switch (Py_SIZE(x)) { - case 0: return 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, +(((PyLongObject*)x)->ob_digit[0])); - case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, -(sdigit) ((PyLongObject*)x)->ob_digit[0]); + case 0: return (long) 0; + case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) + case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) + case -2: + if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 2: + if (8 * sizeof(long) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case -3: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 3: + if (8 * sizeof(long) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case -4: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 4: + if (8 * sizeof(long) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; } - #endif #endif if (sizeof(long) <= sizeof(long)) { - __PYX_VERIFY_RETURN_INT(long, long, PyLong_AsLong(x)) - } else if (sizeof(long) <= sizeof(long long)) { - __PYX_VERIFY_RETURN_INT(long, long long, PyLong_AsLongLong(x)) + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) +#endif } } { @@ -7423,7 +9384,7 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); #else long val; - PyObject *v = __Pyx_PyNumber_Int(x); + PyObject *v = __Pyx_PyNumber_IntOrLong(x); #if PY_MAJOR_VERSION < 3 if (likely(v) && !PyLong_Check(v)) { PyObject *tmp = v; @@ -7446,7 +9407,7 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { } } else { long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); + PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); if (!tmp) return (long) -1; val = __Pyx_PyInt_As_long(tmp); Py_DECREF(tmp); @@ -7462,6 +9423,107 @@ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { return (long) -1; } +/* FastTypeChecks */ +#if CYTHON_COMPILING_IN_CPYTHON +static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) { + while (a) { + a = a->tp_base; + if (a == b) + return 1; + } + return b == &PyBaseObject_Type; +} +static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) { + PyObject *mro; + if (a == b) return 1; + mro = a->tp_mro; + if (likely(mro)) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(mro); + for (i = 0; i < n; i++) { + if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) + return 1; + } + return 0; + } + return __Pyx_InBases(a, b); +} +#if PY_MAJOR_VERSION == 2 +static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { + PyObject *exception, *value, *tb; + int res; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&exception, &value, &tb); + res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; + if (unlikely(res == -1)) { + PyErr_WriteUnraisable(err); + res = 0; + } + if (!res) { + res = PyObject_IsSubclass(err, exc_type2); + if (unlikely(res == -1)) { + PyErr_WriteUnraisable(err); + res = 0; + } + } + __Pyx_ErrRestore(exception, value, tb); + return res; +} +#else +static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { + int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0; + if (!res) { + res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); + } + return res; +} +#endif +static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { + Py_ssize_t i, n; + assert(PyExceptionClass_Check(exc_type)); + n = PyTuple_GET_SIZE(tuple); +#if PY_MAJOR_VERSION >= 3 + for (i=0; ip) { #if PY_MAJOR_VERSION < 3 @@ -7502,6 +9565,8 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { #endif if (!*t->p) return -1; + if (PyObject_Hash(*t->p) == -1) + return -1; ++t; } return 0; @@ -7510,53 +9575,60 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); } -static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) { +static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { Py_ssize_t ignore; return __Pyx_PyObject_AsStringAndSize(o, &ignore); } -static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT - if ( -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - __Pyx_sys_getdefaultencoding_not_ascii && -#endif - PyUnicode_Check(o)) { -#if PY_VERSION_HEX < 0x03030000 - char* defenc_c; - PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); - if (!defenc) return NULL; - defenc_c = PyBytes_AS_STRING(defenc); +#if !CYTHON_PEP393_ENABLED +static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + char* defenc_c; + PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); + if (!defenc) return NULL; + defenc_c = PyBytes_AS_STRING(defenc); #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - { - char* end = defenc_c + PyBytes_GET_SIZE(defenc); - char* c; - for (c = defenc_c; c < end; c++) { - if ((unsigned char) (*c) >= 128) { - PyUnicode_AsASCIIString(o); - return NULL; - } + { + char* end = defenc_c + PyBytes_GET_SIZE(defenc); + char* c; + for (c = defenc_c; c < end; c++) { + if ((unsigned char) (*c) >= 128) { + PyUnicode_AsASCIIString(o); + return NULL; } } + } #endif - *length = PyBytes_GET_SIZE(defenc); - return defenc_c; + *length = PyBytes_GET_SIZE(defenc); + return defenc_c; +} #else - if (__Pyx_PyUnicode_READY(o) == -1) return NULL; +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - if (PyUnicode_IS_ASCII(o)) { - *length = PyUnicode_GET_LENGTH(o); - return PyUnicode_AsUTF8(o); - } else { - PyUnicode_AsASCIIString(o); - return NULL; - } + if (likely(PyUnicode_IS_ASCII(o))) { + *length = PyUnicode_GET_LENGTH(o); + return PyUnicode_AsUTF8(o); + } else { + PyUnicode_AsASCIIString(o); + return NULL; + } #else - return PyUnicode_AsUTF8AndSize(o, length); + return PyUnicode_AsUTF8AndSize(o, length); +#endif +} +#endif #endif +static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT + if ( +#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + __Pyx_sys_getdefaultencoding_not_ascii && #endif + PyUnicode_Check(o)) { + return __Pyx_PyUnicode_AsStringAndSize(o, length); } else #endif -#if !CYTHON_COMPILING_IN_PYPY +#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) if (PyByteArray_Check(o)) { *length = PyByteArray_GET_SIZE(o); return PyByteArray_AS_STRING(o); @@ -7577,43 +9649,74 @@ static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { if (is_true | (x == Py_False) | (x == Py_None)) return is_true; else return PyObject_IsTrue(x); } -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { +static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { + int retval; + if (unlikely(!x)) return -1; + retval = __Pyx_PyObject_IsTrue(x); + Py_DECREF(x); + return retval; +} +static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { +#if PY_MAJOR_VERSION >= 3 + if (PyLong_Check(result)) { + if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, + "__int__ returned non-int (type %.200s). " + "The ability to return an instance of a strict subclass of int " + "is deprecated, and may be removed in a future version of Python.", + Py_TYPE(result)->tp_name)) { + Py_DECREF(result); + return NULL; + } + return result; + } +#endif + PyErr_Format(PyExc_TypeError, + "__%.4s__ returned non-%.4s (type %.200s)", + type_name, type_name, Py_TYPE(result)->tp_name); + Py_DECREF(result); + return NULL; +} +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +#if CYTHON_USE_TYPE_SLOTS PyNumberMethods *m; +#endif const char *name = NULL; PyObject *res = NULL; #if PY_MAJOR_VERSION < 3 - if (PyInt_Check(x) || PyLong_Check(x)) + if (likely(PyInt_Check(x) || PyLong_Check(x))) #else - if (PyLong_Check(x)) + if (likely(PyLong_Check(x))) #endif - return Py_INCREF(x), x; + return __Pyx_NewRef(x); +#if CYTHON_USE_TYPE_SLOTS m = Py_TYPE(x)->tp_as_number; -#if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 if (m && m->nb_int) { name = "int"; - res = PyNumber_Int(x); + res = m->nb_int(x); } else if (m && m->nb_long) { name = "long"; - res = PyNumber_Long(x); + res = m->nb_long(x); } -#else - if (m && m->nb_int) { + #else + if (likely(m && m->nb_int)) { name = "int"; - res = PyNumber_Long(x); + res = m->nb_int(x); + } + #endif +#else + if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { + res = PyNumber_Int(x); } #endif - if (res) { + if (likely(res)) { #if PY_MAJOR_VERSION < 3 - if (!PyInt_Check(res) && !PyLong_Check(res)) { + if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { #else - if (!PyLong_Check(res)) { + if (unlikely(!PyLong_CheckExact(res))) { #endif - PyErr_Format(PyExc_TypeError, - "__%.4s__ returned non-%.4s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; + return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); } } else if (!PyErr_Occurred()) { @@ -7626,18 +9729,55 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; PyObject *x; #if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(b))) - return PyInt_AS_LONG(b); + if (likely(PyInt_CheckExact(b))) { + if (sizeof(Py_ssize_t) >= sizeof(long)) + return PyInt_AS_LONG(b); + else + return PyInt_AsSsize_t(b); + } #endif if (likely(PyLong_CheckExact(b))) { - #if CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3 - #if CYTHON_USE_PYLONG_INTERNALS - switch (Py_SIZE(b)) { - case -1: return -(sdigit)((PyLongObject*)b)->ob_digit[0]; - case 0: return 0; - case 1: return ((PyLongObject*)b)->ob_digit[0]; - } - #endif + #if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)b)->ob_digit; + const Py_ssize_t size = Py_SIZE(b); + if (likely(__Pyx_sst_abs(size) <= 1)) { + ival = likely(size) ? digits[0] : 0; + if (size == -1) ival = -ival; + return ival; + } else { + switch (size) { + case 2: + if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { + return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -2: + if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case 3: + if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { + return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -3: + if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case 4: + if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { + return (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])); + } + break; + case -4: + if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { + return -(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])); + } + break; + } + } #endif return PyLong_AsSsize_t(b); } @@ -7647,6 +9787,9 @@ static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_DECREF(x); return ival; } +static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { + return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); +} static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { return PyInt_FromSize_t(ival); } diff --git a/src/tpm.c b/src/tpm.c index 7b3e6e0..1109be4 100644 --- a/src/tpm.c +++ b/src/tpm.c @@ -1,16 +1,19 @@ -/* Generated by Cython 0.14.1 on Thu Aug 18 11:39:10 2011 */ +/* Generated by Cython 0.29.21 */ #define PY_SSIZE_T_CLEAN #include "Python.h" #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. +#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) + #error Cython requires Python 2.6+ or Python 3.3+. #else - -#include /* For offsetof */ +#define CYTHON_ABI "0_29_21" +#define CYTHON_HEX_VERSION 0x001D15F0 +#define CYTHON_FUTURE_DIVISION 0 +#include #ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) + #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) #endif - #if !defined(WIN32) && !defined(MS_WINDOWS) #ifndef __stdcall #define __stdcall @@ -22,122 +25,495 @@ #define __fastcall #endif #endif - #ifndef DL_IMPORT #define DL_IMPORT(t) t #endif #ifndef DL_EXPORT #define DL_EXPORT(t) t #endif - +#define __PYX_COMMA , +#ifndef HAVE_LONG_LONG + #if PY_VERSION_HEX >= 0x02070000 + #define HAVE_LONG_LONG + #endif +#endif #ifndef PY_LONG_LONG #define PY_LONG_LONG LONG_LONG #endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) +#ifndef Py_HUGE_VAL + #define Py_HUGE_VAL HUGE_VAL #endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) PyInt_AsLong(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) +#ifdef PYPY_VERSION + #define CYTHON_COMPILING_IN_PYPY 1 + #define CYTHON_COMPILING_IN_PYSTON 0 + #define CYTHON_COMPILING_IN_CPYTHON 0 + #undef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 0 + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #if PY_VERSION_HEX < 0x03050000 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #elif !defined(CYTHON_USE_ASYNC_SLOTS) + #define CYTHON_USE_ASYNC_SLOTS 1 + #endif + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #undef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 0 + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #undef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 1 + #undef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 0 + #undef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 0 + #undef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 0 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #undef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_DICT_VERSIONS + #define CYTHON_USE_DICT_VERSIONS 0 + #undef CYTHON_USE_EXC_INFO_STACK + #define CYTHON_USE_EXC_INFO_STACK 0 +#elif defined(PYSTON_VERSION) + #define CYTHON_COMPILING_IN_PYPY 0 + #define CYTHON_COMPILING_IN_PYSTON 1 + #define CYTHON_COMPILING_IN_CPYTHON 0 + #ifndef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #endif + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #undef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 0 + #ifndef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 1 + #endif + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #ifndef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 0 + #endif + #ifndef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 1 + #endif + #ifndef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 1 + #endif + #undef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 0 + #undef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 0 + #undef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT 0 + #undef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE 0 + #undef CYTHON_USE_DICT_VERSIONS + #define CYTHON_USE_DICT_VERSIONS 0 + #undef CYTHON_USE_EXC_INFO_STACK + #define CYTHON_USE_EXC_INFO_STACK 0 +#else + #define CYTHON_COMPILING_IN_PYPY 0 + #define CYTHON_COMPILING_IN_PYSTON 0 + #define CYTHON_COMPILING_IN_CPYTHON 1 + #ifndef CYTHON_USE_TYPE_SLOTS + #define CYTHON_USE_TYPE_SLOTS 1 + #endif + #if PY_VERSION_HEX < 0x02070000 + #undef CYTHON_USE_PYTYPE_LOOKUP + #define CYTHON_USE_PYTYPE_LOOKUP 0 + #elif !defined(CYTHON_USE_PYTYPE_LOOKUP) + #define CYTHON_USE_PYTYPE_LOOKUP 1 + #endif + #if PY_MAJOR_VERSION < 3 + #undef CYTHON_USE_ASYNC_SLOTS + #define CYTHON_USE_ASYNC_SLOTS 0 + #elif !defined(CYTHON_USE_ASYNC_SLOTS) + #define CYTHON_USE_ASYNC_SLOTS 1 + #endif + #if PY_VERSION_HEX < 0x02070000 + #undef CYTHON_USE_PYLONG_INTERNALS + #define CYTHON_USE_PYLONG_INTERNALS 0 + #elif !defined(CYTHON_USE_PYLONG_INTERNALS) + #define CYTHON_USE_PYLONG_INTERNALS 1 + #endif + #ifndef CYTHON_USE_PYLIST_INTERNALS + #define CYTHON_USE_PYLIST_INTERNALS 1 + #endif + #ifndef CYTHON_USE_UNICODE_INTERNALS + #define CYTHON_USE_UNICODE_INTERNALS 1 + #endif + #if PY_VERSION_HEX < 0x030300F0 + #undef CYTHON_USE_UNICODE_WRITER + #define CYTHON_USE_UNICODE_WRITER 0 + #elif !defined(CYTHON_USE_UNICODE_WRITER) + #define CYTHON_USE_UNICODE_WRITER 1 + #endif + #ifndef CYTHON_AVOID_BORROWED_REFS + #define CYTHON_AVOID_BORROWED_REFS 0 + #endif + #ifndef CYTHON_ASSUME_SAFE_MACROS + #define CYTHON_ASSUME_SAFE_MACROS 1 + #endif + #ifndef CYTHON_UNPACK_METHODS + #define CYTHON_UNPACK_METHODS 1 + #endif + #ifndef CYTHON_FAST_THREAD_STATE + #define CYTHON_FAST_THREAD_STATE 1 + #endif + #ifndef CYTHON_FAST_PYCALL + #define CYTHON_FAST_PYCALL 1 + #endif + #ifndef CYTHON_PEP489_MULTI_PHASE_INIT + #define CYTHON_PEP489_MULTI_PHASE_INIT (PY_VERSION_HEX >= 0x03050000) + #endif + #ifndef CYTHON_USE_TP_FINALIZE + #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1) + #endif + #ifndef CYTHON_USE_DICT_VERSIONS + #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX >= 0x030600B1) + #endif + #ifndef CYTHON_USE_EXC_INFO_STACK + #define CYTHON_USE_EXC_INFO_STACK (PY_VERSION_HEX >= 0x030700A3) + #endif +#endif +#if !defined(CYTHON_FAST_PYCCALL) +#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) +#endif +#if CYTHON_USE_PYLONG_INTERNALS + #include "longintrepr.h" + #undef SHIFT + #undef BASE + #undef MASK + #ifdef SIZEOF_VOID_P + enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; + #endif +#endif +#ifndef __has_attribute + #define __has_attribute(x) 0 +#endif +#ifndef __has_cpp_attribute + #define __has_cpp_attribute(x) 0 +#endif +#ifndef CYTHON_RESTRICT + #if defined(__GNUC__) + #define CYTHON_RESTRICT __restrict__ + #elif defined(_MSC_VER) && _MSC_VER >= 1400 + #define CYTHON_RESTRICT __restrict + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define CYTHON_RESTRICT restrict + #else + #define CYTHON_RESTRICT + #endif +#endif +#ifndef CYTHON_UNUSED +# if defined(__GNUC__) +# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +# define CYTHON_UNUSED __attribute__ ((__unused__)) +# else +# define CYTHON_UNUSED +# endif +# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER)) +# define CYTHON_UNUSED __attribute__ ((__unused__)) +# else +# define CYTHON_UNUSED +# endif +#endif +#ifndef CYTHON_MAYBE_UNUSED_VAR +# if defined(__cplusplus) + template void CYTHON_MAYBE_UNUSED_VAR( const T& ) { } +# else +# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x) +# endif +#endif +#ifndef CYTHON_NCP_UNUSED +# if CYTHON_COMPILING_IN_CPYTHON +# define CYTHON_NCP_UNUSED +# else +# define CYTHON_NCP_UNUSED CYTHON_UNUSED +# endif +#endif +#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) +#ifdef _MSC_VER + #ifndef _MSC_STDINT_H_ + #if _MSC_VER < 1300 + typedef unsigned char uint8_t; + typedef unsigned int uint32_t; + #else + typedef unsigned __int8 uint8_t; + typedef unsigned __int32 uint32_t; + #endif + #endif +#else + #include +#endif +#ifndef CYTHON_FALLTHROUGH + #if defined(__cplusplus) && __cplusplus >= 201103L + #if __has_cpp_attribute(fallthrough) + #define CYTHON_FALLTHROUGH [[fallthrough]] + #elif __has_cpp_attribute(clang::fallthrough) + #define CYTHON_FALLTHROUGH [[clang::fallthrough]] + #elif __has_cpp_attribute(gnu::fallthrough) + #define CYTHON_FALLTHROUGH [[gnu::fallthrough]] + #endif + #endif + #ifndef CYTHON_FALLTHROUGH + #if __has_attribute(fallthrough) + #define CYTHON_FALLTHROUGH __attribute__((fallthrough)) + #else + #define CYTHON_FALLTHROUGH + #endif + #endif + #if defined(__clang__ ) && defined(__apple_build_version__) + #if __apple_build_version__ < 7000000 + #undef CYTHON_FALLTHROUGH + #define CYTHON_FALLTHROUGH + #endif + #endif #endif -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - +#ifndef CYTHON_INLINE + #if defined(__clang__) + #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) + #elif defined(__GNUC__) + #define CYTHON_INLINE __inline__ + #elif defined(_MSC_VER) + #define CYTHON_INLINE __inline + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define CYTHON_INLINE inline + #else + #define CYTHON_INLINE + #endif #endif +#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) + #define Py_OptimizeFlag 0 +#endif +#define __PYX_BUILD_PY_SSIZE_T "n" +#define CYTHON_FORMAT_SSIZE_T "z" #if PY_MAJOR_VERSION < 3 #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) + #define __Pyx_DefaultClassType PyClass_Type #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" +#if PY_VERSION_HEX >= 0x030800A4 && PY_VERSION_HEX < 0x030800B2 + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) +#else + #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ + PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) #endif - -#if PY_MAJOR_VERSION >= 3 + #define __Pyx_DefaultClassType PyType_Type +#endif +#ifndef Py_TPFLAGS_CHECKTYPES #define Py_TPFLAGS_CHECKTYPES 0 +#endif +#ifndef Py_TPFLAGS_HAVE_INDEX #define Py_TPFLAGS_HAVE_INDEX 0 #endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) +#ifndef Py_TPFLAGS_HAVE_NEWBUFFER #define Py_TPFLAGS_HAVE_NEWBUFFER 0 #endif - +#ifndef Py_TPFLAGS_HAVE_FINALIZE + #define Py_TPFLAGS_HAVE_FINALIZE 0 +#endif +#ifndef METH_STACKLESS + #define METH_STACKLESS 0 +#endif +#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) + #ifndef METH_FASTCALL + #define METH_FASTCALL 0x80 + #endif + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs); + typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, + Py_ssize_t nargs, PyObject *kwnames); +#else + #define __Pyx_PyCFunctionFast _PyCFunctionFast + #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords +#endif +#if CYTHON_FAST_PYCCALL +#define __Pyx_PyFastCFunction_Check(func)\ + ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS))))) +#else +#define __Pyx_PyFastCFunction_Check(func) 0 +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc) + #define PyObject_Malloc(s) PyMem_Malloc(s) + #define PyObject_Free(p) PyMem_Free(p) + #define PyObject_Realloc(p) PyMem_Realloc(p) +#endif +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030400A1 + #define PyMem_RawMalloc(n) PyMem_Malloc(n) + #define PyMem_RawRealloc(p, n) PyMem_Realloc(p, n) + #define PyMem_RawFree(p) PyMem_Free(p) +#endif +#if CYTHON_COMPILING_IN_PYSTON + #define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno) +#else + #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) + #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) +#endif +#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000 + #define __Pyx_PyThreadState_Current PyThreadState_GET() +#elif PY_VERSION_HEX >= 0x03060000 + #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() +#elif PY_VERSION_HEX >= 0x03000000 + #define __Pyx_PyThreadState_Current PyThreadState_GET() +#else + #define __Pyx_PyThreadState_Current _PyThreadState_Current +#endif +#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) +#include "pythread.h" +#define Py_tss_NEEDS_INIT 0 +typedef int Py_tss_t; +static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { + *key = PyThread_create_key(); + return 0; +} +static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { + Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); + *key = Py_tss_NEEDS_INIT; + return key; +} +static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { + PyObject_Free(key); +} +static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { + return *key != Py_tss_NEEDS_INIT; +} +static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { + PyThread_delete_key(*key); + *key = Py_tss_NEEDS_INIT; +} +static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { + return PyThread_set_key_value(*key, value); +} +static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { + return PyThread_get_key_value(*key); +} +#endif +#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) +#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) +#else +#define __Pyx_PyDict_NewPresized(n) PyDict_New() +#endif +#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION + #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) + #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) +#else + #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) + #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) +#endif +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS +#define __Pyx_PyDict_GetItemStr(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) +#else +#define __Pyx_PyDict_GetItemStr(dict, name) PyDict_GetItem(dict, name) +#endif +#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) + #define CYTHON_PEP393_ENABLED 1 + #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ + 0 : _PyUnicode_Ready((PyObject *)(op))) + #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) + #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) + #define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u) + #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) + #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) + #if defined(PyUnicode_IS_READY) && defined(PyUnicode_GET_SIZE) + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) + #else + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) + #endif +#else + #define CYTHON_PEP393_ENABLED 0 + #define PyUnicode_1BYTE_KIND 1 + #define PyUnicode_2BYTE_KIND 2 + #define PyUnicode_4BYTE_KIND 4 + #define __Pyx_PyUnicode_READY(op) (0) + #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) + #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) + #define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE)) + #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) + #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) + #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) + #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) +#endif +#if CYTHON_COMPILING_IN_PYPY + #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) + #define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b) +#else + #define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b) + #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\ + PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b)) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains) + #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check) + #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type) +#endif +#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format) + #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) +#endif +#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) +#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) +#if PY_MAJOR_VERSION >= 3 + #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) +#else + #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) +#endif +#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) + #define PyObject_ASCII(o) PyObject_Repr(o) +#endif #if PY_MAJOR_VERSION >= 3 #define PyBaseString_Type PyUnicode_Type #define PyStringObject PyUnicodeObject #define PyString_Type PyUnicode_Type #define PyString_Check PyUnicode_Check #define PyString_CheckExact PyUnicode_CheckExact +#ifndef PyObject_Unicode + #define PyObject_Unicode PyObject_Str #endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel #endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) +#if PY_MAJOR_VERSION >= 3 + #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) + #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) +#else + #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) + #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) #endif #ifndef PySet_CheckExact #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) #endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - +#if PY_VERSION_HEX >= 0x030900A4 + #define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt) + #define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size) +#else + #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) + #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) +#endif +#if CYTHON_ASSUME_SAFE_MACROS + #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) +#else + #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) +#endif #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject #define PyInt_Type PyLong_Type @@ -153,148 +529,287 @@ #define PyInt_AsSsize_t PyLong_AsSsize_t #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask + #define PyNumber_Int PyNumber_Long #endif - #if PY_MAJOR_VERSION >= 3 #define PyBoolObject PyLongObject #endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) +#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY + #ifndef PyUnicode_InternFromString + #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) + #endif #endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) +#if PY_VERSION_HEX < 0x030200A4 + typedef long Py_hash_t; + #define __Pyx_PyInt_FromHash_t PyInt_FromLong + #define __Pyx_PyInt_AsHash_t PyInt_AsLong #else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) + #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t + #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t #endif - #if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) + #define __Pyx_PyMethod_New(func, self, klass) ((self) ? ((void)(klass), PyMethod_New(func, self)) : __Pyx_NewRef(func)) +#else + #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass) #endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) +#if CYTHON_USE_ASYNC_SLOTS + #if PY_VERSION_HEX >= 0x030500B1 + #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods + #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) + #else + #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) + #endif #else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) + #define __Pyx_PyType_AsAsync(obj) NULL +#endif +#ifndef __Pyx_PyAsyncMethodsStruct + typedef struct { + unaryfunc am_await; + unaryfunc am_aiter; + unaryfunc am_anext; + } __Pyx_PyAsyncMethodsStruct; #endif -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) +#if defined(WIN32) || defined(MS_WINDOWS) + #define _USE_MATH_DEFINES +#endif +#include +#ifdef NAN +#define __PYX_NAN() ((float) NAN) #else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) +static CYTHON_INLINE float __PYX_NAN() { + float value; + memset(&value, 0xFF, sizeof(value)); + return value; +} #endif - -#ifdef __cplusplus -#define __PYX_EXTERN_C extern "C" +#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) +#define __Pyx_truncl trunc #else -#define __PYX_EXTERN_C extern +#define __Pyx_truncl truncl #endif -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES +#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; } +#define __PYX_ERR(f_index, lineno, Ln_error) \ + { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } + +#ifndef __PYX_EXTERN_C + #ifdef __cplusplus + #define __PYX_EXTERN_C extern "C" + #else + #define __PYX_EXTERN_C extern + #endif #endif -#include -#define __PYX_HAVE_API__pytpm__tpm + +#define __PYX_HAVE__tpm +#define __PYX_HAVE_API__tpm +/* Early includes */ #include "tpm/times.h" #include "tpm/vec.h" #include "tpm/tpm.h" #include "tpm/astro.h" +#ifdef _OPENMP +#include +#endif /* _OPENMP */ -#ifdef PYREX_WITHOUT_ASSERTIONS +#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS) #define CYTHON_WITHOUT_ASSERTIONS #endif - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; + +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 +#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) +#define __PYX_DEFAULT_STRING_ENCODING "" +#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize +#define __Pyx_uchar_cast(c) ((unsigned char)c) +#define __Pyx_long_cast(x) ((long)x) +#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\ + (sizeof(type) < sizeof(Py_ssize_t)) ||\ + (sizeof(type) > sizeof(Py_ssize_t) &&\ + likely(v < (type)PY_SSIZE_T_MAX ||\ + v == (type)PY_SSIZE_T_MAX) &&\ + (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\ + v == (type)PY_SSIZE_T_MIN))) ||\ + (sizeof(type) == sizeof(Py_ssize_t) &&\ + (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\ + v == (type)PY_SSIZE_T_MAX))) ) +static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { + return (size_t) i < (size_t) limit; +} +#if defined (__cplusplus) && __cplusplus >= 201103L + #include + #define __Pyx_sst_abs(value) std::abs(value) +#elif SIZEOF_INT >= SIZEOF_SIZE_T + #define __Pyx_sst_abs(value) abs(value) +#elif SIZEOF_LONG >= SIZEOF_SIZE_T + #define __Pyx_sst_abs(value) labs(value) +#elif defined (_MSC_VER) + #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value)) +#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + #define __Pyx_sst_abs(value) llabs(value) +#elif defined (__GNUC__) + #define __Pyx_sst_abs(value) __builtin_llabs(value) +#else + #define __Pyx_sst_abs(value) ((value<0) ? -value : value) #endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif +static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); +static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); +#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) +#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) +#define __Pyx_PyBytes_FromString PyBytes_FromString +#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); +#if PY_MAJOR_VERSION < 3 + #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize +#else + #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize #endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) +#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) +#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s)) +#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) +#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) +#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) +#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) +#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) { + const Py_UNICODE *u_end = u; + while (*u_end++) ; + return (size_t)(u_end - u - 1); +} +#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) +#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode +#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode +#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) +#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) +static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - +static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); +#define __Pyx_PySequence_Tuple(obj)\ + (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - +#if CYTHON_ASSUME_SAFE_MACROS #define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) +#else +#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) +#endif +#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) +#if PY_MAJOR_VERSION >= 3 +#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) +#else +#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) +#endif +#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x)) +#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII +static int __Pyx_sys_getdefaultencoding_not_ascii; +static int __Pyx_init_sys_getdefaultencoding_params(void) { + PyObject* sys; + PyObject* default_encoding = NULL; + PyObject* ascii_chars_u = NULL; + PyObject* ascii_chars_b = NULL; + const char* default_encoding_c; + sys = PyImport_ImportModule("sys"); + if (!sys) goto bad; + default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); + Py_DECREF(sys); + if (!default_encoding) goto bad; + default_encoding_c = PyBytes_AsString(default_encoding); + if (!default_encoding_c) goto bad; + if (strcmp(default_encoding_c, "ascii") == 0) { + __Pyx_sys_getdefaultencoding_not_ascii = 0; + } else { + char ascii_chars[128]; + int c; + for (c = 0; c < 128; c++) { + ascii_chars[c] = c; + } + __Pyx_sys_getdefaultencoding_not_ascii = 1; + ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); + if (!ascii_chars_u) goto bad; + ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); + if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { + PyErr_Format( + PyExc_ValueError, + "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", + default_encoding_c); + goto bad; + } + Py_DECREF(ascii_chars_u); + Py_DECREF(ascii_chars_b); + } + Py_DECREF(default_encoding); + return 0; +bad: + Py_XDECREF(default_encoding); + Py_XDECREF(ascii_chars_u); + Py_XDECREF(ascii_chars_b); + return -1; +} +#endif +#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 +#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) +#else +#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) +#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +static char* __PYX_DEFAULT_STRING_ENCODING; +static int __Pyx_init_sys_getdefaultencoding_params(void) { + PyObject* sys; + PyObject* default_encoding = NULL; + char* default_encoding_c; + sys = PyImport_ImportModule("sys"); + if (!sys) goto bad; + default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); + Py_DECREF(sys); + if (!default_encoding) goto bad; + default_encoding_c = PyBytes_AsString(default_encoding); + if (!default_encoding_c) goto bad; + __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); + if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; + strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); + Py_DECREF(default_encoding); + return 0; +bad: + Py_XDECREF(default_encoding); + return -1; +} +#endif +#endif -#ifdef __GNUC__ /* Test for GCC > 2.95 */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) -#define likely(x) __builtin_expect(!!(x), 1) -#define unlikely(x) __builtin_expect(!!(x), 0) -#else /* __GNUC__ > 2 ... */ -#define likely(x) (x) -#define unlikely(x) (x) -#endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ -#define likely(x) (x) -#define unlikely(x) (x) +#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))) + #define likely(x) __builtin_expect(!!(x), 1) + #define unlikely(x) __builtin_expect(!!(x), 0) +#else /* !__GNUC__ or GCC < 2.95 */ + #define likely(x) (x) + #define unlikely(x) (x) #endif /* __GNUC__ */ - -static PyObject *__pyx_m; +static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } + +static PyObject *__pyx_m = NULL; +static PyObject *__pyx_d; static PyObject *__pyx_b; +static PyObject *__pyx_cython_runtime = NULL; static PyObject *__pyx_empty_tuple; static PyObject *__pyx_empty_bytes; +static PyObject *__pyx_empty_unicode; static int __pyx_lineno; static int __pyx_clineno = 0; static const char * __pyx_cfilenm= __FILE__; @@ -302,215 +817,237 @@ static const char *__pyx_filename; static const char *__pyx_f[] = { - "tpm_times.pxi", - "tpm_vec.pxi", - "tpm_astro.pxi", - "tpm_tpm.pxi", - "tpm.pyx", + "src/tpm_times.pxi", + "src/tpm_vec.pxi", + "src/tpm_astro.pxi", + "stringsource", + "src/tpm_tpm.pxi", + "src/tpm.pyx", }; -/* Type declarations */ - -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":67 +/*--- Type declarations ---*/ +struct __pyx_obj_3tpm_DMS; +struct __pyx_obj_3tpm_HMS; +struct __pyx_obj_3tpm_YMD; +struct __pyx_obj_3tpm_JD; +struct __pyx_obj_3tpm_V3; +struct __pyx_obj_3tpm_V3CP; +struct __pyx_obj_3tpm_V3SP; +struct __pyx_obj_3tpm_V6; +struct __pyx_obj_3tpm_V6C; +struct __pyx_obj_3tpm_V6S; +struct __pyx_obj_3tpm_M3; +struct __pyx_obj_3tpm_M6; +struct __pyx_obj_3tpm_TSTATE; +struct __pyx_obj_3tpm_PVEC; +struct __pyx_t_3tpm_s_pvec; + +/* "src/tpm_astro.pxi":67 * # expression. Why? In C code I can do V6 pvec[N_TPM_STATES]. Maybe * # Cython can't determine if N_TPM_STATES is a constant or not? * cdef struct s_pvec: # <<<<<<<<<<<<<< * tpm_vec.V6 pvec[22] * ctypedef s_pvec S_PVEC */ - -struct __pyx_t_5pytpm_3tpm_s_pvec { +struct __pyx_t_3tpm_s_pvec { V6 pvec[22]; }; -typedef struct __pyx_t_5pytpm_3tpm_s_pvec __pyx_t_5pytpm_3tpm_S_PVEC; - -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":800 +/* "src/tpm_astro.pxi":69 + * cdef struct s_pvec: + * tpm_vec.V6 pvec[22] + * ctypedef s_pvec S_PVEC # <<<<<<<<<<<<<< * + * cdef class PVEC(object): + */ +typedef struct __pyx_t_3tpm_s_pvec __pyx_t_3tpm_S_PVEC; + +/* "src/tpm_times.pxi":20 + * SATURDAY = tpm_times.SATURDAY * - * cdef class M3(object): # <<<<<<<<<<<<<< - * """Class that wraps M3 structure, representing a matrix. + * cdef class DMS(object): # <<<<<<<<<<<<<< + * """Angle in degrees, arc-minutes and arc-seconds. * */ - -struct __pyx_obj_5pytpm_3tpm_M3 { +struct __pyx_obj_3tpm_DMS { PyObject_HEAD - struct __pyx_vtabstruct_5pytpm_3tpm_M3 *__pyx_vtab; - M3 _m3; + DMS _dms; }; -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":66 - * TPM_ALL = tpm_tpm.TPM_ALL + +/* "src/tpm_times.pxi":238 * - * cdef class TSTATE(object): # <<<<<<<<<<<<<< - * """Class corresponding to TPM TSTATE structure. + * + * cdef class HMS(object): # <<<<<<<<<<<<<< + * """Angle (or time) in hours, minutes and seconds. * */ - -struct __pyx_obj_5pytpm_3tpm_TSTATE { +struct __pyx_obj_3tpm_HMS { PyObject_HEAD - struct __pyx_vtabstruct_5pytpm_3tpm_TSTATE *__pyx_vtab; - TPM_TSTATE _tstate; + HMS _hms; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":11 - * POLAR = tpm_vec.POLAR - * - * cdef class V3(object): # <<<<<<<<<<<<<< - * """Class that wraps tpm_vec.V3; for use from Cython only.""" - * cdef tpm_vec.V3 _v3 - */ - -struct __pyx_obj_5pytpm_3tpm_V3 { - PyObject_HEAD - struct __pyx_vtabstruct_5pytpm_3tpm_V3 *__pyx_vtab; - V3 _v3; -}; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":204 +/* "src/tpm_times.pxi":436 * * - * cdef class V3SP(V3): # <<<<<<<<<<<<<< - * """A V3 spherical position vector. + * cdef class YMD(object): # <<<<<<<<<<<<<< + * """Class for representing data-time. * */ - -struct __pyx_obj_5pytpm_3tpm_V3SP { - struct __pyx_obj_5pytpm_3tpm_V3 __pyx_base; +struct __pyx_obj_3tpm_YMD { + PyObject_HEAD + YMD _ymd; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":366 + +/* "src/tpm_times.pxi":718 * * - * cdef class V6(object): # <<<<<<<<<<<<<< - * """Class that wraps tpm_vec.V6; for use from Cython only.""" - * cdef tpm_vec.V6 _v6 + * cdef class JD(object): # <<<<<<<<<<<<<< + * """Class for Julian dates, with hours, minutes and seconds. + * */ - -struct __pyx_obj_5pytpm_3tpm_V6 { +struct __pyx_obj_3tpm_JD { PyObject_HEAD - struct __pyx_vtabstruct_5pytpm_3tpm_V6 *__pyx_vtab; - V6 _v6; + JD _jd; }; -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":71 - * ctypedef s_pvec S_PVEC - * - * cdef class PVEC(object): # <<<<<<<<<<<<<< - * """Class for holding N_TPM_STATES element array of V6 vectors. + +/* "src/tpm_vec.pxi":11 + * POLAR = tpm_vec.POLAR * + * cdef class V3(object): # <<<<<<<<<<<<<< + * """Class that wraps tpm_vec.V3; for use from Cython only.""" + * cdef tpm_vec.V3 _v3 */ - -struct __pyx_obj_5pytpm_3tpm_PVEC { +struct __pyx_obj_3tpm_V3 { PyObject_HEAD - struct __pyx_vtabstruct_5pytpm_3tpm_PVEC *__pyx_vtab; - __pyx_t_5pytpm_3tpm_S_PVEC _pvec; + struct __pyx_vtabstruct_3tpm_V3 *__pyx_vtab; + V3 _v3; }; -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":718 + +/* "src/tpm_vec.pxi":58 * * - * cdef class JD(object): # <<<<<<<<<<<<<< - * """Class for Julian dates, with hours, minutes and seconds. + * cdef class V3CP(V3): # <<<<<<<<<<<<<< + * """A V3 Cartesian position vector. * */ - -struct __pyx_obj_5pytpm_3tpm_JD { - PyObject_HEAD - JD _jd; +struct __pyx_obj_3tpm_V3CP { + struct __pyx_obj_3tpm_V3 __pyx_base; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":457 + +/* "src/tpm_vec.pxi":204 * * - * cdef class V6C(V6): # <<<<<<<<<<<<<< - * """Class for Cartesian V6 vector. + * cdef class V3SP(V3): # <<<<<<<<<<<<<< + * """A V3 spherical position vector. * */ - -struct __pyx_obj_5pytpm_3tpm_V6C { - struct __pyx_obj_5pytpm_3tpm_V6 __pyx_base; +struct __pyx_obj_3tpm_V3SP { + struct __pyx_obj_3tpm_V3 __pyx_base; }; -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":238 - * + +/* "src/tpm_vec.pxi":366 * - * cdef class HMS(object): # <<<<<<<<<<<<<< - * """Angle (or time) in hours, minutes and seconds. * + * cdef class V6(object): # <<<<<<<<<<<<<< + * """Class that wraps tpm_vec.V6; for use from Cython only.""" + * cdef tpm_vec.V6 _v6 */ - -struct __pyx_obj_5pytpm_3tpm_HMS { +struct __pyx_obj_3tpm_V6 { PyObject_HEAD - HMS _hms; + struct __pyx_vtabstruct_3tpm_V6 *__pyx_vtab; + V6 _v6; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":58 + +/* "src/tpm_vec.pxi":457 * * - * cdef class V3CP(V3): # <<<<<<<<<<<<<< - * """A V3 Cartesian position vector. + * cdef class V6C(V6): # <<<<<<<<<<<<<< + * """Class for Cartesian V6 vector. * */ - -struct __pyx_obj_5pytpm_3tpm_V3CP { - struct __pyx_obj_5pytpm_3tpm_V3 __pyx_base; +struct __pyx_obj_3tpm_V6C { + struct __pyx_obj_3tpm_V6 __pyx_base; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":679 + +/* "src/tpm_vec.pxi":679 * * * cdef class V6S(V6): # <<<<<<<<<<<<<< * """Class for spherical V6 vector. * */ - -struct __pyx_obj_5pytpm_3tpm_V6S { - struct __pyx_obj_5pytpm_3tpm_V6 __pyx_base; +struct __pyx_obj_3tpm_V6S { + struct __pyx_obj_3tpm_V6 __pyx_base; }; -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":20 - * SATURDAY = tpm_times.SATURDAY + +/* "src/tpm_vec.pxi":800 * - * cdef class DMS(object): # <<<<<<<<<<<<<< - * """Angle in degrees, arc-minutes and arc-seconds. + * + * cdef class M3(object): # <<<<<<<<<<<<<< + * """Class that wraps M3 structure, representing a matrix. * */ - -struct __pyx_obj_5pytpm_3tpm_DMS { +struct __pyx_obj_3tpm_M3 { PyObject_HEAD - DMS _dms; + struct __pyx_vtabstruct_3tpm_M3 *__pyx_vtab; + M3 _m3; }; -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":436 + +/* "src/tpm_vec.pxi":1014 * * - * cdef class YMD(object): # <<<<<<<<<<<<<< - * """Class for representing data-time. + * cdef class M6(object): # <<<<<<<<<<<<<< + * """Class that wraps M6 structure. * */ - -struct __pyx_obj_5pytpm_3tpm_YMD { +struct __pyx_obj_3tpm_M6 { PyObject_HEAD - YMD _ymd; + struct __pyx_vtabstruct_3tpm_M6 *__pyx_vtab; + M6 _m6; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1014 - * + +/* "src/tpm_tpm.pxi":66 + * TPM_ALL = tpm_tpm.TPM_ALL * - * cdef class M6(object): # <<<<<<<<<<<<<< - * """Class that wraps M6 structure. + * cdef class TSTATE(object): # <<<<<<<<<<<<<< + * """Class corresponding to TPM TSTATE structure. * */ +struct __pyx_obj_3tpm_TSTATE { + PyObject_HEAD + struct __pyx_vtabstruct_3tpm_TSTATE *__pyx_vtab; + TPM_TSTATE _tstate; +}; -struct __pyx_obj_5pytpm_3tpm_M6 { + +/* "src/tpm_astro.pxi":71 + * ctypedef s_pvec S_PVEC + * + * cdef class PVEC(object): # <<<<<<<<<<<<<< + * """Class for holding N_TPM_STATES element array of V6 vectors. + * + */ +struct __pyx_obj_3tpm_PVEC { PyObject_HEAD - struct __pyx_vtabstruct_5pytpm_3tpm_M6 *__pyx_vtab; - M6 _m6; + struct __pyx_vtabstruct_3tpm_PVEC *__pyx_vtab; + __pyx_t_3tpm_S_PVEC _pvec; }; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":11 + +/* "src/tpm_vec.pxi":11 * POLAR = tpm_vec.POLAR * * cdef class V3(object): # <<<<<<<<<<<<<< @@ -518,85 +1055,83 @@ struct __pyx_obj_5pytpm_3tpm_M6 { * cdef tpm_vec.V3 _v3 */ -struct __pyx_vtabstruct_5pytpm_3tpm_V3 { - int (*getType)(struct __pyx_obj_5pytpm_3tpm_V3 *); - PyObject *(*setType)(struct __pyx_obj_5pytpm_3tpm_V3 *, int); - PyObject *(*setX)(struct __pyx_obj_5pytpm_3tpm_V3 *, double); - PyObject *(*setY)(struct __pyx_obj_5pytpm_3tpm_V3 *, double); - PyObject *(*setZ)(struct __pyx_obj_5pytpm_3tpm_V3 *, double); - double (*getX)(struct __pyx_obj_5pytpm_3tpm_V3 *); - double (*getY)(struct __pyx_obj_5pytpm_3tpm_V3 *); - double (*getZ)(struct __pyx_obj_5pytpm_3tpm_V3 *); - V3 (*getV3)(struct __pyx_obj_5pytpm_3tpm_V3 *); - PyObject *(*setV3)(struct __pyx_obj_5pytpm_3tpm_V3 *, V3); +struct __pyx_vtabstruct_3tpm_V3 { + int (*getType)(struct __pyx_obj_3tpm_V3 *); + PyObject *(*setType)(struct __pyx_obj_3tpm_V3 *, int); + PyObject *(*setX)(struct __pyx_obj_3tpm_V3 *, double); + PyObject *(*setY)(struct __pyx_obj_3tpm_V3 *, double); + PyObject *(*setZ)(struct __pyx_obj_3tpm_V3 *, double); + double (*getX)(struct __pyx_obj_3tpm_V3 *); + double (*getY)(struct __pyx_obj_3tpm_V3 *); + double (*getZ)(struct __pyx_obj_3tpm_V3 *); + V3 (*getV3)(struct __pyx_obj_3tpm_V3 *); + PyObject *(*setV3)(struct __pyx_obj_3tpm_V3 *, V3); }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V3 *__pyx_vtabptr_5pytpm_3tpm_V3; +static struct __pyx_vtabstruct_3tpm_V3 *__pyx_vtabptr_3tpm_V3; -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":71 - * ctypedef s_pvec S_PVEC +/* "src/tpm_vec.pxi":58 * - * cdef class PVEC(object): # <<<<<<<<<<<<<< - * """Class for holding N_TPM_STATES element array of V6 vectors. + * + * cdef class V3CP(V3): # <<<<<<<<<<<<<< + * """A V3 Cartesian position vector. * */ -struct __pyx_vtabstruct_5pytpm_3tpm_PVEC { - __pyx_t_5pytpm_3tpm_S_PVEC (*__get_pvec)(struct __pyx_obj_5pytpm_3tpm_PVEC *); - PyObject *(*__set_pvec)(struct __pyx_obj_5pytpm_3tpm_PVEC *, __pyx_t_5pytpm_3tpm_S_PVEC); +struct __pyx_vtabstruct_3tpm_V3CP { + struct __pyx_vtabstruct_3tpm_V3 __pyx_base; }; -static struct __pyx_vtabstruct_5pytpm_3tpm_PVEC *__pyx_vtabptr_5pytpm_3tpm_PVEC; +static struct __pyx_vtabstruct_3tpm_V3CP *__pyx_vtabptr_3tpm_V3CP; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":366 +/* "src/tpm_vec.pxi":204 * * - * cdef class V6(object): # <<<<<<<<<<<<<< - * """Class that wraps tpm_vec.V6; for use from Cython only.""" - * cdef tpm_vec.V6 _v6 + * cdef class V3SP(V3): # <<<<<<<<<<<<<< + * """A V3 spherical position vector. + * */ -struct __pyx_vtabstruct_5pytpm_3tpm_V6 { - int (*getType)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setType)(struct __pyx_obj_5pytpm_3tpm_V6 *, int); - PyObject *(*getX)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setX)(struct __pyx_obj_5pytpm_3tpm_V6 *, double); - PyObject *(*getY)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setY)(struct __pyx_obj_5pytpm_3tpm_V6 *, double); - PyObject *(*getZ)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setZ)(struct __pyx_obj_5pytpm_3tpm_V6 *, double); - PyObject *(*getXdot)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setXdot)(struct __pyx_obj_5pytpm_3tpm_V6 *, double); - PyObject *(*getYdot)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setYdot)(struct __pyx_obj_5pytpm_3tpm_V6 *, double); - PyObject *(*getZdot)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setZdot)(struct __pyx_obj_5pytpm_3tpm_V6 *, double); - V6 (*getV6)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setV6)(struct __pyx_obj_5pytpm_3tpm_V6 *, V6); - V3 (*getPOS)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setPOS)(struct __pyx_obj_5pytpm_3tpm_V6 *, V3); - V3 (*getVEL)(struct __pyx_obj_5pytpm_3tpm_V6 *); - PyObject *(*setVEL)(struct __pyx_obj_5pytpm_3tpm_V6 *, V3); +struct __pyx_vtabstruct_3tpm_V3SP { + struct __pyx_vtabstruct_3tpm_V3 __pyx_base; }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V6 *__pyx_vtabptr_5pytpm_3tpm_V6; +static struct __pyx_vtabstruct_3tpm_V3SP *__pyx_vtabptr_3tpm_V3SP; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1014 - * +/* "src/tpm_vec.pxi":366 * - * cdef class M6(object): # <<<<<<<<<<<<<< - * """Class that wraps M6 structure. * + * cdef class V6(object): # <<<<<<<<<<<<<< + * """Class that wraps tpm_vec.V6; for use from Cython only.""" + * cdef tpm_vec.V6 _v6 */ -struct __pyx_vtabstruct_5pytpm_3tpm_M6 { - M6 (*getM6)(struct __pyx_obj_5pytpm_3tpm_M6 *); - PyObject *(*setM6)(struct __pyx_obj_5pytpm_3tpm_M6 *, M6); +struct __pyx_vtabstruct_3tpm_V6 { + int (*getType)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setType)(struct __pyx_obj_3tpm_V6 *, int); + PyObject *(*getX)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setX)(struct __pyx_obj_3tpm_V6 *, double); + PyObject *(*getY)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setY)(struct __pyx_obj_3tpm_V6 *, double); + PyObject *(*getZ)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setZ)(struct __pyx_obj_3tpm_V6 *, double); + PyObject *(*getXdot)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setXdot)(struct __pyx_obj_3tpm_V6 *, double); + PyObject *(*getYdot)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setYdot)(struct __pyx_obj_3tpm_V6 *, double); + PyObject *(*getZdot)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setZdot)(struct __pyx_obj_3tpm_V6 *, double); + V6 (*getV6)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setV6)(struct __pyx_obj_3tpm_V6 *, V6); + V3 (*getPOS)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setPOS)(struct __pyx_obj_3tpm_V6 *, V3); + V3 (*getVEL)(struct __pyx_obj_3tpm_V6 *); + PyObject *(*setVEL)(struct __pyx_obj_3tpm_V6 *, V3); }; -static struct __pyx_vtabstruct_5pytpm_3tpm_M6 *__pyx_vtabptr_5pytpm_3tpm_M6; +static struct __pyx_vtabstruct_3tpm_V6 *__pyx_vtabptr_3tpm_V6; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":457 +/* "src/tpm_vec.pxi":457 * * * cdef class V6C(V6): # <<<<<<<<<<<<<< @@ -604,27 +1139,27 @@ static struct __pyx_vtabstruct_5pytpm_3tpm_M6 *__pyx_vtabptr_5pytpm_3tpm_M6; * */ -struct __pyx_vtabstruct_5pytpm_3tpm_V6C { - struct __pyx_vtabstruct_5pytpm_3tpm_V6 __pyx_base; +struct __pyx_vtabstruct_3tpm_V6C { + struct __pyx_vtabstruct_3tpm_V6 __pyx_base; }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V6C *__pyx_vtabptr_5pytpm_3tpm_V6C; +static struct __pyx_vtabstruct_3tpm_V6C *__pyx_vtabptr_3tpm_V6C; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":58 +/* "src/tpm_vec.pxi":679 * * - * cdef class V3CP(V3): # <<<<<<<<<<<<<< - * """A V3 Cartesian position vector. + * cdef class V6S(V6): # <<<<<<<<<<<<<< + * """Class for spherical V6 vector. * */ -struct __pyx_vtabstruct_5pytpm_3tpm_V3CP { - struct __pyx_vtabstruct_5pytpm_3tpm_V3 __pyx_base; +struct __pyx_vtabstruct_3tpm_V6S { + struct __pyx_vtabstruct_3tpm_V6 __pyx_base; }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *__pyx_vtabptr_5pytpm_3tpm_V3CP; +static struct __pyx_vtabstruct_3tpm_V6S *__pyx_vtabptr_3tpm_V6S; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":800 +/* "src/tpm_vec.pxi":800 * * * cdef class M3(object): # <<<<<<<<<<<<<< @@ -632,28 +1167,29 @@ static struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *__pyx_vtabptr_5pytpm_3tpm_V3CP; * */ -struct __pyx_vtabstruct_5pytpm_3tpm_M3 { - M3 (*getM3)(struct __pyx_obj_5pytpm_3tpm_M3 *); - PyObject *(*setM3)(struct __pyx_obj_5pytpm_3tpm_M3 *, M3); +struct __pyx_vtabstruct_3tpm_M3 { + M3 (*getM3)(struct __pyx_obj_3tpm_M3 *); + PyObject *(*setM3)(struct __pyx_obj_3tpm_M3 *, M3); }; -static struct __pyx_vtabstruct_5pytpm_3tpm_M3 *__pyx_vtabptr_5pytpm_3tpm_M3; +static struct __pyx_vtabstruct_3tpm_M3 *__pyx_vtabptr_3tpm_M3; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":679 +/* "src/tpm_vec.pxi":1014 * * - * cdef class V6S(V6): # <<<<<<<<<<<<<< - * """Class for spherical V6 vector. + * cdef class M6(object): # <<<<<<<<<<<<<< + * """Class that wraps M6 structure. * */ -struct __pyx_vtabstruct_5pytpm_3tpm_V6S { - struct __pyx_vtabstruct_5pytpm_3tpm_V6 __pyx_base; +struct __pyx_vtabstruct_3tpm_M6 { + M6 (*getM6)(struct __pyx_obj_3tpm_M6 *); + PyObject *(*setM6)(struct __pyx_obj_3tpm_M6 *, M6); }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V6S *__pyx_vtabptr_5pytpm_3tpm_V6S; +static struct __pyx_vtabstruct_3tpm_M6 *__pyx_vtabptr_3tpm_M6; -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":66 +/* "src/tpm_tpm.pxi":66 * TPM_ALL = tpm_tpm.TPM_ALL * * cdef class TSTATE(object): # <<<<<<<<<<<<<< @@ -661,30 +1197,32 @@ static struct __pyx_vtabstruct_5pytpm_3tpm_V6S *__pyx_vtabptr_5pytpm_3tpm_V6S; * */ -struct __pyx_vtabstruct_5pytpm_3tpm_TSTATE { - TPM_TSTATE (*__get_tstate)(struct __pyx_obj_5pytpm_3tpm_TSTATE *); - PyObject *(*__set_tstate)(struct __pyx_obj_5pytpm_3tpm_TSTATE *, TPM_TSTATE); +struct __pyx_vtabstruct_3tpm_TSTATE { + TPM_TSTATE (*__pyx___get_tstate)(struct __pyx_obj_3tpm_TSTATE *); + PyObject *(*__pyx___set_tstate)(struct __pyx_obj_3tpm_TSTATE *, TPM_TSTATE); }; -static struct __pyx_vtabstruct_5pytpm_3tpm_TSTATE *__pyx_vtabptr_5pytpm_3tpm_TSTATE; +static struct __pyx_vtabstruct_3tpm_TSTATE *__pyx_vtabptr_3tpm_TSTATE; -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":204 - * +/* "src/tpm_astro.pxi":71 + * ctypedef s_pvec S_PVEC * - * cdef class V3SP(V3): # <<<<<<<<<<<<<< - * """A V3 spherical position vector. + * cdef class PVEC(object): # <<<<<<<<<<<<<< + * """Class for holding N_TPM_STATES element array of V6 vectors. * */ -struct __pyx_vtabstruct_5pytpm_3tpm_V3SP { - struct __pyx_vtabstruct_5pytpm_3tpm_V3 __pyx_base; +struct __pyx_vtabstruct_3tpm_PVEC { + __pyx_t_3tpm_S_PVEC (*__pyx___get_pvec)(struct __pyx_obj_3tpm_PVEC *); + PyObject *(*__pyx___set_pvec)(struct __pyx_obj_3tpm_PVEC *, __pyx_t_3tpm_S_PVEC); }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *__pyx_vtabptr_5pytpm_3tpm_V3SP; +static struct __pyx_vtabstruct_3tpm_PVEC *__pyx_vtabptr_3tpm_PVEC; +/* --- Runtime support code (head) --- */ +/* Refnanny.proto */ #ifndef CYTHON_REFNANNY #define CYTHON_REFNANNY 0 #endif - #if CYTHON_REFNANNY typedef struct { void (*INCREF)(void*, PyObject*, int); @@ -695,1585 +1233,2549 @@ static struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *__pyx_vtabptr_5pytpm_3tpm_V3SP; void (*FinishContext)(void**); } __Pyx_RefNannyAPIStruct; static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct * __Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); - end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; - } - #define __Pyx_RefNannySetupContext(name) void *__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); + #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; +#ifdef WITH_THREAD + #define __Pyx_RefNannySetupContext(name, acquire_gil)\ + if (acquire_gil) {\ + PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ + PyGILState_Release(__pyx_gilstate_save);\ + } else {\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ + } +#else + #define __Pyx_RefNannySetupContext(name, acquire_gil)\ + __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) +#endif + #define __Pyx_RefNannyFinishContext()\ + __Pyx_RefNanny->FinishContext(&__pyx_refnanny) + #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) + #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r);} } while(0) + #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) + #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) + #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) + #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) #else - #define __Pyx_RefNannySetupContext(name) + #define __Pyx_RefNannyDeclarations + #define __Pyx_RefNannySetupContext(name, acquire_gil) #define __Pyx_RefNannyFinishContext() #define __Pyx_INCREF(r) Py_INCREF(r) #define __Pyx_DECREF(r) Py_DECREF(r) #define __Pyx_GOTREF(r) #define __Pyx_GIVEREF(r) + #define __Pyx_XINCREF(r) Py_XINCREF(r) #define __Pyx_XDECREF(r) Py_XDECREF(r) -#endif /* CYTHON_REFNANNY */ -#define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);} } while(0) -#define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r);} } while(0) + #define __Pyx_XGOTREF(r) + #define __Pyx_XGIVEREF(r) +#endif +#define __Pyx_XDECREF_SET(r, v) do {\ + PyObject *tmp = (PyObject *) r;\ + r = v; __Pyx_XDECREF(tmp);\ + } while (0) +#define __Pyx_DECREF_SET(r, v) do {\ + PyObject *tmp = (PyObject *) r;\ + r = v; __Pyx_DECREF(tmp);\ + } while (0) +#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0) +#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0) + +/* PyObjectGetAttrStr.proto */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name); +#else +#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n) +#endif -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ +/* GetBuiltinName.proto */ +static PyObject *__Pyx_GetBuiltinName(PyObject *name); +/* RaiseArgTupleInvalid.proto */ static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ + Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); -static CYTHON_INLINE int __Pyx_CheckKeywordStrings(PyObject *kwdict, - const char* function_name, int kw_allowed); /*proto*/ +/* KeywordStringCheck.proto */ +static int __Pyx_CheckKeywordStrings(PyObject *kwdict, const char* function_name, int kw_allowed); -static CYTHON_INLINE long __Pyx_NegateNonNeg(long b) { return unlikely(b < 0) ? b : !b; } -static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { - return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); -} +/* IterFinish.proto */ +static CYTHON_INLINE int __Pyx_IterFinish(void); -static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ -static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ +/* PyFunctionFastCall.proto */ +#if CYTHON_FAST_PYCALL +#define __Pyx_PyFunction_FastCall(func, args, nargs)\ + __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) +#if 1 || PY_VERSION_HEX < 0x030600B1 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); +#else +#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs) +#endif +#define __Pyx_BUILD_ASSERT_EXPR(cond)\ + (sizeof(char [1 - 2*!(cond)]) - 1) +#ifndef Py_MEMBER_SIZE +#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) +#endif + static size_t __pyx_pyframe_localsplus_offset = 0; + #include "frameobject.h" + #define __Pxy_PyFrame_Initialize_Offsets()\ + ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ + (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) + #define __Pyx_PyFrame_GetLocalsplus(frame)\ + (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) +#endif -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ +/* PyObjectCall.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); +#else +#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) +#endif -static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void); +/* PyObjectCallMethO.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); +#endif -#if PY_MAJOR_VERSION >= 3 -static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { - PyObject *value; - if (unlikely(d == Py_None)) { - __Pyx_RaiseNoneIndexingError(); - return NULL; - } - value = PyDict_GetItemWithError(d, key); - if (unlikely(!value)) { - if (!PyErr_Occurred()) - PyErr_SetObject(PyExc_KeyError, key); - return NULL; - } - Py_INCREF(value); - return value; -} +/* PyObjectCallNoArg.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func); #else - #define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key) +#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL) #endif -static PyObject* __Pyx_PyDict_GetItemDefault(PyObject* d, PyObject* key, PyObject* default_value) { - PyObject* value; -#if PY_MAJOR_VERSION >= 3 - value = PyDict_GetItemWithError(d, key); - if (unlikely(!value)) { - if (unlikely(PyErr_Occurred())) - return NULL; - value = default_value; - } - Py_INCREF(value); +/* PyCFunctionFastCall.proto */ +#if CYTHON_FAST_PYCCALL +static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs); #else - if (PyString_CheckExact(key) || PyUnicode_CheckExact(key) || PyInt_CheckExact(key)) { - /* these presumably have safe hash functions */ - value = PyDict_GetItem(d, key); - if (unlikely(!value)) { - value = default_value; - } - Py_INCREF(value); - } else { - PyObject *m; - m = __Pyx_GetAttrString(d, "get"); - if (!m) return NULL; - value = PyObject_CallFunctionObjArgs(m, key, - (default_value == Py_None) ? NULL : default_value, NULL); - Py_DECREF(m); - } +#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL) #endif - return value; -} -#include +/* PyObjectCallOneArg.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); + +/* PyObjectGetMethod.proto */ +static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method); +/* PyObjectCallMethod0.proto */ +static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name); + +/* RaiseNeedMoreValuesToUnpack.proto */ static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); +/* RaiseTooManyValuesToUnpack.proto */ static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); -static PyObject *__Pyx_UnpackItem(PyObject *, Py_ssize_t index); /*proto*/ -static int __Pyx_EndUnpack(PyObject *, Py_ssize_t expected); /*proto*/ +/* UnpackItemEndCheck.proto */ +static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); + +/* RaiseNoneIterError.proto */ +static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); + +/* UnpackTupleError.proto */ +static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); + +/* UnpackTuple2.proto */ +#define __Pyx_unpack_tuple2(tuple, value1, value2, is_tuple, has_known_size, decref_tuple)\ + (likely(is_tuple || PyTuple_Check(tuple)) ?\ + (likely(has_known_size || PyTuple_GET_SIZE(tuple) == 2) ?\ + __Pyx_unpack_tuple2_exact(tuple, value1, value2, decref_tuple) :\ + (__Pyx_UnpackTupleError(tuple, 2), -1)) :\ + __Pyx_unpack_tuple2_generic(tuple, value1, value2, has_known_size, decref_tuple)) +static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( + PyObject* tuple, PyObject** value1, PyObject** value2, int decref_tuple); +static int __Pyx_unpack_tuple2_generic( + PyObject* tuple, PyObject** value1, PyObject** value2, int has_known_size, int decref_tuple); + +/* dict_iter.proto */ +static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* dict, int is_dict, PyObject* method_name, + Py_ssize_t* p_orig_length, int* p_is_dict); +static CYTHON_INLINE int __Pyx_dict_iter_next(PyObject* dict_or_iter, Py_ssize_t orig_length, Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int is_dict); + +/* PySequenceContains.proto */ +static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* seq, int eq) { + int result = PySequence_Contains(seq, item); + return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); +} + +/* PyObjectCall2Args.proto */ +static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); + +/* PyThreadStateGet.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; +#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; +#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type +#else +#define __Pyx_PyThreadState_declare +#define __Pyx_PyThreadState_assign +#define __Pyx_PyErr_Occurred() PyErr_Occurred() +#endif -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ +/* PyErrFetchRestore.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL) +#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb) +#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb) +#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb) +#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) +#else +#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) +#endif +#else +#define __Pyx_PyErr_Clear() PyErr_Clear() +#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) +#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb) +#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb) +#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb) +#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb) +#endif -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ +/* RaiseException.proto */ +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); -static int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, - const char *name, int exact); /*proto*/ +/* PyDictContains.proto */ +static CYTHON_INLINE int __Pyx_PyDict_ContainsTF(PyObject* item, PyObject* dict, int eq) { + int result = PyDict_Contains(dict, item); + return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); +} -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); +/* DictGetItem.proto */ +#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key); +#define __Pyx_PyObject_Dict_GetItem(obj, name)\ + (likely(PyDict_CheckExact(obj)) ?\ + __Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name)) +#else +#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key) +#define __Pyx_PyObject_Dict_GetItem(obj, name) PyObject_GetItem(obj, name) +#endif -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); +/* dict_getitem_default.proto */ +static PyObject* __Pyx_PyDict_GetItemDefault(PyObject* d, PyObject* key, PyObject* default_value); + +/* UnpackUnboundCMethod.proto */ +typedef struct { + PyObject *type; + PyObject **method_name; + PyCFunction func; + PyObject *method; + int flag; +} __Pyx_CachedCFunction; + +/* CallUnboundCMethod1.proto */ +static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg); +#else +#define __Pyx_CallUnboundCMethod1(cfunc, self, arg) __Pyx__CallUnboundCMethod1(cfunc, self, arg) +#endif -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); +/* CallUnboundCMethod2.proto */ +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2); +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030600B1 +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2); +#else +#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2) +#endif -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); +/* IncludeStringH.proto */ +#include -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); +/* decode_c_string_utf16.proto */ +static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16(const char *s, Py_ssize_t size, const char *errors) { + int byteorder = 0; + return PyUnicode_DecodeUTF16(s, size, errors, &byteorder); +} +static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16LE(const char *s, Py_ssize_t size, const char *errors) { + int byteorder = -1; + return PyUnicode_DecodeUTF16(s, size, errors, &byteorder); +} +static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16BE(const char *s, Py_ssize_t size, const char *errors) { + int byteorder = 1; + return PyUnicode_DecodeUTF16(s, size, errors, &byteorder); +} -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); +/* decode_c_string.proto */ +static CYTHON_INLINE PyObject* __Pyx_decode_c_string( + const char* cstring, Py_ssize_t start, Py_ssize_t stop, + const char* encoding, const char* errors, + PyObject* (*decode_func)(const char *s, Py_ssize_t size, const char *errors)); -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); +/* PyObjectSetAttrStr.proto */ +#if CYTHON_USE_TYPE_SLOTS +#define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL) +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value); +#else +#define __Pyx_PyObject_DelAttrStr(o,n) PyObject_DelAttr(o,n) +#define __Pyx_PyObject_SetAttrStr(o,n,v) PyObject_SetAttr(o,n,v) +#endif -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); +/* RaiseDoubleKeywords.proto */ +static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); + +/* ParseKeywords.proto */ +static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\ + PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\ + const char* function_name); + +/* PyDictVersioning.proto */ +#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS +#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) +#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) +#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\ + (version_var) = __PYX_GET_DICT_VERSION(dict);\ + (cache_var) = (value); +#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\ + static PY_UINT64_T __pyx_dict_version = 0;\ + static PyObject *__pyx_dict_cached_value = NULL;\ + if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ + (VAR) = __pyx_dict_cached_value;\ + } else {\ + (VAR) = __pyx_dict_cached_value = (LOOKUP);\ + __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ + }\ +} +static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj); +static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj); +static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version); +#else +#define __PYX_GET_DICT_VERSION(dict) (0) +#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var) +#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP); +#endif -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); +/* GetModuleGlobalName.proto */ +#if CYTHON_USE_DICT_VERSIONS +#define __Pyx_GetModuleGlobalName(var, name) {\ + static PY_UINT64_T __pyx_dict_version = 0;\ + static PyObject *__pyx_dict_cached_value = NULL;\ + (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ + (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ + __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ +} +#define __Pyx_GetModuleGlobalNameUncached(var, name) {\ + PY_UINT64_T __pyx_dict_version;\ + PyObject *__pyx_dict_cached_value;\ + (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ +} +static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value); +#else +#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name) +#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name) +static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); +#endif -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); +/* ArgTypeTest.proto */ +#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ + ((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\ + __Pyx__ArgTypeTest(obj, type, name, exact)) +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); +/* WriteUnraisableException.proto */ +static void __Pyx_WriteUnraisable(const char *name, int clineno, + int lineno, const char *filename, + int full_traceback, int nogil); -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); +/* PyObject_GenericGetAttrNoDict.proto */ +#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name); +#else +#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr +#endif -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); +/* PyObject_GenericGetAttr.proto */ +#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 +static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name); +#else +#define __Pyx_PyObject_GenericGetAttr PyObject_GenericGetAttr +#endif -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); +/* PyErrExceptionMatches.proto */ +#if CYTHON_FAST_THREAD_STATE +#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err) +static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err); +#else +#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err) +#endif -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); +/* PyObjectGetAttrStrNoError.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name); -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); +/* SetupReduce.proto */ +static int __Pyx_setup_reduce(PyObject* type_obj); -static void __Pyx_WriteUnraisable(const char *name); /*proto*/ +/* SetVTable.proto */ +static int __Pyx_SetVtable(PyObject *dict, void *vtable); -static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/ +/* GetNameInClass.proto */ +#define __Pyx_GetNameInClass(var, nmspace, name) (var) = __Pyx__GetNameInClass(nmspace, name) +static PyObject *__Pyx__GetNameInClass(PyObject *nmspace, PyObject *name); -static void __Pyx_AddTraceback(const char *funcname); /*proto*/ +/* CLineInTraceback.proto */ +#ifdef CYTHON_CLINE_IN_TRACEBACK +#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) +#else +static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); +#endif -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ -/* Module declarations from tpm_times */ +/* CodeObjectCache.proto */ +typedef struct { + PyCodeObject* code_object; + int code_line; +} __Pyx_CodeObjectCacheEntry; +struct __Pyx_CodeObjectCache { + int count; + int max_count; + __Pyx_CodeObjectCacheEntry* entries; +}; +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; +static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); +static PyCodeObject *__pyx_find_code_object(int code_line); +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); -/* Module declarations from tpm_vec */ +/* AddTraceback.proto */ +static void __Pyx_AddTraceback(const char *funcname, int c_line, + int py_line, const char *filename); -/* Module declarations from tpm_tpm */ +/* CIntToPy.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); -/* Module declarations from tpm_astro */ +/* CIntFromPy.proto */ +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); -/* Module declarations from pytpm.tpm */ +/* CIntFromPy.proto */ +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_DMS = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_HMS = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_YMD = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_JD = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_V3 = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_V3CP = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_V3SP = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_V6 = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_V6C = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_V6S = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_M3 = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_M6 = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_TSTATE = 0; -static PyTypeObject *__pyx_ptype_5pytpm_3tpm_PVEC = 0; -#define __Pyx_MODULE_NAME "pytpm.tpm" -static int __pyx_module_is_main_pytpm__tpm = 0; +/* CIntToPy.proto */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); -/* Implementation of pytpm.tpm */ +/* FastTypeChecks.proto */ +#if CYTHON_COMPILING_IN_CPYTHON +#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type) +static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b); +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2); +#else +#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) +#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) +#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) +#endif +#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) + +/* CheckBinaryVersion.proto */ +static int __Pyx_check_binary_version(void); + +/* InitStrings.proto */ +static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); + +static int __pyx_f_3tpm_2V3_getType(struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V3_setType(struct __pyx_obj_3tpm_V3 *__pyx_v_self, int __pyx_v_t); /* proto*/ +static PyObject *__pyx_f_3tpm_2V3_setX(struct __pyx_obj_3tpm_V3 *__pyx_v_self, double __pyx_v_X); /* proto*/ +static PyObject *__pyx_f_3tpm_2V3_setY(struct __pyx_obj_3tpm_V3 *__pyx_v_self, double __pyx_v_Y); /* proto*/ +static PyObject *__pyx_f_3tpm_2V3_setZ(struct __pyx_obj_3tpm_V3 *__pyx_v_self, double __pyx_v_Z); /* proto*/ +static double __pyx_f_3tpm_2V3_getX(struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto*/ +static double __pyx_f_3tpm_2V3_getY(struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto*/ +static double __pyx_f_3tpm_2V3_getZ(struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto*/ +static V3 __pyx_f_3tpm_2V3_getV3(struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V3_setV3(struct __pyx_obj_3tpm_V3 *__pyx_v_self, V3 __pyx_v__v3); /* proto*/ +static int __pyx_f_3tpm_2V6_getType(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setType(struct __pyx_obj_3tpm_V6 *__pyx_v_self, int __pyx_v_t); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_getX(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setX(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_x); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_getY(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setY(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_y); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_getZ(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setZ(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_z); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_getXdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setXdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_xdot); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_getYdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setYdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_ydot); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_getZdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setZdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_zdot); /* proto*/ +static V6 __pyx_f_3tpm_2V6_getV6(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setV6(struct __pyx_obj_3tpm_V6 *__pyx_v_self, V6 __pyx_v__v6); /* proto*/ +static V3 __pyx_f_3tpm_2V6_getPOS(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setPOS(struct __pyx_obj_3tpm_V6 *__pyx_v_self, V3 __pyx_v__v3); /* proto*/ +static V3 __pyx_f_3tpm_2V6_getVEL(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2V6_setVEL(struct __pyx_obj_3tpm_V6 *__pyx_v_self, V3 __pyx_v__v3); /* proto*/ +static M3 __pyx_f_3tpm_2M3_getM3(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2M3_setM3(struct __pyx_obj_3tpm_M3 *__pyx_v_self, M3 __pyx_v_m3); /* proto*/ +static M6 __pyx_f_3tpm_2M6_getM6(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_2M6_setM6(struct __pyx_obj_3tpm_M6 *__pyx_v_self, M6 __pyx_v_m6); /* proto*/ +static TPM_TSTATE __pyx_f_3tpm_6TSTATE___get_tstate(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_6TSTATE___set_tstate(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, TPM_TSTATE __pyx_v_t); /* proto*/ +static __pyx_t_3tpm_S_PVEC __pyx_f_3tpm_4PVEC___get_pvec(struct __pyx_obj_3tpm_PVEC *__pyx_v_self); /* proto*/ +static PyObject *__pyx_f_3tpm_4PVEC___set_pvec(struct __pyx_obj_3tpm_PVEC *__pyx_v_self, __pyx_t_3tpm_S_PVEC __pyx_v_spv); /* proto*/ + +/* Module declarations from 'tpm_times' */ + +/* Module declarations from 'tpm_vec' */ + +/* Module declarations from 'tpm_tpm' */ + +/* Module declarations from 'tpm_astro' */ + +/* Module declarations from 'tpm' */ +static PyTypeObject *__pyx_ptype_3tpm_DMS = 0; +static PyTypeObject *__pyx_ptype_3tpm_HMS = 0; +static PyTypeObject *__pyx_ptype_3tpm_YMD = 0; +static PyTypeObject *__pyx_ptype_3tpm_JD = 0; +static PyTypeObject *__pyx_ptype_3tpm_V3 = 0; +static PyTypeObject *__pyx_ptype_3tpm_V3CP = 0; +static PyTypeObject *__pyx_ptype_3tpm_V3SP = 0; +static PyTypeObject *__pyx_ptype_3tpm_V6 = 0; +static PyTypeObject *__pyx_ptype_3tpm_V6C = 0; +static PyTypeObject *__pyx_ptype_3tpm_V6S = 0; +static PyTypeObject *__pyx_ptype_3tpm_M3 = 0; +static PyTypeObject *__pyx_ptype_3tpm_M6 = 0; +static PyTypeObject *__pyx_ptype_3tpm_TSTATE = 0; +static PyTypeObject *__pyx_ptype_3tpm_PVEC = 0; +#define __Pyx_MODULE_NAME "tpm" +extern int __pyx_module_is_main_tpm; +int __pyx_module_is_main_tpm = 0; + +/* Implementation of 'tpm' */ static PyObject *__pyx_builtin_property; static PyObject *__pyx_builtin_TypeError; static PyObject *__pyx_builtin_ValueError; static PyObject *__pyx_builtin_range; static PyObject *__pyx_builtin_IndexError; -static char __pyx_k_1[] = "Invalid keyword: {0}"; -static char __pyx_k_2[] = "Can only add two DMS values."; -static char __pyx_k_3[] = "Can only subtract two DMS values."; -static char __pyx_k_4[] = "Can only add two HMS values."; -static char __pyx_k_5[] = "Can only subtract two HMS values."; -static char __pyx_k_6[] = "Year must be an integer."; -static char __pyx_k_7[] = "Month must be an integer."; -static char __pyx_k_8[] = "Can only subtract two YMD values."; -static char __pyx_k_9[] = "Can only add two JD values."; -static char __pyx_k_17[] = "Can only subtract two V3CP values."; -static char __pyx_k_18[] = "Can only add two V3CP values."; -static char __pyx_k_22[] = "Can only subtract two V3SP values."; -static char __pyx_k_23[] = "Can only add two V3SP values."; -static char __pyx_k_31[] = "Type of V3 must be the same as that of V6."; -static char __pyx_k_38[] = "Can only subtract two V6C values."; -static char __pyx_k_39[] = "Can only add two V6C values."; -static char __pyx_k_40[] = "Can only take dot product of two V6C values."; -static char __pyx_k_41[] = "Can only take cross product of two V6C values."; -static char __pyx_k_67[] = "Index must be an integer."; -static char __pyx_k_68[] = "Index must be in 0 <= index < N_TPM_STATES."; -static char __pyx_k_69[] = "Value must be a V6C object."; -static char __pyx_k_70[] = "S1 must be in 0 <= S1 < N_TPM_STATES"; -static char __pyx_k_71[] = "S2 must be in 0 <= S2 < N_TPM_STATES"; -static char __pyx_k_84[] = "Degrees."; -static char __pyx_k_85[] = "Minutes of arc."; -static char __pyx_k_86[] = "Seconds of arc."; -static char __pyx_k_88[] = "Hours."; -static char __pyx_k_89[] = "Minutes."; -static char __pyx_k_90[] = "Seconds."; -static char __pyx_k_92[] = "Year as an integer."; -static char __pyx_k_93[] = "Month as an integer."; -static char __pyx_k_94[] = "Day as a float."; -static char __pyx_k_95[] = "Hours as a float."; -static char __pyx_k_96[] = "Minutes as a float."; -static char __pyx_k_97[] = "Seconds as a float."; -static char __pyx_k_99[] = "pytpm.tpm"; -static char __pyx_k__C[] = "C"; -static char __pyx_k__H[] = "H"; -static char __pyx_k__P[] = "P"; -static char __pyx_k__T[] = "T"; -static char __pyx_k__X[] = "X"; -static char __pyx_k__Y[] = "Y"; -static char __pyx_k__Z[] = "Z"; -static char __pyx_k__e[] = "e"; -static char __pyx_k__h[] = "h"; -static char __pyx_k__j[] = "j"; -static char __pyx_k__m[] = "m"; -static char __pyx_k__p[] = "p"; -static char __pyx_k__r[] = "r"; -static char __pyx_k__v[] = "v"; -static char __pyx_k__x[] = "x"; -static char __pyx_k__y[] = "y"; -static char __pyx_k__z[] = "z"; -static char __pyx_k_100[] = "X coordinate."; -static char __pyx_k_101[] = "Y coordinate."; -static char __pyx_k_102[] = "Z coordinate."; -static char __pyx_k_103[] = "Radial coordinate."; -static char __pyx_k_104[] = "Longitudinal coordinate."; -static char __pyx_k_105[] = "Latitudinal coordinate."; -static char __pyx_k_106[] = "alpha normalized to [0, 2\317\200)."; -static char __pyx_k_107[] = "delta normalized to [-\317\200/2, \317\200/2]."; -static char __pyx_k_108[] = "Rate of change of X coordinate."; -static char __pyx_k_109[] = "Rate of change of Y coordinate."; -static char __pyx_k_110[] = "Rate of change of Z coordinate."; -static char __pyx_k_111[] = "The position component."; -static char __pyx_k_112[] = "R coordinate."; -static char __pyx_k_113[] = "ALPHA coordinate."; -static char __pyx_k_114[] = "DELTA coordinate."; -static char __pyx_k_115[] = "Rate of change of R coordinate."; -static char __pyx_k_116[] = "Rate of change of ALPHA coordinate."; -static char __pyx_k_117[] = "Rate of change of DELTA coordinate."; -static char __pyx_k_118[] = "XX."; -static char __pyx_k_119[] = "XY."; -static char __pyx_k_120[] = "XZ."; -static char __pyx_k_121[] = "YX."; -static char __pyx_k_122[] = "YY."; -static char __pyx_k_123[] = "YZ."; -static char __pyx_k_124[] = "ZX."; -static char __pyx_k_125[] = "ZY."; -static char __pyx_k_126[] = "ZZ."; -static char __pyx_k_127[] = "PP component."; -static char __pyx_k_128[] = "PV component."; -static char __pyx_k_129[] = "VP component."; -static char __pyx_k_130[] = "VV component."; -static char __pyx_k_131[] = "UTC as JD. Defines NOW, i.e., current time."; -static char __pyx_k_132[] = "DELTA_AT = TAI - UTC (s)"; -static char __pyx_k_133[] = "DELTA_UT = UT1 - UTC (s)"; -static char __pyx_k_134[] = "East longitude in radians."; -static char __pyx_k_135[] = "Latitude in radians."; -static char __pyx_k_136[] = "Altitude above geoid in meters."; -static char __pyx_k_137[] = "Polar motion in radians."; -static char __pyx_k_138[] = "Ambient temperature in Kelvins."; -static char __pyx_k_139[] = "Ambient pressure in millibars."; -static char __pyx_k_140[] = "Ambient humidity (0-1)."; -static char __pyx_k_141[] = "Observing wavelength in microns."; -static char __pyx_k_142[] = "International Atomic Time."; -static char __pyx_k_143[] = "Terrestrial Dynamic Time (Terrestrial Time)."; -static char __pyx_k_144[] = "Barycentric Dynamic Time."; -static char __pyx_k_145[] = "Obliquity of the Ecliptic."; -static char __pyx_k_146[] = "Nutation in longitude."; -static char __pyx_k_147[] = "Nutation in obliquity."; -static char __pyx_k_148[] = "Nutation matrix for NOW."; -static char __pyx_k_149[] = "Precession matrix from J2000 to NOW."; -static char __pyx_k_150[] = "Universal time."; -static char __pyx_k_151[] = "Greewich Mean Sidereal Time."; -static char __pyx_k_152[] = "Greewich Apparent Sidereal Time."; -static char __pyx_k_153[] = "Local Apparent Sidereal Time."; -static char __pyx_k_154[] = "Barycentric Earth state vector."; -static char __pyx_k_155[] = "Heliocentric Earth state vector."; -static char __pyx_k_156[] = "Geocentric Earth-fixed mean state vector."; -static char __pyx_k_157[] = "Geocentric Earth-fixed true state vector."; -static char __pyx_k_158[] = "Geocentric space-fixed true state vector."; -static char __pyx_k_159[] = "Refraction coefficient."; -static char __pyx_k_160[] = "DMS.normalize (line 161)"; -static char __pyx_k_161[] = "Normalize components.\n\n Normalizes the arc-minutes and arc-seconds of the angle into\n the proper range. Note that after normalize the sign of the\n angle applies to the degrees part alone, and not to the whole\n angle.\n\n Don't use this class outside of PyTPM.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> dms = tpm.DMS(dd=-1.23)\n >>> dms.dd, dms.mm, dms.ss\n (-1.23, 0.0, 0.0)\n >>> print dms\n -01D 13' 47.999\"\n >>> dms.normalize()\n >>> dms.dd, dms.mm, dms.ss\n (-2.0, 46.0, 12.00000000000017)\n\n Note that in the above case if we were to do dms.dd=-1.0,\n dms.mm=13 and dms.ss=48, we would get different results.\n\n >>> dms.dd = -1\n >>> dms.mm = 46.0\n >>> dms.ss = 12.0\n >>> print dms\n --> print(dms)\n -00D 13' 48.000\"\n "; -static char __pyx_k_162[] = "HMS.normalize (line 367)"; -static char __pyx_k_163[] = "Normalize components.\n\n Normalizes the angle so that hours and minutes part are integer\n valued and the fractional part gets assigned to\n seconds. Similar to the case of `DMS`, the negative sign gets\n assigned to the hours part.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> h = tpm.HMS()\n >>> h.hh = 12.34\n >>> h.mm = 1.3\n >>> h.ss = 61.4\n >>> h\n {'mm': 1.3, 'ss': 61.399999999999999, 'hh': 12.34}\n >>> h.normalize()\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': 12.0}\n >>> h.hh = -12.34\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': -12.34}\n >>> h.normalize()\n >>> h\n {'mm': 2.0, 'ss': 19.400000000001967, 'hh': -12.0}\n\n "; -static char __pyx_k_164[] = "YMD.normalize (line 594)"; -static char __pyx_k_165[] = "Normalize YMD.\n\n The components `y`, `m`, `dd`, `hh`, `mm` and `ss` are\n normalized into their proper ranges.\n\n Examples\n --------\n >>> ymd = tpm.YMD(y=2010,m=3,dd=12.5,hh=12.25)\n >>> ymd\n {'mm': 0.0, 'dd': 12.5, 'm': 3, 'ss': 0.0, 'hh': 12.25, 'y': 2010}\n >>> ymd.normalize()\n >>> ymd\n {'mm': 14.0, 'dd': 13.0, 'm': 3, 'ss': 59.999986588954926, 'hh': 0.0, 'y': 2010}\n\n "; -static char __pyx_k_166[] = "YMD.to_jd (line 612)"; -static char __pyx_k_167[] = "Convert into a tpm.JD object.\n\n Returns\n -------\n jd : tpm.JD\n Contains Julian date corresponding to the Calendar date.\n\n Examples\n --------\n >>> j = tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_jd()\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.0, 'hh': 0.0}\n\n "; -static char __pyx_k_168[] = "YMD.to_j (line 633)"; -static char __pyx_k_169[] = "Convert YMD into scalar Julian date.\n\n Returns\n -------\n jd : float\n The Julian date corresponding to the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_j()\n 2451545.0\n\n "; -static char __pyx_k_170[] = "YMD.raw_str (line 649)"; -static char __pyx_k_171[] = "A string representation in the 'raw' format.\n\n Returns\n -------\n s : str\n A \"raw\" representation of the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).raw_str()\n '2000 1 1 12 0 0'\n >>> tpm.YMD(y=2000,m=6,dd=1.34,hh=12.0,mm=12.678).raw_str()\n '2000 6 1.34 12 12.678 0'\n\n Printing or converting to str gives a nicely formatted string\n representation.\n\n >>> ymd = tpm.YMD(y=2000,m=1,dd=1,hh=12.0)\n >>> print ymd\n --> print(ymd)\n Sat Jan 1 12:00:00.000 2000\n >>> str(ymd)\n 'Sat Jan 1 12:00:00.000 2000'\n\n "; -static char __pyx_k_172[] = "YMD.doy (line 677)"; -static char __pyx_k_173[] = "Day of the year corresponding to the date-time.\n\n Returns\n -------\n doy : float\n Day of the year.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).doy()\n 1.5\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.5).doy()\n 1.5208333334885538\n\n "; -static char __pyx_k_174[] = "YMD.to_year (line 695)"; -static char __pyx_k_175[] = "Convert date-time into a year number.\n\n Returns\n -------\n year : float\n Year number, i.e., year + (day / num. days).\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1).to_year()\n 2000.0027322404371\n >>> 2000+(1/366.0)\n 2000.0027322404371\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_year()\n 2000.0040983606557\n >>> 2000+(1/366.0+12/(24.0*366.0))\n 2000.0040983606557\n\n "; -static char __pyx_k_176[] = "JD.normalize (line 847)"; -static char __pyx_k_177[] = "Normalize the JD structure.\n\n Normalize the components into their proper ranges and carry the\n fractional part of the date into seconds.\n\n Examples\n --------\n >>> j = tpm.JD(j=2451545.1234467)\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.1234467002, 'hh': 0.0}\n >>> j.normalize()\n >>> j\n {'mm': 57.0, 'ss': 45.794894099235535, 'dd': 2451545.0, 'hh': 2.0}\n\n "; -static char __pyx_k_178[] = "JD.to_ymd (line 865)"; -static char __pyx_k_179[] = "Convert to YMD (Gregorian calendar).\n\n Returns\n -------\n ymd : tpm.YMD\n The Julian date is converted into Gregorian calendar date\n and returned as a tpm.YMD object.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> ymd = jd.to_ymd()\n >>> ymd\n {'mm': 0.0, 'dd': 1.5, 'm': 1, 'ss': 0.0, 'hh': 12.0, 'y': 2000}\n\n "; -static char __pyx_k_180[] = "JD.to_j (line 888)"; -static char __pyx_k_181[] = "Convert JD to a scalar Julian date.\n\n Returns\n -------\n j : float\n The scalar Julian date.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_j()\n 2451545.5\n\n "; -static char __pyx_k_182[] = "JD.to_year (line 905)"; -static char __pyx_k_183[] = "Convert JD into year (Gregorian calendar).\n\n Returns\n -------\n y : float\n Year with fractional part. This is just\n (integer_year + day/num_of_days).\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_year()\n 2000.0054644808743\n >>> 2000+(2/366.0)\n 2000.0054644808743\n\n "; -static char __pyx_k_184[] = "byear2jd (line 927)"; -static char __pyx_k_185[] = "Convert Besselian year into a Julian date.\n\n Parameters\n ----------\n byear: float\n Besselian year.\n\n Returns\n -------\n j : float\n Julian date corresponding to the given Besselian year.\n\n Examples\n --------\n >>> tpm.byear2jd(1950.0)\n 2433282.4234590498\n >>> tpm.byear2jd(2000.0)\n 2451544.5333981365\n\n "; -static char __pyx_k_186[] = "jd2byear (line 951)"; -static char __pyx_k_187[] = "Convert Julian date into a Besselian year.\n\n Parameters\n ----------\n jd: float\n Julian date.\n\n Returns\n -------\n byear : float\n Besselian year corresponding to the given Julian date.\n\n Examples\n --------\n >>> tpm.jd2byear(tpm.B1950)\n 1950.0\n >>> tpm.jd2byear(tpm.J2000)\n 2000.0012775135656\n\n "; -static char __pyx_k_188[] = "jyear2jd (line 975)"; -static char __pyx_k_189[] = "Convert Julian year into a Julian date.\n\n Parameters\n ----------\n jyear : float\n Julian year.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given Julian year.\n\n Examples\n --------\n >>> tpm.jyear2jd(2000.0)\n 2451545.0\n >>> tpm.jyear2jd(1950.0)\n 2433282.5\n\n "; -static char __pyx_k_190[] = "jd2jyear (line 999)"; -static char __pyx_k_191[] = "Convert Julian date into Julian year.\n\n Parameters\n ----------\n jd : float\n Julian date.\n\n Returns\n -------\n jyear : float\n Julian year corresponding to the given Juilan date.\n\n Examples\n --------\n >>> tpm.jd2jyear(tpm.J2000)\n 2000.0\n >>> tpm.jd2jyear(tpm.B1950)\n 1949.9997904422992\n\n "; -static char __pyx_k_192[] = "gcal2j (line 1053)"; -static char __pyx_k_193[] = "Return Julian day number for the Gregorian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n m : int\n Month in the Gregorian calendar.\n dd : int\n Day in the Gregorian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.gcal2j(2000,1,1)\n 2451545.0\n >>> tpm.gcal2j(2010,1,1)\n 2455198.0\n >>> tpm.gcal2j(1950,1,1)\n 2433283.0\n\n "; -static char __pyx_k_194[] = "jcal2j (line 1085)"; -static char __pyx_k_195[] = "Return Julian day number for the Julian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Julian calendar.\n m : int\n Month in the Julian calendar.\n dd : int\n Day in the Julian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n >>> tpm.jcal2j(2000,1,1)\n 2451558.0\n >>> tpm.jcal2j(2010,1,1)\n 2455211.0\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n\n "; -static char __pyx_k_196[] = "j2gcal (line 1119)"; -static char __pyx_k_197[] = "Convert Julian date into Gregorian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Gregorian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2gcal(tpm.J2000)\n {'dd': 1, 'm': 1, 'y': 2000}\n >>> tpm.j2gcal(tpm.B1950)\n {'dd': 31, 'm': 12, 'y': 1949}\n\n "; -static char __pyx_k_198[] = "j2jcal (line 1149)"; -static char __pyx_k_199[] = "Convert Julian date into Julian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Julian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2jcal(tpm.J2000)\n {'dd': 19, 'm': 12, 'y': 1999}\n >>> tpm.j2jcal(tpm.B1950)\n {'dd': 18, 'm': 12, 'y': 1949}\n\n "; -static char __pyx_k_200[] = "j2y (line 1179)"; -static char __pyx_k_201[] = "Convert Julian date into Gregorian calendar year with fractional part.\n\n Parameters\n ----------\n j : float\n Julian date\n\n Returns\n -------\n year : float\n Year, including fractional part, in the Gregorian\n calendar. This is just (integer_year + day / num_of_days.)\n\n Examples\n --------\n >>> tpm.j2y(tpm.J2000)\n 2000.0040983606557\n >>> 2000+(1.5/366)\n 2000.0040983606557\n >>> tpm.j2y(tpm.J2000+366)\n 2001.004109589041\n\n "; -static char __pyx_k_202[] = "y2j (line 1206)"; -static char __pyx_k_203[] = "Convert Gregorian calendar year with fractional part into Julian date.\n\n Parameters\n ----------\n y : float\n Gregorian calendar year with fractional part.\n\n Returns\n -------\n j : float\n Julian date.\n\n Examples\n --------\n >>> tpm.y2j(2000.0040983606557)\n 2451545.0\n >>> tpm.y2j(2001.004109589041)\n 2451911.0\n >>> tpm.j2gcal(tpm.y2j(2001.004109589041))\n {'dd': 1, 'm': 1, 'y': 2001}\n\n "; -static char __pyx_k_204[] = "j2dow (line 1232)"; -static char __pyx_k_205[] = "Return day of week for the given Julian date.\n\n Parameters\n ----------\n j : float\n Julian date (Gregorian calendar).\n\n Returns\n -------\n dow : int\n Day of the week: 0 - Sunday, 6 - Saturday.\n\n Examples\n --------\n >>> j = tpm.gcal2j(2010,1,1)\n >>> tpm.fmt_y(tpm.j2y(j))\n 'Fri Jan 1 12:00:00.000 2010'\n >>> tpm.j2dow(j)\n 5\n\n "; -static char __pyx_k_206[] = "y2doy (line 1257)"; -static char __pyx_k_207[] = "Return number of days in the given Gregorian calendar year.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n\n Returns\n -------\n doy : int\n Number of days in the year.\n\n Examples\n --------\n >>> tpm.y2doy(2000)\n 366\n >>> tpm.y2doy(2001)\n 365\n >>> tpm.y2doy(2002)\n 365\n >>> tpm.y2doy(2003)\n 365\n >>> tpm.y2doy(2004)\n 366\n\n "; -static char __pyx_k_208[] = "fmt_alpha (line 1287)"; -static char __pyx_k_209[] = "Normalize and format angle in radians into a str: ' ##H ##M ##.###S'.\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form ' ##H ##M ##.###S'.\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [0,360) and then converts it into a string that represents\n angle/time in the 24-hour format. The angle is properly divided\n into hours, minutes and seconds.\n\n This is useful for formatting \"longitudinal\" angles, such as right\n ascension.\n\n Examples\n --------\n >>> tpm.fmt_alpha(tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI)\n ' 00H 00M 00.000S'\n >>> tpm.fmt_alpha(tpm.M_PI/2.0)\n ' 06H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI/2.0)\n ' 18H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI+(tpm.M_PI/12.0))\n ' 00H 59M 59.999S'\n >>> tpm.fmt_alpha(-(2*tpm.M_PI+(tpm.M_PI/12.0)))\n ' 23H 00M 00.000S'\n\n "; -static char __pyx_k_210[] = "fmt_delta (line 1331)"; -static char __pyx_k_211[] = "Normalize and format angle in radians into a str: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Return\n ------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [-\317\200/2, \317\200/2] and then formats it into a string of the form\n \302\261###D ##' ##.###\", where each part of the string corresponds to\n degrees, arc-minutes and arc-seconds.\n\n This is useful for formatted output of \"latitudinal\" angles, such\n as declination.\n\n Examples\n --------\n >>> tpm.fmt_delta(tpm.M_PI/2.0)\n '+90D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI/2.0)\n '-90D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI/4.0)\n '+45D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI)\n '+00D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI)\n '+00D 00' 00.000\"'\n "; -static char __pyx_k_212[] = "fmt_d (line 1370)"; -static char __pyx_k_213[] = "Format angle in degrees into a string: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function will format the given angle in degrees, into a string\n containing degrees, arc-minutes and arc-seconds. The angle is not\n normalized into any range, but is used as such.\n\n The degrees part can be two or three digits long.\n\n Examples\n --------\n >>> tpm.fmt_d(1.234567)\n '+01D 14' 04.441\"'\n >>> tpm.fmt_d(256.9)\n '+256D 53' 59.999\"'\n >>> tpm.fmt_d(-256.9)\n '-256D 53' 59.999\"'\n >>> tpm.fmt_d(6.9)\n '+06D 54' 00.000\"'\n >>> tpm.fmt_d(-361)\n '-361D 00' 00.000\"'\n >>> tpm.fmt_d(720)\n '+720D 00' 00.000\"'\n\n "; -static char __pyx_k_214[] = "fmt_h (line 1410)"; -static char __pyx_k_215[] = "Format hours into a string: \302\261##H ##M ##.###S\".\n\n Parameters\n ----------\n d : float\n Angle in hours.\n\n Returns\n -------\n fmts : str\n String of the form \302\261##H ##M ##.###S.\n\n Notes\n -----\n This function will format the given angle in hours, into a string\n containing hours, minutes and seconds. The angle is not normalized\n into any range, but is used as such.\n\n Examples\n --------\n >>> tpm.fmt_h(1.23456)\n ' 01H 14M 04.416S'\n >>> tpm.fmt_h(13.456)\n ' 13H 27M 21.599S'\n >>> tpm.fmt_h(-13.456)\n '-13H 27M 21.599S'\n >>> tpm.fmt_h(-133.456)\n '-133H 27M 21.599S'\n\n "; -static char __pyx_k_216[] = "fmt_j (line 1444)"; -static char __pyx_k_217[] = "Format Julian date into a string.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n fmts : str\n String of the form: JD ##H ##M ##.###S.\n\n Notes\n -----\n This function takes a Julian date and returns a string that has a\n whole number Julian date and the fraction of the day expressed as\n hours, minutes and seconds in the 24-hour format.\n\n Examples\n --------\n >>> tpm.fmt_j(tpm.J2000)\n ' 2451545 00H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.5)\n ' 2451545 12H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.75)\n ' 2451545 18H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.7)\n ' 2451545 16H 48M 00.000S'\n >>> tpm.fmt_j(tpm.J2000-0.7)\n ' 2451544 07H 11M 59.999S'\n\n "; -static char __pyx_k_218[] = "fmt_r (line 1480)"; -static char __pyx_k_219[] = "Format radians into a string with angle expressed as degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form: \302\261###D ##' ##.###\".\n\n Notes\n -----\n The function converts the angle given in radians into degrees and\n then return a string of the format \302\261###D ##' ##.###\". The\n fractional part of the angle is converted into arc-minutes and\n arc-seconds, but otherwise no normalization is done.\n\n Examples\n --------\n >>> tpm.fmt_r(1.0)\n '+57D 17' 44.806\"'\n >>> tpm.fmt_r(1.2345)\n '+70D 43' 53.903\"'\n >>> tpm.fmt_r(-2*tpm.M_PI)\n '-360D 00' 00.000\"'\n >>> tpm.fmt_r(-3*tpm.M_PI)\n '-540D 00' 00.000\"'\n >>> tpm.fmt_r(3*tpm.M_PI)\n '+540D 00' 00.000\"'\n\n "; -static char __pyx_k_220[] = "fmt_y (line 1517)"; -static char __pyx_k_221[] = "Format years, including fractional part, into a string.\n\n Parameters\n ----------\n y : float\n Year, including fractional part.\n\n Returns\n -------\n fmts : str\n String of the form: AAA BBB DD HH:MM:SS.SSS YYYY, where AAA is\n the week day, BBB is the month and then the numbers that follow\n are indicate the day, the time in 24-hour format and the year.\n\n Examples\n --------\n >>> tpm.fmt_y(2000.0)\n 'Fri Dec 31 00:00:00.000 1999'\n >>> tpm.fmt_y(2000.0+1.0/366)\n 'Sat Jan 1 00:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.25/366)\n 'Sat Jan 1 06:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.7/366)\n 'Sat Jan 1 16:48:00.000 2000'\n >>> tpm.fmt_y(2001.0+32/365.0)\n 'Thu Feb 1 00:00:00.000 2001'\n\n "; -static char __pyx_k_222[] = "d2d (line 1549)"; -static char __pyx_k_223[] = "Normalize angle in degrees into (-360, 360).\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in degrees normalized into (-360, 360).\n\n Examples\n --------\n >>> tpm.d2d(0.0)\n 0.0\n >>> tpm.d2d(-360.0)\n 0.0\n >>> tpm.d2d(360.0)\n 0.0\n >>> tpm.d2d(361.0)\n 1.0\n >>> tpm.d2d(-361.0)\n 359.0\n\n "; -static char __pyx_k_224[] = "h2h (line 1579)"; -static char __pyx_k_225[] = "Normalize angle in hours into [0, 24).\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n h : float\n Angle in hours normalized into [0, 24).\n\n Examples\n --------\n >>> tpm.h2h(0.0)\n 0.0\n >>> tpm.h2h(24.0)\n 0.0\n >>> tpm.h2h(25.0)\n 1.0\n >>> tpm.h2h(-25.0)\n 23.0\n >>> tpm.h2h(-1)\n 23.0\n >>> tpm.h2h(1)\n 1.0\n\n "; -static char __pyx_k_226[] = "r2r (line 1611)"; -static char __pyx_k_227[] = "Normalize angle in radians into [0, 2\317\200).\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n r : float\n Angle in radians normalized into [0, 2\317\200).\n\n Examples\n --------\n >>> tpm.r2r(0.0)\n 0.0\n >>> tpm.r2r(2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(-tpm.M_PI/2.0)\n 4.7123889803846897\n\n "; -static char __pyx_k_228[] = "d2h (line 1646)"; -static char __pyx_k_229[] = "Convert angle in degrees into hours.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.d2h(180.0)\n 12.0\n >>> tpm.d2h(-180.0)\n -12.0\n >>> tpm.d2h(12.3456)\n 0.82303999999999999\n\n "; -static char __pyx_k_230[] = "h2d (line 1672)"; -static char __pyx_k_231[] = "Convert angle in hours into degrees.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.h2d(12.0)\n 180.0\n >>> tpm.h2d(-12.0)\n -180.0\n >>> tpm.h2d(-25)\n -375.0\n\n "; -static char __pyx_k_232[] = "d2r (line 1698)"; -static char __pyx_k_233[] = "Convert angle in degrees into degrees.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.d2r(180.0)\n 3.1415926535897931\n >>> tpm.d2r(-180.0)\n -3.1415926535897931\n >>> tpm.d2r(361.0)\n 6.3006385996995293\n\n "; -static char __pyx_k_234[] = "r2d (line 1724)"; -static char __pyx_k_235[] = "Convert angle in radians into degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.r2d(tpm.M_PI)\n 180.0\n >>> tpm.r2d(tpm.M_PI/4.0)\n 45.0\n >>> tpm.r2d(-tpm.M_PI/4.0)\n -45.0\n >>> tpm.r2d(-2*tpm.M_PI)\n -360.0\n\n "; -static char __pyx_k_236[] = "h2r (line 1752)"; -static char __pyx_k_237[] = "Convert angle in hours into radians.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.h2r(12.0)\n 3.1415926535897931\n >>> tpm.h2r(-12.0)\n -3.1415926535897931\n\n "; -static char __pyx_k_238[] = "r2h (line 1776)"; -static char __pyx_k_239[] = "Convert angle in radians into hours.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.r2h(tpm.M_PI)\n 12.0\n >>> tpm.r2h(-tpm.M_PI)\n -12.0\n\n "; -static char __pyx_k_240[] = "d2as (line 1800)"; -static char __pyx_k_241[] = "Convert angle in degrees into arc-seconds.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.d2as(1.0)\n 3600.0\n >>> tpm.d2as(-1.0)\n -3600.0\n\n "; -static char __pyx_k_242[] = "as2d (line 1824)"; -static char __pyx_k_243[] = "Convert angle in arc-seconds into degrees.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.as2d(3600.0)\n 1.0\n >>> tpm.as2d(-3600.0)\n -1.0\n\n "; -static char __pyx_k_244[] = "as2h (line 1848)"; -static char __pyx_k_245[] = "Convert angle in arc-seconds into hours.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.as2h(3600.0*180.0)\n 12.0\n >>> tpm.as2h(-3600.0*180.0)\n -12.0\n\n "; -static char __pyx_k_246[] = "h2as (line 1872)"; -static char __pyx_k_247[] = "Convert angle in hours into arc-seconds.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.h2as(12.0)\n 648000.0\n >>> tpm.h2as(-12.0)\n -648000.0\n\n "; -static char __pyx_k_248[] = "r2as (line 1896)"; -static char __pyx_k_249[] = "Convert angle in radians into arc-seconds.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.r2as(tpm.M_PI)\n 648000.0\n >>> tpm.r2as(-tpm.M_PI)\n -648000.0\n "; -static char __pyx_k_250[] = "as2r (line 1919)"; -static char __pyx_k_251[] = "Convert angle in arc-seconds into radians.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.as2r(3600.0*180.0)\n 3.1415926535897931\n >>> tpm.as2r(-3600.0*180.0)\n -3.1415926535897931\n\n "; -static char __pyx_k_252[] = "tpm_state (line 195)"; -static char __pyx_k_253[] = "Return state name given state id.\n\n Given an integer id for a state, this function returns a\n descriptive name for the state.\n\n Parameters\n ----------\n s : int\n State id.\n\n Returns\n -------\n n : str\n State name.\n\n Examples\n --------\n >>> tpm.tpm_state(tpm.TPM_S06)\n 'Helio. mean FK5'\n >>> tpm.tpm_state(tpm.TPM_S04)\n 'IAU 1958 Galactic'\n >>> tpm.tpm_state(tpm.TPM_S20)\n 'Topo. obs. HA/Dec'\n >>> tpm.tpm_state(tpm.TPM_S19)\n 'Topo. obs. Az/El'\n\n "; -static char __pyx_k__CB[] = "CB"; -static char __pyx_k__CJ[] = "CJ"; -static char __pyx_k__dd[] = "dd"; -static char __pyx_k__eb[] = "eb"; -static char __pyx_k__eh[] = "eh"; -static char __pyx_k__ep[] = "ep"; -static char __pyx_k__eq[] = "eq"; -static char __pyx_k__hh[] = "hh"; -static char __pyx_k__mm[] = "mm"; -static char __pyx_k__nm[] = "nm"; -static char __pyx_k__pm[] = "pm"; -static char __pyx_k__pp[] = "pp"; -static char __pyx_k__pv[] = "pv"; -static char __pyx_k__px[] = "px"; -static char __pyx_k__rh[] = "rh"; -static char __pyx_k__rv[] = "rv"; -static char __pyx_k__s1[] = "s1"; -static char __pyx_k__s2[] = "s2"; -static char __pyx_k__ss[] = "ss"; -static char __pyx_k__v6[] = "v6"; -static char __pyx_k__vp[] = "vp"; -static char __pyx_k__vv[] = "vv"; -static char __pyx_k__xx[] = "xx"; -static char __pyx_k__xy[] = "xy"; -static char __pyx_k__xz[] = "xz"; -static char __pyx_k__yx[] = "yx"; -static char __pyx_k__yy[] = "yy"; -static char __pyx_k__yz[] = "yz"; -static char __pyx_k__zx[] = "zx"; -static char __pyx_k__zy[] = "zy"; -static char __pyx_k__zz[] = "zz"; -static char __pyx_k__POS[] = "POS"; -static char __pyx_k__VEL[] = "VEL"; -static char __pyx_k___jd[] = "_jd"; -static char __pyx_k___m3[] = "_m3"; -static char __pyx_k___m6[] = "_m6"; -static char __pyx_k___v3[] = "_v3"; -static char __pyx_k___v6[] = "_v6"; -static char __pyx_k__alt[] = "alt"; -static char __pyx_k__c2s[] = "c2s"; -static char __pyx_k__d2d[] = "d2d"; -static char __pyx_k__d2h[] = "d2h"; -static char __pyx_k__d2r[] = "d2r"; -static char __pyx_k__doc[] = "doc"; -static char __pyx_k__end[] = "end"; -static char __pyx_k__eps[] = "eps"; -static char __pyx_k__evp[] = "evp"; -static char __pyx_k__h2d[] = "h2d"; -static char __pyx_k__h2h[] = "h2h"; -static char __pyx_k__h2r[] = "h2r"; -static char __pyx_k__hms[] = "hms"; -static char __pyx_k__j2y[] = "j2y"; -static char __pyx_k__lat[] = "lat"; -static char __pyx_k__lon[] = "lon"; -static char __pyx_k__obl[] = "obl"; -static char __pyx_k__pma[] = "pma"; -static char __pyx_k__pmd[] = "pmd"; -static char __pyx_k__pos[] = "pos"; -static char __pyx_k__r2d[] = "r2d"; -static char __pyx_k__r2h[] = "r2h"; -static char __pyx_k__r2r[] = "r2r"; -static char __pyx_k__tai[] = "tai"; -static char __pyx_k__tdb[] = "tdb"; -static char __pyx_k__tdt[] = "tdt"; -static char __pyx_k__tpm[] = "tpm"; -static char __pyx_k__ut1[] = "ut1"; -static char __pyx_k__utc[] = "utc"; -static char __pyx_k__y2j[] = "y2j"; -static char __pyx_k__ydd[] = "ydd"; -static char __pyx_k__zee[] = "zee"; -static char __pyx_k__M_PI[] = "M_PI"; -static char __pyx_k___dms[] = "_dms"; -static char __pyx_k___hms[] = "_hms"; -static char __pyx_k___ymd[] = "_ymd"; -static char __pyx_k__as2d[] = "as2d"; -static char __pyx_k__as2h[] = "as2h"; -static char __pyx_k__as2r[] = "as2r"; -static char __pyx_k__d2as[] = "d2as"; -static char __pyx_k__flag[] = "flag"; -static char __pyx_k__gast[] = "gast"; -static char __pyx_k__getX[] = "getX"; -static char __pyx_k__getY[] = "getY"; -static char __pyx_k__getZ[] = "getZ"; -static char __pyx_k__gmst[] = "gmst"; -static char __pyx_k__h2as[] = "h2as"; -static char __pyx_k__last[] = "last"; -static char __pyx_k__m3rx[] = "m3rx"; -static char __pyx_k__m3ry[] = "m3ry"; -static char __pyx_k__m3rz[] = "m3rz"; -static char __pyx_k__m6qx[] = "m6qx"; -static char __pyx_k__m6qy[] = "m6qy"; -static char __pyx_k__m6qz[] = "m6qz"; -static char __pyx_k__pvec[] = "pvec"; -static char __pyx_k__r2as[] = "r2as"; -static char __pyx_k__rdot[] = "rdot"; -static char __pyx_k__refa[] = "refa"; -static char __pyx_k__refb[] = "refb"; -static char __pyx_k__setX[] = "setX"; -static char __pyx_k__setY[] = "setY"; -static char __pyx_k__setZ[] = "setZ"; -static char __pyx_k__star[] = "star"; -static char __pyx_k__type[] = "type"; -static char __pyx_k__xdot[] = "xdot"; -static char __pyx_k__ydot[] = "ydot"; -static char __pyx_k__year[] = "year"; -static char __pyx_k__zdot[] = "zdot"; -static char __pyx_k__zeta[] = "zeta"; -static char __pyx_k__B1950[] = "B1950"; -static char __pyx_k__IAU_C[] = "IAU_C"; -static char __pyx_k__IAU_F[] = "IAU_F"; -static char __pyx_k__IAU_K[] = "IAU_K"; -static char __pyx_k__IAU_W[] = "IAU_W"; -static char __pyx_k__J1984[] = "J1984"; -static char __pyx_k__J2000[] = "J2000"; -static char __pyx_k__MJD_0[] = "MJD_0"; -static char __pyx_k__POLAR[] = "POLAR"; -static char __pyx_k___pvec[] = "_pvec"; -static char __pyx_k__alpha[] = "alpha"; -static char __pyx_k__ctype[] = "ctype"; -static char __pyx_k__delta[] = "delta"; -static char __pyx_k__earth[] = "earth"; -static char __pyx_k__ellab[] = "ellab"; -static char __pyx_k__et2ut[] = "et2ut"; -static char __pyx_k__fk425[] = "fk425"; -static char __pyx_k__fk524[] = "fk524"; -static char __pyx_k__fmt_d[] = "fmt_d"; -static char __pyx_k__fmt_h[] = "fmt_h"; -static char __pyx_k__fmt_j[] = "fmt_j"; -static char __pyx_k__fmt_r[] = "fmt_r"; -static char __pyx_k__fmt_y[] = "fmt_y"; -static char __pyx_k__getM3[] = "getM3"; -static char __pyx_k__getM6[] = "getM6"; -static char __pyx_k__getV3[] = "getV3"; -static char __pyx_k__getV6[] = "getV6"; -static char __pyx_k__j2dow[] = "j2dow"; -static char __pyx_k__obs_m[] = "obs_m"; -static char __pyx_k__obs_s[] = "obs_s"; -static char __pyx_k__obs_t[] = "obs_t"; -static char __pyx_k__pflag[] = "pflag"; -static char __pyx_k__range[] = "range"; -static char __pyx_k__refco[] = "refco"; -static char __pyx_k__setM3[] = "setM3"; -static char __pyx_k__setM6[] = "setM6"; -static char __pyx_k__setV3[] = "setV3"; -static char __pyx_k__setV6[] = "setV6"; -static char __pyx_k__sflag[] = "sflag"; -static char __pyx_k__start[] = "start"; -static char __pyx_k__theta[] = "theta"; -static char __pyx_k__ut2et[] = "ut2et"; -static char __pyx_k__vtype[] = "vtype"; -static char __pyx_k__xpole[] = "xpole"; -static char __pyx_k__y2doy[] = "y2doy"; -static char __pyx_k__ypole[] = "ypole"; -static char __pyx_k__FRIDAY[] = "FRIDAY"; -static char __pyx_k__GAL_RA[] = "GAL_RA"; -static char __pyx_k__IAU_AU[] = "IAU_AU"; -static char __pyx_k__IAU_DM[] = "IAU_DM"; -static char __pyx_k__IAU_RE[] = "IAU_RE"; -static char __pyx_k__IAU_RM[] = "IAU_RM"; -static char __pyx_k__MONDAY[] = "MONDAY"; -static char __pyx_k__SUNDAY[] = "SUNDAY"; -static char __pyx_k____getH[] = "__getH"; -static char __pyx_k____getP[] = "__getP"; -static char __pyx_k____getT[] = "__getT"; -static char __pyx_k____getm[] = "__getm"; -static char __pyx_k____getr[] = "__getr"; -static char __pyx_k____getx[] = "__getx"; -static char __pyx_k____gety[] = "__gety"; -static char __pyx_k____getz[] = "__getz"; -static char __pyx_k____setH[] = "__setH"; -static char __pyx_k____setP[] = "__setP"; -static char __pyx_k____setT[] = "__setT"; -static char __pyx_k____setm[] = "__setm"; -static char __pyx_k____setr[] = "__setr"; -static char __pyx_k____setx[] = "__setx"; -static char __pyx_k____sety[] = "__sety"; -static char __pyx_k____setz[] = "__setz"; -static char __pyx_k__action[] = "action"; -static char __pyx_k__cat2v6[] = "cat2v6"; -static char __pyx_k__et2tai[] = "et2tai"; -static char __pyx_k__et2tdb[] = "et2tdb"; -static char __pyx_k__et2tdt[] = "et2tdt"; -static char __pyx_k__et2ut1[] = "et2ut1"; -static char __pyx_k__et2utc[] = "et2utc"; -static char __pyx_k__eterms[] = "eterms"; -static char __pyx_k__format[] = "format"; -static char __pyx_k__gcal2j[] = "gcal2j"; -static char __pyx_k__getPOS[] = "getPOS"; -static char __pyx_k__j2gcal[] = "j2gcal"; -static char __pyx_k__j2jcal[] = "j2jcal"; -static char __pyx_k__jcal2j[] = "jcal2j"; -static char __pyx_k__jd_now[] = "jd_now"; -static char __pyx_k__nalpha[] = "nalpha"; -static char __pyx_k__ndelta[] = "ndelta"; -static char __pyx_k__setPOS[] = "setPOS"; -static char __pyx_k__tai2et[] = "tai2et"; -static char __pyx_k__tdt2et[] = "tdt2et"; -static char __pyx_k__tstate[] = "tstate"; -static char __pyx_k__ut12et[] = "ut12et"; -static char __pyx_k__utc2et[] = "utc2et"; -static char __pyx_k__v62cat[] = "v62cat"; -static char __pyx_k__zeedot[] = "zeedot"; -static char __pyx_k__GAL_DEC[] = "GAL_DEC"; -static char __pyx_k__GAL_LON[] = "GAL_LON"; -static char __pyx_k__TPM_ALL[] = "TPM_ALL"; -static char __pyx_k__TPM_S00[] = "TPM_S00"; -static char __pyx_k__TPM_S01[] = "TPM_S01"; -static char __pyx_k__TPM_S02[] = "TPM_S02"; -static char __pyx_k__TPM_S03[] = "TPM_S03"; -static char __pyx_k__TPM_S04[] = "TPM_S04"; -static char __pyx_k__TPM_S05[] = "TPM_S05"; -static char __pyx_k__TPM_S06[] = "TPM_S06"; -static char __pyx_k__TPM_S07[] = "TPM_S07"; -static char __pyx_k__TPM_S08[] = "TPM_S08"; -static char __pyx_k__TPM_S09[] = "TPM_S09"; -static char __pyx_k__TPM_S10[] = "TPM_S10"; -static char __pyx_k__TPM_S11[] = "TPM_S11"; -static char __pyx_k__TPM_S12[] = "TPM_S12"; -static char __pyx_k__TPM_S13[] = "TPM_S13"; -static char __pyx_k__TPM_S14[] = "TPM_S14"; -static char __pyx_k__TPM_S15[] = "TPM_S15"; -static char __pyx_k__TPM_S16[] = "TPM_S16"; -static char __pyx_k__TPM_S17[] = "TPM_S17"; -static char __pyx_k__TPM_S18[] = "TPM_S18"; -static char __pyx_k__TPM_S19[] = "TPM_S19"; -static char __pyx_k__TPM_S20[] = "TPM_S20"; -static char __pyx_k__TPM_S21[] = "TPM_S21"; -static char __pyx_k__TPM_T00[] = "TPM_T00"; -static char __pyx_k__TPM_T01[] = "TPM_T01"; -static char __pyx_k__TPM_T02[] = "TPM_T02"; -static char __pyx_k__TPM_T03[] = "TPM_T03"; -static char __pyx_k__TPM_T04[] = "TPM_T04"; -static char __pyx_k__TPM_T05[] = "TPM_T05"; -static char __pyx_k__TPM_T06[] = "TPM_T06"; -static char __pyx_k__TPM_T07[] = "TPM_T07"; -static char __pyx_k__TPM_T08[] = "TPM_T08"; -static char __pyx_k__TPM_T09[] = "TPM_T09"; -static char __pyx_k__TPM_T10[] = "TPM_T10"; -static char __pyx_k__TPM_T11[] = "TPM_T11"; -static char __pyx_k__TPM_T12[] = "TPM_T12"; -static char __pyx_k__TPM_T13[] = "TPM_T13"; -static char __pyx_k__TPM_T14[] = "TPM_T14"; -static char __pyx_k__TPM_T15[] = "TPM_T15"; -static char __pyx_k__TUESDAY[] = "TUESDAY"; -static char __pyx_k____getPP[] = "__getPP"; -static char __pyx_k____getPV[] = "__getPV"; -static char __pyx_k____getVP[] = "__getVP"; -static char __pyx_k____getVV[] = "__getVV"; -static char __pyx_k____getdd[] = "__getdd"; -static char __pyx_k____geteb[] = "__geteb"; -static char __pyx_k____geteh[] = "__geteh"; -static char __pyx_k____gethh[] = "__gethh"; -static char __pyx_k____getmm[] = "__getmm"; -static char __pyx_k____getnm[] = "__getnm"; -static char __pyx_k____getpm[] = "__getpm"; -static char __pyx_k____getss[] = "__getss"; -static char __pyx_k____getxx[] = "__getxx"; -static char __pyx_k____getxy[] = "__getxy"; -static char __pyx_k____getxz[] = "__getxz"; -static char __pyx_k____getyx[] = "__getyx"; -static char __pyx_k____getyy[] = "__getyy"; -static char __pyx_k____getyz[] = "__getyz"; -static char __pyx_k____getzx[] = "__getzx"; -static char __pyx_k____getzy[] = "__getzy"; -static char __pyx_k____getzz[] = "__getzz"; -static char __pyx_k____setPP[] = "__setPP"; -static char __pyx_k____setPV[] = "__setPV"; -static char __pyx_k____setVP[] = "__setVP"; -static char __pyx_k____setVV[] = "__setVV"; -static char __pyx_k____setdd[] = "__setdd"; -static char __pyx_k____sethh[] = "__sethh"; -static char __pyx_k____setmm[] = "__setmm"; -static char __pyx_k____setss[] = "__setss"; -static char __pyx_k____setxx[] = "__setxx"; -static char __pyx_k____setxy[] = "__setxy"; -static char __pyx_k____setxz[] = "__setxz"; -static char __pyx_k____setyx[] = "__setyx"; -static char __pyx_k____setyy[] = "__setyy"; -static char __pyx_k____setyz[] = "__setyz"; -static char __pyx_k____setzx[] = "__setzx"; -static char __pyx_k____setzy[] = "__setzy"; -static char __pyx_k____setzz[] = "__setzz"; -static char __pyx_k___tstate[] = "_tstate"; -static char __pyx_k__degrees[] = "degrees"; -static char __pyx_k__delta_T[] = "delta_T"; -static char __pyx_k__ecl2equ[] = "ecl2equ"; -static char __pyx_k__equ2ecl[] = "equ2ecl"; -static char __pyx_k__equ2gal[] = "equ2gal"; -static char __pyx_k__gal2equ[] = "gal2equ"; -static char __pyx_k__getType[] = "getType"; -static char __pyx_k__getXdot[] = "getXdot"; -static char __pyx_k__getYdot[] = "getYdot"; -static char __pyx_k__getZdot[] = "getZdot"; -static char __pyx_k__m3rxdot[] = "m3rxdot"; -static char __pyx_k__m3rydot[] = "m3rydot"; -static char __pyx_k__m3rzdot[] = "m3rzdot"; -static char __pyx_k__nut_lon[] = "nut_lon"; -static char __pyx_k__nut_obl[] = "nut_obl"; -static char __pyx_k__precess[] = "precess"; -static char __pyx_k__refract[] = "refract"; -static char __pyx_k__setType[] = "setType"; -static char __pyx_k__setXdot[] = "setXdot"; -static char __pyx_k__setYdot[] = "setYdot"; -static char __pyx_k__setZdot[] = "setZdot"; -static char __pyx_k__tai2tdb[] = "tai2tdb"; -static char __pyx_k__tai2tdt[] = "tai2tdt"; -static char __pyx_k__tai2ut1[] = "tai2ut1"; -static char __pyx_k__tai2utc[] = "tai2utc"; -static char __pyx_k__tdt2tai[] = "tdt2tai"; -static char __pyx_k__tdt2tdb[] = "tdt2tdb"; -static char __pyx_k__tdt2ut1[] = "tdt2ut1"; -static char __pyx_k__tdt2utc[] = "tdt2utc"; -static char __pyx_k__ut12tai[] = "ut12tai"; -static char __pyx_k__ut12tdb[] = "ut12tdb"; -static char __pyx_k__ut12tdt[] = "ut12tdt"; -static char __pyx_k__ut12utc[] = "ut12utc"; -static char __pyx_k__ut2gmst[] = "ut2gmst"; -static char __pyx_k__utc2tdb[] = "utc2tdb"; -static char __pyx_k__utc2tdt[] = "utc2tdt"; -static char __pyx_k__utc2ut1[] = "utc2ut1"; -static char __pyx_k__utc_now[] = "utc_now"; -static char __pyx_k__zetadot[] = "zetadot"; -static char __pyx_k__SATURDAY[] = "SATURDAY"; -static char __pyx_k__THURSDAY[] = "THURSDAY"; -static char __pyx_k__TPM_FAST[] = "TPM_FAST"; -static char __pyx_k__TPM_INIT[] = "TPM_INIT"; -static char __pyx_k__TPM_SLOW[] = "TPM_SLOW"; -static char __pyx_k____getPOS[] = "__getPOS"; -static char __pyx_k____getalt[] = "__getalt"; -static char __pyx_k____getlat[] = "__getlat"; -static char __pyx_k____getlon[] = "__getlon"; -static char __pyx_k____gettai[] = "__gettai"; -static char __pyx_k____gettdb[] = "__gettdb"; -static char __pyx_k____gettdt[] = "__gettdt"; -static char __pyx_k____getut1[] = "__getut1"; -static char __pyx_k____getutc[] = "__getutc"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____setPOS[] = "__setPOS"; -static char __pyx_k____setalt[] = "__setalt"; -static char __pyx_k____setlat[] = "__setlat"; -static char __pyx_k____setlon[] = "__setlon"; -static char __pyx_k____setutc[] = "__setutc"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__aberrate[] = "aberrate"; -static char __pyx_k__alphadot[] = "alphadot"; -static char __pyx_k__byear2jd[] = "byear2jd"; -static char __pyx_k__delta_AT[] = "delta_AT"; -static char __pyx_k__delta_ET[] = "delta_ET"; -static char __pyx_k__delta_TT[] = "delta_TT"; -static char __pyx_k__delta_UT[] = "delta_UT"; -static char __pyx_k__delta_at[] = "delta_at"; -static char __pyx_k__delta_ut[] = "delta_ut"; -static char __pyx_k__deltadot[] = "deltadot"; -static char __pyx_k__jd2byear[] = "jd2byear"; -static char __pyx_k__jd2jyear[] = "jd2jyear"; -static char __pyx_k__jyear2jd[] = "jyear2jd"; -static char __pyx_k__latitude[] = "latitude"; -static char __pyx_k__ldeflect[] = "ldeflect"; -static char __pyx_k__property[] = "property"; -static char __pyx_k__thetadot[] = "thetadot"; -static char __pyx_k__tpm_data[] = "tpm_data"; -static char __pyx_k__ut12gmst[] = "ut12gmst"; -static char __pyx_k__CARTESIAN[] = "CARTESIAN"; -static char __pyx_k__IAU_KAPPA[] = "IAU_KAPPA"; -static char __pyx_k__SPHERICAL[] = "SPHERICAL"; -static char __pyx_k__TypeError[] = "TypeError"; -static char __pyx_k__WEDNESDAY[] = "WEDNESDAY"; -static char __pyx_k____class__[] = "__class__"; -static char __pyx_k____getgast[] = "__getgast"; -static char __pyx_k____getgmst[] = "__getgmst"; -static char __pyx_k____getlast[] = "__getlast"; -static char __pyx_k____getrdot[] = "__getrdot"; -static char __pyx_k____getrefa[] = "__getrefa"; -static char __pyx_k____getrefb[] = "__getrefb"; -static char __pyx_k____getxdot[] = "__getxdot"; -static char __pyx_k____getydot[] = "__getydot"; -static char __pyx_k____getzdot[] = "__getzdot"; -static char __pyx_k____setrdot[] = "__setrdot"; -static char __pyx_k____setxdot[] = "__setxdot"; -static char __pyx_k____setydot[] = "__setydot"; -static char __pyx_k____setzdot[] = "__setzdot"; -static char __pyx_k__fmt_alpha[] = "fmt_alpha"; -static char __pyx_k__fmt_delta[] = "fmt_delta"; -static char __pyx_k__geod2geoc[] = "geod2geoc"; -static char __pyx_k__nutations[] = "nutations"; -static char __pyx_k__obliquity[] = "obliquity"; -static char __pyx_k__precess_m[] = "precess_m"; -static char __pyx_k__tpm_state[] = "tpm_state"; -static char __pyx_k__IndexError[] = "IndexError"; -static char __pyx_k__TARGET_ECL[] = "TARGET_ECL"; -static char __pyx_k__TARGET_FK4[] = "TARGET_FK4"; -static char __pyx_k__TARGET_FK5[] = "TARGET_FK5"; -static char __pyx_k__TARGET_GAL[] = "TARGET_GAL"; -static char __pyx_k__TPM_MEDIUM[] = "TPM_MEDIUM"; -static char __pyx_k__ValueError[] = "ValueError"; -static char __pyx_k____get_pvec[] = "__get_pvec"; -static char __pyx_k____getalpha[] = "__getalpha"; -static char __pyx_k____getdelta[] = "__getdelta"; -static char __pyx_k____getobs_m[] = "__getobs_m"; -static char __pyx_k____getobs_s[] = "__getobs_s"; -static char __pyx_k____getobs_t[] = "__getobs_t"; -static char __pyx_k____getxpole[] = "__getxpole"; -static char __pyx_k____getypole[] = "__getypole"; -static char __pyx_k____set_pvec[] = "__set_pvec"; -static char __pyx_k____setalpha[] = "__setalpha"; -static char __pyx_k____setdelta[] = "__setdelta"; -static char __pyx_k____setxpole[] = "__setxpole"; -static char __pyx_k____setypole[] = "__setypole"; -static char __pyx_k__azel2hadec[] = "azel2hadec"; -static char __pyx_k__hadec2azel[] = "hadec2azel"; -static char __pyx_k__valid_keys[] = "valid_keys"; -static char __pyx_k__wavelength[] = "wavelength"; -static char __pyx_k__N_TPM_TRANS[] = "N_TPM_TRANS"; -static char __pyx_k__PRECESS_FK4[] = "PRECESS_FK4"; -static char __pyx_k__PRECESS_FK5[] = "PRECESS_FK5"; -static char __pyx_k____getnalpha[] = "__getnalpha"; -static char __pyx_k____getndelta[] = "__getndelta"; -static char __pyx_k__N_TPM_STATES[] = "N_TPM_STATES"; -static char __pyx_k__TARGET_HADEC[] = "TARGET_HADEC"; -static char __pyx_k____get_tstate[] = "__get_tstate"; -static char __pyx_k____getnut_lon[] = "__getnut_lon"; -static char __pyx_k____getnut_obl[] = "__getnut_obl"; -static char __pyx_k____set_tstate[] = "__set_tstate"; -static char __pyx_k__eccentricity[] = "eccentricity"; -static char __pyx_k____getalphadot[] = "__getalphadot"; -static char __pyx_k____getdelta_at[] = "__getdelta_at"; -static char __pyx_k____getdelta_ut[] = "__getdelta_ut"; -static char __pyx_k____getdeltadot[] = "__getdeltadot"; -static char __pyx_k____setalphadot[] = "__setalphadot"; -static char __pyx_k____setdelta_at[] = "__setdelta_at"; -static char __pyx_k____setdelta_ut[] = "__setdelta_ut"; -static char __pyx_k____setdeltadot[] = "__setdeltadot"; -static char __pyx_k__obliquity_dot[] = "obliquity_dot"; -static char __pyx_k__proper_motion[] = "proper_motion"; -static char __pyx_k__solar_perigee[] = "solar_perigee"; -static char __pyx_k__PRECESS_LIESKE[] = "PRECESS_LIESKE"; -static char __pyx_k__TPM_REFRACTION[] = "TPM_REFRACTION"; -static char __pyx_k____getobliquity[] = "__getobliquity"; -static char __pyx_k__PRECESS_ANDOYER[] = "PRECESS_ANDOYER"; -static char __pyx_k__PRECESS_NEWCOMB[] = "PRECESS_NEWCOMB"; -static char __pyx_k__TARGET_APP_AZEL[] = "TARGET_APP_AZEL"; -static char __pyx_k__TARGET_OBS_AZEL[] = "TARGET_OBS_AZEL"; -static char __pyx_k__TARGET_OBS_WHAM[] = "TARGET_OBS_WHAM"; -static char __pyx_k__TARGET_TOP_AZEL[] = "TARGET_TOP_AZEL"; -static char __pyx_k____getwavelength[] = "__getwavelength"; -static char __pyx_k____setwavelength[] = "__setwavelength"; -static char __pyx_k__PRECESS_INERTIAL[] = "PRECESS_INERTIAL"; -static char __pyx_k__PRECESS_ROTATING[] = "PRECESS_ROTATING"; -static char __pyx_k__TARGET_APP_HADEC[] = "TARGET_APP_HADEC"; -static char __pyx_k__TARGET_OBS_HADEC[] = "TARGET_OBS_HADEC"; -static char __pyx_k__eccentricity_dot[] = "eccentricity_dot"; -static char __pyx_k__PRECESS_KINOSHITA[] = "PRECESS_KINOSHITA"; -static char __pyx_k__solar_perigee_dot[] = "solar_perigee_dot"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_100; -static PyObject *__pyx_kp_s_101; -static PyObject *__pyx_kp_s_102; -static PyObject *__pyx_kp_s_103; -static PyObject *__pyx_kp_s_104; -static PyObject *__pyx_kp_s_105; -static PyObject *__pyx_kp_s_106; -static PyObject *__pyx_kp_s_107; -static PyObject *__pyx_kp_s_108; -static PyObject *__pyx_kp_s_109; -static PyObject *__pyx_kp_s_110; -static PyObject *__pyx_kp_s_111; -static PyObject *__pyx_kp_s_112; -static PyObject *__pyx_kp_s_113; -static PyObject *__pyx_kp_s_114; -static PyObject *__pyx_kp_s_115; -static PyObject *__pyx_kp_s_116; -static PyObject *__pyx_kp_s_117; -static PyObject *__pyx_kp_s_118; -static PyObject *__pyx_kp_s_119; -static PyObject *__pyx_kp_s_120; -static PyObject *__pyx_kp_s_121; -static PyObject *__pyx_kp_s_122; -static PyObject *__pyx_kp_s_123; -static PyObject *__pyx_kp_s_124; -static PyObject *__pyx_kp_s_125; -static PyObject *__pyx_kp_s_126; -static PyObject *__pyx_kp_s_127; -static PyObject *__pyx_kp_s_128; -static PyObject *__pyx_kp_s_129; -static PyObject *__pyx_kp_s_130; -static PyObject *__pyx_kp_s_131; -static PyObject *__pyx_kp_s_132; -static PyObject *__pyx_kp_s_133; -static PyObject *__pyx_kp_s_134; -static PyObject *__pyx_kp_s_135; -static PyObject *__pyx_kp_s_136; -static PyObject *__pyx_kp_s_137; -static PyObject *__pyx_kp_s_138; -static PyObject *__pyx_kp_s_139; -static PyObject *__pyx_kp_s_140; -static PyObject *__pyx_kp_s_141; -static PyObject *__pyx_kp_s_142; -static PyObject *__pyx_kp_s_143; -static PyObject *__pyx_kp_s_144; -static PyObject *__pyx_kp_s_145; -static PyObject *__pyx_kp_s_146; -static PyObject *__pyx_kp_s_147; -static PyObject *__pyx_kp_s_148; -static PyObject *__pyx_kp_s_149; -static PyObject *__pyx_kp_s_150; -static PyObject *__pyx_kp_s_151; -static PyObject *__pyx_kp_s_152; -static PyObject *__pyx_kp_s_153; -static PyObject *__pyx_kp_s_154; -static PyObject *__pyx_kp_s_155; -static PyObject *__pyx_kp_s_156; -static PyObject *__pyx_kp_s_157; -static PyObject *__pyx_kp_s_158; -static PyObject *__pyx_kp_s_159; -static PyObject *__pyx_kp_u_160; -static PyObject *__pyx_kp_u_161; -static PyObject *__pyx_kp_u_162; -static PyObject *__pyx_kp_u_163; -static PyObject *__pyx_kp_u_164; -static PyObject *__pyx_kp_u_165; -static PyObject *__pyx_kp_u_166; -static PyObject *__pyx_kp_u_167; -static PyObject *__pyx_kp_u_168; -static PyObject *__pyx_kp_u_169; -static PyObject *__pyx_kp_s_17; -static PyObject *__pyx_kp_u_170; -static PyObject *__pyx_kp_u_171; -static PyObject *__pyx_kp_u_172; -static PyObject *__pyx_kp_u_173; -static PyObject *__pyx_kp_u_174; -static PyObject *__pyx_kp_u_175; -static PyObject *__pyx_kp_u_176; -static PyObject *__pyx_kp_u_177; -static PyObject *__pyx_kp_u_178; -static PyObject *__pyx_kp_u_179; -static PyObject *__pyx_kp_s_18; -static PyObject *__pyx_kp_u_180; -static PyObject *__pyx_kp_u_181; -static PyObject *__pyx_kp_u_182; -static PyObject *__pyx_kp_u_183; -static PyObject *__pyx_kp_u_184; -static PyObject *__pyx_kp_u_185; -static PyObject *__pyx_kp_u_186; -static PyObject *__pyx_kp_u_187; -static PyObject *__pyx_kp_u_188; -static PyObject *__pyx_kp_u_189; -static PyObject *__pyx_kp_u_190; -static PyObject *__pyx_kp_u_191; -static PyObject *__pyx_kp_u_192; -static PyObject *__pyx_kp_u_193; -static PyObject *__pyx_kp_u_194; -static PyObject *__pyx_kp_u_195; -static PyObject *__pyx_kp_u_196; -static PyObject *__pyx_kp_u_197; -static PyObject *__pyx_kp_u_198; -static PyObject *__pyx_kp_u_199; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_u_200; -static PyObject *__pyx_kp_u_201; -static PyObject *__pyx_kp_u_202; -static PyObject *__pyx_kp_u_203; -static PyObject *__pyx_kp_u_204; -static PyObject *__pyx_kp_u_205; -static PyObject *__pyx_kp_u_206; -static PyObject *__pyx_kp_u_207; -static PyObject *__pyx_kp_u_208; -static PyObject *__pyx_kp_u_209; -static PyObject *__pyx_kp_u_210; -static PyObject *__pyx_kp_u_211; -static PyObject *__pyx_kp_u_212; -static PyObject *__pyx_kp_u_213; -static PyObject *__pyx_kp_u_214; -static PyObject *__pyx_kp_u_215; -static PyObject *__pyx_kp_u_216; -static PyObject *__pyx_kp_u_217; -static PyObject *__pyx_kp_u_218; -static PyObject *__pyx_kp_u_219; -static PyObject *__pyx_kp_s_22; -static PyObject *__pyx_kp_u_220; -static PyObject *__pyx_kp_u_221; -static PyObject *__pyx_kp_u_222; -static PyObject *__pyx_kp_u_223; -static PyObject *__pyx_kp_u_224; -static PyObject *__pyx_kp_u_225; -static PyObject *__pyx_kp_u_226; -static PyObject *__pyx_kp_u_227; -static PyObject *__pyx_kp_u_228; -static PyObject *__pyx_kp_u_229; -static PyObject *__pyx_kp_s_23; -static PyObject *__pyx_kp_u_230; -static PyObject *__pyx_kp_u_231; -static PyObject *__pyx_kp_u_232; -static PyObject *__pyx_kp_u_233; -static PyObject *__pyx_kp_u_234; -static PyObject *__pyx_kp_u_235; -static PyObject *__pyx_kp_u_236; -static PyObject *__pyx_kp_u_237; -static PyObject *__pyx_kp_u_238; -static PyObject *__pyx_kp_u_239; -static PyObject *__pyx_kp_u_240; -static PyObject *__pyx_kp_u_241; -static PyObject *__pyx_kp_u_242; -static PyObject *__pyx_kp_u_243; -static PyObject *__pyx_kp_u_244; -static PyObject *__pyx_kp_u_245; -static PyObject *__pyx_kp_u_246; -static PyObject *__pyx_kp_u_247; -static PyObject *__pyx_kp_u_248; -static PyObject *__pyx_kp_u_249; -static PyObject *__pyx_kp_u_250; -static PyObject *__pyx_kp_u_251; -static PyObject *__pyx_kp_u_252; -static PyObject *__pyx_kp_u_253; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_31; -static PyObject *__pyx_kp_s_38; -static PyObject *__pyx_kp_s_39; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_kp_s_40; -static PyObject *__pyx_kp_s_41; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_67; -static PyObject *__pyx_kp_s_68; -static PyObject *__pyx_kp_s_69; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_kp_s_70; -static PyObject *__pyx_kp_s_71; -static PyObject *__pyx_kp_s_8; -static PyObject *__pyx_kp_s_84; -static PyObject *__pyx_kp_s_85; -static PyObject *__pyx_kp_s_86; -static PyObject *__pyx_kp_s_88; -static PyObject *__pyx_kp_s_89; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_kp_s_90; -static PyObject *__pyx_kp_s_92; -static PyObject *__pyx_kp_s_93; -static PyObject *__pyx_kp_s_94; -static PyObject *__pyx_kp_s_95; -static PyObject *__pyx_kp_s_96; -static PyObject *__pyx_kp_s_97; -static PyObject *__pyx_n_s_99; -static PyObject *__pyx_n_s__B1950; -static PyObject *__pyx_n_s__C; -static PyObject *__pyx_n_s__CARTESIAN; -static PyObject *__pyx_n_s__CB; -static PyObject *__pyx_n_s__CJ; -static PyObject *__pyx_n_s__FRIDAY; -static PyObject *__pyx_n_s__GAL_DEC; -static PyObject *__pyx_n_s__GAL_LON; -static PyObject *__pyx_n_s__GAL_RA; -static PyObject *__pyx_n_s__H; -static PyObject *__pyx_n_s__IAU_AU; -static PyObject *__pyx_n_s__IAU_C; -static PyObject *__pyx_n_s__IAU_DM; -static PyObject *__pyx_n_s__IAU_F; -static PyObject *__pyx_n_s__IAU_K; -static PyObject *__pyx_n_s__IAU_KAPPA; -static PyObject *__pyx_n_s__IAU_RE; -static PyObject *__pyx_n_s__IAU_RM; -static PyObject *__pyx_n_s__IAU_W; -static PyObject *__pyx_n_s__IndexError; -static PyObject *__pyx_n_s__J1984; -static PyObject *__pyx_n_s__J2000; -static PyObject *__pyx_n_s__MJD_0; -static PyObject *__pyx_n_s__MONDAY; -static PyObject *__pyx_n_s__M_PI; -static PyObject *__pyx_n_s__N_TPM_STATES; -static PyObject *__pyx_n_s__N_TPM_TRANS; -static PyObject *__pyx_n_s__P; -static PyObject *__pyx_n_s__POLAR; -static PyObject *__pyx_n_s__POS; -static PyObject *__pyx_n_s__PRECESS_ANDOYER; -static PyObject *__pyx_n_s__PRECESS_FK4; -static PyObject *__pyx_n_s__PRECESS_FK5; -static PyObject *__pyx_n_s__PRECESS_INERTIAL; -static PyObject *__pyx_n_s__PRECESS_KINOSHITA; -static PyObject *__pyx_n_s__PRECESS_LIESKE; -static PyObject *__pyx_n_s__PRECESS_NEWCOMB; -static PyObject *__pyx_n_s__PRECESS_ROTATING; -static PyObject *__pyx_n_s__SATURDAY; -static PyObject *__pyx_n_s__SPHERICAL; -static PyObject *__pyx_n_s__SUNDAY; -static PyObject *__pyx_n_s__T; -static PyObject *__pyx_n_s__TARGET_APP_AZEL; -static PyObject *__pyx_n_s__TARGET_APP_HADEC; -static PyObject *__pyx_n_s__TARGET_ECL; -static PyObject *__pyx_n_s__TARGET_FK4; -static PyObject *__pyx_n_s__TARGET_FK5; -static PyObject *__pyx_n_s__TARGET_GAL; -static PyObject *__pyx_n_s__TARGET_HADEC; -static PyObject *__pyx_n_s__TARGET_OBS_AZEL; -static PyObject *__pyx_n_s__TARGET_OBS_HADEC; -static PyObject *__pyx_n_s__TARGET_OBS_WHAM; -static PyObject *__pyx_n_s__TARGET_TOP_AZEL; -static PyObject *__pyx_n_s__THURSDAY; -static PyObject *__pyx_n_s__TPM_ALL; -static PyObject *__pyx_n_s__TPM_FAST; -static PyObject *__pyx_n_s__TPM_INIT; -static PyObject *__pyx_n_s__TPM_MEDIUM; -static PyObject *__pyx_n_s__TPM_REFRACTION; -static PyObject *__pyx_n_s__TPM_S00; -static PyObject *__pyx_n_s__TPM_S01; -static PyObject *__pyx_n_s__TPM_S02; -static PyObject *__pyx_n_s__TPM_S03; -static PyObject *__pyx_n_s__TPM_S04; -static PyObject *__pyx_n_s__TPM_S05; -static PyObject *__pyx_n_s__TPM_S06; -static PyObject *__pyx_n_s__TPM_S07; -static PyObject *__pyx_n_s__TPM_S08; -static PyObject *__pyx_n_s__TPM_S09; -static PyObject *__pyx_n_s__TPM_S10; -static PyObject *__pyx_n_s__TPM_S11; -static PyObject *__pyx_n_s__TPM_S12; -static PyObject *__pyx_n_s__TPM_S13; -static PyObject *__pyx_n_s__TPM_S14; -static PyObject *__pyx_n_s__TPM_S15; -static PyObject *__pyx_n_s__TPM_S16; -static PyObject *__pyx_n_s__TPM_S17; -static PyObject *__pyx_n_s__TPM_S18; -static PyObject *__pyx_n_s__TPM_S19; -static PyObject *__pyx_n_s__TPM_S20; -static PyObject *__pyx_n_s__TPM_S21; -static PyObject *__pyx_n_s__TPM_SLOW; -static PyObject *__pyx_n_s__TPM_T00; -static PyObject *__pyx_n_s__TPM_T01; -static PyObject *__pyx_n_s__TPM_T02; -static PyObject *__pyx_n_s__TPM_T03; -static PyObject *__pyx_n_s__TPM_T04; -static PyObject *__pyx_n_s__TPM_T05; -static PyObject *__pyx_n_s__TPM_T06; -static PyObject *__pyx_n_s__TPM_T07; -static PyObject *__pyx_n_s__TPM_T08; -static PyObject *__pyx_n_s__TPM_T09; -static PyObject *__pyx_n_s__TPM_T10; -static PyObject *__pyx_n_s__TPM_T11; -static PyObject *__pyx_n_s__TPM_T12; -static PyObject *__pyx_n_s__TPM_T13; -static PyObject *__pyx_n_s__TPM_T14; -static PyObject *__pyx_n_s__TPM_T15; -static PyObject *__pyx_n_s__TUESDAY; -static PyObject *__pyx_n_s__TypeError; -static PyObject *__pyx_n_s__VEL; -static PyObject *__pyx_n_s__ValueError; -static PyObject *__pyx_n_s__WEDNESDAY; -static PyObject *__pyx_n_s__X; -static PyObject *__pyx_n_s__Y; -static PyObject *__pyx_n_s__Z; -static PyObject *__pyx_n_s____class__; -static PyObject *__pyx_n_s____getH; -static PyObject *__pyx_n_s____getP; -static PyObject *__pyx_n_s____getPOS; -static PyObject *__pyx_n_s____getPP; -static PyObject *__pyx_n_s____getPV; -static PyObject *__pyx_n_s____getT; -static PyObject *__pyx_n_s____getVP; -static PyObject *__pyx_n_s____getVV; -static PyObject *__pyx_n_s____get_pvec; -static PyObject *__pyx_n_s____get_tstate; -static PyObject *__pyx_n_s____getalpha; -static PyObject *__pyx_n_s____getalphadot; -static PyObject *__pyx_n_s____getalt; -static PyObject *__pyx_n_s____getdd; -static PyObject *__pyx_n_s____getdelta; -static PyObject *__pyx_n_s____getdelta_at; -static PyObject *__pyx_n_s____getdelta_ut; -static PyObject *__pyx_n_s____getdeltadot; -static PyObject *__pyx_n_s____geteb; -static PyObject *__pyx_n_s____geteh; -static PyObject *__pyx_n_s____getgast; -static PyObject *__pyx_n_s____getgmst; -static PyObject *__pyx_n_s____gethh; -static PyObject *__pyx_n_s____getlast; -static PyObject *__pyx_n_s____getlat; -static PyObject *__pyx_n_s____getlon; -static PyObject *__pyx_n_s____getm; -static PyObject *__pyx_n_s____getmm; -static PyObject *__pyx_n_s____getnalpha; -static PyObject *__pyx_n_s____getndelta; -static PyObject *__pyx_n_s____getnm; -static PyObject *__pyx_n_s____getnut_lon; -static PyObject *__pyx_n_s____getnut_obl; -static PyObject *__pyx_n_s____getobliquity; -static PyObject *__pyx_n_s____getobs_m; -static PyObject *__pyx_n_s____getobs_s; -static PyObject *__pyx_n_s____getobs_t; -static PyObject *__pyx_n_s____getpm; -static PyObject *__pyx_n_s____getr; -static PyObject *__pyx_n_s____getrdot; -static PyObject *__pyx_n_s____getrefa; -static PyObject *__pyx_n_s____getrefb; -static PyObject *__pyx_n_s____getss; -static PyObject *__pyx_n_s____gettai; -static PyObject *__pyx_n_s____gettdb; -static PyObject *__pyx_n_s____gettdt; -static PyObject *__pyx_n_s____getut1; -static PyObject *__pyx_n_s____getutc; -static PyObject *__pyx_n_s____getwavelength; -static PyObject *__pyx_n_s____getx; -static PyObject *__pyx_n_s____getxdot; -static PyObject *__pyx_n_s____getxpole; -static PyObject *__pyx_n_s____getxx; -static PyObject *__pyx_n_s____getxy; -static PyObject *__pyx_n_s____getxz; -static PyObject *__pyx_n_s____gety; -static PyObject *__pyx_n_s____getydot; -static PyObject *__pyx_n_s____getypole; -static PyObject *__pyx_n_s____getyx; -static PyObject *__pyx_n_s____getyy; -static PyObject *__pyx_n_s____getyz; -static PyObject *__pyx_n_s____getz; -static PyObject *__pyx_n_s____getzdot; -static PyObject *__pyx_n_s____getzx; -static PyObject *__pyx_n_s____getzy; -static PyObject *__pyx_n_s____getzz; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____setH; -static PyObject *__pyx_n_s____setP; -static PyObject *__pyx_n_s____setPOS; -static PyObject *__pyx_n_s____setPP; -static PyObject *__pyx_n_s____setPV; -static PyObject *__pyx_n_s____setT; -static PyObject *__pyx_n_s____setVP; -static PyObject *__pyx_n_s____setVV; -static PyObject *__pyx_n_s____set_pvec; -static PyObject *__pyx_n_s____set_tstate; -static PyObject *__pyx_n_s____setalpha; -static PyObject *__pyx_n_s____setalphadot; -static PyObject *__pyx_n_s____setalt; -static PyObject *__pyx_n_s____setdd; -static PyObject *__pyx_n_s____setdelta; -static PyObject *__pyx_n_s____setdelta_at; -static PyObject *__pyx_n_s____setdelta_ut; -static PyObject *__pyx_n_s____setdeltadot; -static PyObject *__pyx_n_s____sethh; -static PyObject *__pyx_n_s____setlat; -static PyObject *__pyx_n_s____setlon; -static PyObject *__pyx_n_s____setm; -static PyObject *__pyx_n_s____setmm; -static PyObject *__pyx_n_s____setr; -static PyObject *__pyx_n_s____setrdot; -static PyObject *__pyx_n_s____setss; -static PyObject *__pyx_n_s____setutc; -static PyObject *__pyx_n_s____setwavelength; -static PyObject *__pyx_n_s____setx; -static PyObject *__pyx_n_s____setxdot; -static PyObject *__pyx_n_s____setxpole; -static PyObject *__pyx_n_s____setxx; -static PyObject *__pyx_n_s____setxy; -static PyObject *__pyx_n_s____setxz; -static PyObject *__pyx_n_s____sety; -static PyObject *__pyx_n_s____setydot; -static PyObject *__pyx_n_s____setypole; -static PyObject *__pyx_n_s____setyx; -static PyObject *__pyx_n_s____setyy; -static PyObject *__pyx_n_s____setyz; -static PyObject *__pyx_n_s____setz; -static PyObject *__pyx_n_s____setzdot; -static PyObject *__pyx_n_s____setzx; -static PyObject *__pyx_n_s____setzy; -static PyObject *__pyx_n_s____setzz; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s___dms; -static PyObject *__pyx_n_s___hms; -static PyObject *__pyx_n_s___jd; -static PyObject *__pyx_n_s___m3; -static PyObject *__pyx_n_s___m6; -static PyObject *__pyx_n_s___pvec; -static PyObject *__pyx_n_s___tstate; -static PyObject *__pyx_n_s___v3; -static PyObject *__pyx_n_s___v6; -static PyObject *__pyx_n_s___ymd; -static PyObject *__pyx_n_s__aberrate; -static PyObject *__pyx_n_s__action; -static PyObject *__pyx_n_s__alpha; -static PyObject *__pyx_n_s__alphadot; -static PyObject *__pyx_n_s__alt; -static PyObject *__pyx_n_s__as2d; -static PyObject *__pyx_n_s__as2h; -static PyObject *__pyx_n_s__as2r; -static PyObject *__pyx_n_s__azel2hadec; -static PyObject *__pyx_n_s__byear2jd; -static PyObject *__pyx_n_s__c2s; -static PyObject *__pyx_n_s__cat2v6; -static PyObject *__pyx_n_s__ctype; -static PyObject *__pyx_n_s__d2as; -static PyObject *__pyx_n_s__d2d; -static PyObject *__pyx_n_s__d2h; -static PyObject *__pyx_n_s__d2r; -static PyObject *__pyx_n_s__dd; -static PyObject *__pyx_n_s__degrees; -static PyObject *__pyx_n_s__delta; -static PyObject *__pyx_n_s__delta_AT; -static PyObject *__pyx_n_s__delta_ET; -static PyObject *__pyx_n_s__delta_T; -static PyObject *__pyx_n_s__delta_TT; -static PyObject *__pyx_n_s__delta_UT; -static PyObject *__pyx_n_s__delta_at; -static PyObject *__pyx_n_s__delta_ut; -static PyObject *__pyx_n_s__deltadot; -static PyObject *__pyx_n_s__doc; -static PyObject *__pyx_n_s__e; -static PyObject *__pyx_n_s__earth; -static PyObject *__pyx_n_s__eb; -static PyObject *__pyx_n_s__eccentricity; -static PyObject *__pyx_n_s__eccentricity_dot; -static PyObject *__pyx_n_s__ecl2equ; -static PyObject *__pyx_n_s__eh; -static PyObject *__pyx_n_s__ellab; -static PyObject *__pyx_n_s__end; -static PyObject *__pyx_n_s__ep; -static PyObject *__pyx_n_s__eps; -static PyObject *__pyx_n_s__eq; -static PyObject *__pyx_n_s__equ2ecl; -static PyObject *__pyx_n_s__equ2gal; -static PyObject *__pyx_n_s__et2tai; -static PyObject *__pyx_n_s__et2tdb; -static PyObject *__pyx_n_s__et2tdt; -static PyObject *__pyx_n_s__et2ut; -static PyObject *__pyx_n_s__et2ut1; -static PyObject *__pyx_n_s__et2utc; -static PyObject *__pyx_n_s__eterms; -static PyObject *__pyx_n_s__evp; -static PyObject *__pyx_n_s__fk425; -static PyObject *__pyx_n_s__fk524; -static PyObject *__pyx_n_s__flag; -static PyObject *__pyx_n_s__fmt_alpha; -static PyObject *__pyx_n_s__fmt_d; -static PyObject *__pyx_n_s__fmt_delta; -static PyObject *__pyx_n_s__fmt_h; -static PyObject *__pyx_n_s__fmt_j; -static PyObject *__pyx_n_s__fmt_r; -static PyObject *__pyx_n_s__fmt_y; -static PyObject *__pyx_n_s__format; -static PyObject *__pyx_n_s__gal2equ; -static PyObject *__pyx_n_s__gast; -static PyObject *__pyx_n_s__gcal2j; -static PyObject *__pyx_n_s__geod2geoc; -static PyObject *__pyx_n_s__getM3; -static PyObject *__pyx_n_s__getM6; -static PyObject *__pyx_n_s__getPOS; -static PyObject *__pyx_n_s__getType; -static PyObject *__pyx_n_s__getV3; -static PyObject *__pyx_n_s__getV6; -static PyObject *__pyx_n_s__getX; -static PyObject *__pyx_n_s__getXdot; -static PyObject *__pyx_n_s__getY; -static PyObject *__pyx_n_s__getYdot; -static PyObject *__pyx_n_s__getZ; -static PyObject *__pyx_n_s__getZdot; -static PyObject *__pyx_n_s__gmst; -static PyObject *__pyx_n_s__h; -static PyObject *__pyx_n_s__h2as; -static PyObject *__pyx_n_s__h2d; -static PyObject *__pyx_n_s__h2h; -static PyObject *__pyx_n_s__h2r; -static PyObject *__pyx_n_s__hadec2azel; -static PyObject *__pyx_n_s__hh; -static PyObject *__pyx_n_s__hms; -static PyObject *__pyx_n_s__j; -static PyObject *__pyx_n_s__j2dow; -static PyObject *__pyx_n_s__j2gcal; -static PyObject *__pyx_n_s__j2jcal; -static PyObject *__pyx_n_s__j2y; -static PyObject *__pyx_n_s__jcal2j; -static PyObject *__pyx_n_s__jd2byear; -static PyObject *__pyx_n_s__jd2jyear; -static PyObject *__pyx_n_s__jd_now; -static PyObject *__pyx_n_s__jyear2jd; -static PyObject *__pyx_n_s__last; -static PyObject *__pyx_n_s__lat; -static PyObject *__pyx_n_s__latitude; -static PyObject *__pyx_n_s__ldeflect; -static PyObject *__pyx_n_s__lon; -static PyObject *__pyx_n_s__m; -static PyObject *__pyx_n_s__m3rx; -static PyObject *__pyx_n_s__m3rxdot; -static PyObject *__pyx_n_s__m3ry; -static PyObject *__pyx_n_s__m3rydot; -static PyObject *__pyx_n_s__m3rz; -static PyObject *__pyx_n_s__m3rzdot; -static PyObject *__pyx_n_s__m6qx; -static PyObject *__pyx_n_s__m6qy; -static PyObject *__pyx_n_s__m6qz; -static PyObject *__pyx_n_s__mm; -static PyObject *__pyx_n_s__nalpha; -static PyObject *__pyx_n_s__ndelta; -static PyObject *__pyx_n_s__nm; -static PyObject *__pyx_n_s__nut_lon; -static PyObject *__pyx_n_s__nut_obl; -static PyObject *__pyx_n_s__nutations; -static PyObject *__pyx_n_s__obl; -static PyObject *__pyx_n_s__obliquity; -static PyObject *__pyx_n_s__obliquity_dot; -static PyObject *__pyx_n_s__obs_m; -static PyObject *__pyx_n_s__obs_s; -static PyObject *__pyx_n_s__obs_t; -static PyObject *__pyx_n_s__p; -static PyObject *__pyx_n_s__pflag; -static PyObject *__pyx_n_s__pm; -static PyObject *__pyx_n_s__pma; -static PyObject *__pyx_n_s__pmd; -static PyObject *__pyx_n_s__pos; -static PyObject *__pyx_n_s__pp; -static PyObject *__pyx_n_s__precess; -static PyObject *__pyx_n_s__precess_m; -static PyObject *__pyx_n_s__proper_motion; -static PyObject *__pyx_n_s__property; -static PyObject *__pyx_n_s__pv; -static PyObject *__pyx_n_s__pvec; -static PyObject *__pyx_n_s__px; -static PyObject *__pyx_n_s__r; -static PyObject *__pyx_n_s__r2as; -static PyObject *__pyx_n_s__r2d; -static PyObject *__pyx_n_s__r2h; -static PyObject *__pyx_n_s__r2r; -static PyObject *__pyx_n_s__range; -static PyObject *__pyx_n_s__rdot; -static PyObject *__pyx_n_s__refa; -static PyObject *__pyx_n_s__refb; -static PyObject *__pyx_n_s__refco; -static PyObject *__pyx_n_s__refract; -static PyObject *__pyx_n_s__rh; -static PyObject *__pyx_n_s__rv; -static PyObject *__pyx_n_s__s1; -static PyObject *__pyx_n_s__s2; -static PyObject *__pyx_n_s__setM3; -static PyObject *__pyx_n_s__setM6; -static PyObject *__pyx_n_s__setPOS; -static PyObject *__pyx_n_s__setType; -static PyObject *__pyx_n_s__setV3; -static PyObject *__pyx_n_s__setV6; -static PyObject *__pyx_n_s__setX; -static PyObject *__pyx_n_s__setXdot; -static PyObject *__pyx_n_s__setY; -static PyObject *__pyx_n_s__setYdot; -static PyObject *__pyx_n_s__setZ; -static PyObject *__pyx_n_s__setZdot; -static PyObject *__pyx_n_s__sflag; -static PyObject *__pyx_n_s__solar_perigee; -static PyObject *__pyx_n_s__solar_perigee_dot; -static PyObject *__pyx_n_s__ss; -static PyObject *__pyx_n_s__star; -static PyObject *__pyx_n_s__start; -static PyObject *__pyx_n_s__tai; -static PyObject *__pyx_n_s__tai2et; -static PyObject *__pyx_n_s__tai2tdb; -static PyObject *__pyx_n_s__tai2tdt; -static PyObject *__pyx_n_s__tai2ut1; -static PyObject *__pyx_n_s__tai2utc; -static PyObject *__pyx_n_s__tdb; -static PyObject *__pyx_n_s__tdt; -static PyObject *__pyx_n_s__tdt2et; -static PyObject *__pyx_n_s__tdt2tai; -static PyObject *__pyx_n_s__tdt2tdb; -static PyObject *__pyx_n_s__tdt2ut1; -static PyObject *__pyx_n_s__tdt2utc; -static PyObject *__pyx_n_s__theta; -static PyObject *__pyx_n_s__thetadot; -static PyObject *__pyx_n_s__tpm; -static PyObject *__pyx_n_s__tpm_data; -static PyObject *__pyx_n_s__tpm_state; -static PyObject *__pyx_n_s__tstate; -static PyObject *__pyx_n_s__type; -static PyObject *__pyx_n_s__ut1; -static PyObject *__pyx_n_s__ut12et; -static PyObject *__pyx_n_s__ut12gmst; -static PyObject *__pyx_n_s__ut12tai; -static PyObject *__pyx_n_s__ut12tdb; -static PyObject *__pyx_n_s__ut12tdt; -static PyObject *__pyx_n_s__ut12utc; -static PyObject *__pyx_n_s__ut2et; -static PyObject *__pyx_n_s__ut2gmst; -static PyObject *__pyx_n_s__utc; -static PyObject *__pyx_n_s__utc2et; -static PyObject *__pyx_n_s__utc2tdb; -static PyObject *__pyx_n_s__utc2tdt; -static PyObject *__pyx_n_s__utc2ut1; -static PyObject *__pyx_n_s__utc_now; -static PyObject *__pyx_n_s__v; -static PyObject *__pyx_n_s__v6; -static PyObject *__pyx_n_s__v62cat; -static PyObject *__pyx_n_s__valid_keys; -static PyObject *__pyx_n_s__vp; -static PyObject *__pyx_n_s__vtype; -static PyObject *__pyx_n_s__vv; -static PyObject *__pyx_n_s__wavelength; -static PyObject *__pyx_n_s__x; -static PyObject *__pyx_n_s__xdot; -static PyObject *__pyx_n_s__xpole; -static PyObject *__pyx_n_s__xx; -static PyObject *__pyx_n_s__xy; -static PyObject *__pyx_n_s__xz; -static PyObject *__pyx_n_s__y; -static PyObject *__pyx_n_s__y2doy; -static PyObject *__pyx_n_s__y2j; -static PyObject *__pyx_n_s__ydd; -static PyObject *__pyx_n_s__ydot; -static PyObject *__pyx_n_s__year; -static PyObject *__pyx_n_s__ypole; -static PyObject *__pyx_n_s__yx; -static PyObject *__pyx_n_s__yy; -static PyObject *__pyx_n_s__yz; -static PyObject *__pyx_n_s__z; -static PyObject *__pyx_n_s__zdot; -static PyObject *__pyx_n_s__zee; -static PyObject *__pyx_n_s__zeedot; -static PyObject *__pyx_n_s__zeta; -static PyObject *__pyx_n_s__zetadot; -static PyObject *__pyx_n_s__zx; -static PyObject *__pyx_n_s__zy; -static PyObject *__pyx_n_s__zz; +static const char __pyx_k_C[] = "C"; +static const char __pyx_k_H[] = "H"; +static const char __pyx_k_P[] = "P"; +static const char __pyx_k_T[] = "T"; +static const char __pyx_k_X[] = "X"; +static const char __pyx_k_Y[] = "Y"; +static const char __pyx_k_Z[] = "Z"; +static const char __pyx_k_d[] = "d"; +static const char __pyx_k_e[] = "e"; +static const char __pyx_k_h[] = "h"; +static const char __pyx_k_j[] = "j"; +static const char __pyx_k_m[] = "m"; +static const char __pyx_k_p[] = "p"; +static const char __pyx_k_r[] = "r"; +static const char __pyx_k_s[] = "s"; +static const char __pyx_k_t[] = "t"; +static const char __pyx_k_v[] = "v"; +static const char __pyx_k_x[] = "x"; +static const char __pyx_k_y[] = "y"; +static const char __pyx_k_z[] = "z"; +static const char __pyx_k_CB[] = "CB"; +static const char __pyx_k_CJ[] = "CJ"; +static const char __pyx_k_JD[] = "JD"; +static const char __pyx_k_M3[] = "M3"; +static const char __pyx_k_M6[] = "M6"; +static const char __pyx_k_V3[] = "V3"; +static const char __pyx_k_V6[] = "V6"; +static const char __pyx_k_XX[] = "XX."; +static const char __pyx_k_XY[] = "XY."; +static const char __pyx_k_XZ[] = "XZ."; +static const char __pyx_k_YX[] = "YX."; +static const char __pyx_k_YY[] = "YY."; +static const char __pyx_k_YZ[] = "YZ."; +static const char __pyx_k_ZX[] = "ZX."; +static const char __pyx_k_ZY[] = "ZY."; +static const char __pyx_k_ZZ[] = "ZZ."; +static const char __pyx_k_dd[] = "dd"; +static const char __pyx_k_eb[] = "eb"; +static const char __pyx_k_eh[] = "eh"; +static const char __pyx_k_ep[] = "ep"; +static const char __pyx_k_eq[] = "eq"; +static const char __pyx_k_et[] = "et"; +static const char __pyx_k_hh[] = "hh"; +static const char __pyx_k_jd[] = "jd"; +static const char __pyx_k_m3[] = "m3"; +static const char __pyx_k_m6[] = "m6"; +static const char __pyx_k_mm[] = "mm"; +static const char __pyx_k_nm[] = "nm"; +static const char __pyx_k_pm[] = "pm"; +static const char __pyx_k_pp[] = "pp"; +static const char __pyx_k_pv[] = "pv"; +static const char __pyx_k_px[] = "px"; +static const char __pyx_k_rh[] = "rh"; +static const char __pyx_k_rv[] = "rv"; +static const char __pyx_k_s1[] = "s1"; +static const char __pyx_k_s2[] = "s2"; +static const char __pyx_k_ss[] = "ss"; +static const char __pyx_k_ut[] = "ut"; +static const char __pyx_k_v3[] = "v3"; +static const char __pyx_k_v6[] = "v6"; +static const char __pyx_k_vb[] = "_vb"; +static const char __pyx_k_vh[] = "_vh"; +static const char __pyx_k_vp[] = "vp"; +static const char __pyx_k_vv[] = "vv"; +static const char __pyx_k_xx[] = "xx"; +static const char __pyx_k_xy[] = "xy"; +static const char __pyx_k_xz[] = "xz"; +static const char __pyx_k_yx[] = "yx"; +static const char __pyx_k_yy[] = "yy"; +static const char __pyx_k_yz[] = "yz"; +static const char __pyx_k_zx[] = "zx"; +static const char __pyx_k_zy[] = "zy"; +static const char __pyx_k_zz[] = "zz"; +static const char __pyx_k_DMS[] = "DMS"; +static const char __pyx_k_HMS[] = "HMS"; +static const char __pyx_k_POS[] = "POS"; +static const char __pyx_k_V6C[] = "V6C"; +static const char __pyx_k_V6S[] = "V6S"; +static const char __pyx_k_VEL[] = "VEL"; +static const char __pyx_k_YMD[] = "YMD"; +static const char __pyx_k_alt[] = "alt"; +static const char __pyx_k_c2s[] = "c2s"; +static const char __pyx_k_d2d[] = "d2d"; +static const char __pyx_k_d2h[] = "d2h"; +static const char __pyx_k_d2r[] = "d2r"; +static const char __pyx_k_doc[] = "doc"; +static const char __pyx_k_end[] = "end"; +static const char __pyx_k_eps[] = "eps"; +static const char __pyx_k_evp[] = "evp"; +static const char __pyx_k_get[] = "get"; +static const char __pyx_k_h2d[] = "h2d"; +static const char __pyx_k_h2h[] = "h2h"; +static const char __pyx_k_h2r[] = "h2r"; +static const char __pyx_k_j2y[] = "j2y"; +static const char __pyx_k_lat[] = "lat"; +static const char __pyx_k_lon[] = "lon"; +static const char __pyx_k_obl[] = "obl"; +static const char __pyx_k_pma[] = "pma"; +static const char __pyx_k_pmd[] = "pmd"; +static const char __pyx_k_pos[] = "pos"; +static const char __pyx_k_r2d[] = "r2d"; +static const char __pyx_k_r2h[] = "r2h"; +static const char __pyx_k_r2r[] = "r2r"; +static const char __pyx_k_tai[] = "tai"; +static const char __pyx_k_tdb[] = "tdb"; +static const char __pyx_k_tdt[] = "tdt"; +static const char __pyx_k_tpm[] = "tpm"; +static const char __pyx_k_ut1[] = "ut1"; +static const char __pyx_k_utc[] = "utc"; +static const char __pyx_k_v61[] = "v61"; +static const char __pyx_k_v6b[] = "v6b"; +static const char __pyx_k_v6h[] = "v6h"; +static const char __pyx_k_y2j[] = "y2j"; +static const char __pyx_k_ydd[] = "ydd"; +static const char __pyx_k_zee[] = "zee"; +static const char __pyx_k_M_PI[] = "M_PI"; +static const char __pyx_k_PVEC[] = "PVEC"; +static const char __pyx_k_V3CP[] = "V3CP"; +static const char __pyx_k_V3SP[] = "V3SP"; +static const char __pyx_k_arcs[] = "arcs"; +static const char __pyx_k_as2d[] = "as2d"; +static const char __pyx_k_as2h[] = "as2h"; +static const char __pyx_k_as2r[] = "as2r"; +static const char __pyx_k_d2as[] = "d2as"; +static const char __pyx_k_flag[] = "flag"; +static const char __pyx_k_gast[] = "gast"; +static const char __pyx_k_getH[] = "__getH"; +static const char __pyx_k_getP[] = "__getP"; +static const char __pyx_k_getT[] = "__getT"; +static const char __pyx_k_getm[] = "__getm"; +static const char __pyx_k_getr[] = "__getr"; +static const char __pyx_k_getx[] = "__getx"; +static const char __pyx_k_gety[] = "__gety"; +static const char __pyx_k_getz[] = "__getz"; +static const char __pyx_k_gmst[] = "gmst"; +static const char __pyx_k_h2as[] = "h2as"; +static const char __pyx_k_last[] = "last"; +static const char __pyx_k_m3rx[] = "m3rx"; +static const char __pyx_k_m3ry[] = "m3ry"; +static const char __pyx_k_m3rz[] = "m3rz"; +static const char __pyx_k_m6qx[] = "m6qx"; +static const char __pyx_k_m6qy[] = "m6qy"; +static const char __pyx_k_m6qz[] = "m6qz"; +static const char __pyx_k_main[] = "__main__"; +static const char __pyx_k_name[] = "__name__"; +static const char __pyx_k_pvec[] = "pvec"; +static const char __pyx_k_r2as[] = "r2as"; +static const char __pyx_k_rdot[] = "rdot"; +static const char __pyx_k_refa[] = "refa"; +static const char __pyx_k_refb[] = "refb"; +static const char __pyx_k_setH[] = "__setH"; +static const char __pyx_k_setP[] = "__setP"; +static const char __pyx_k_setT[] = "__setT"; +static const char __pyx_k_setm[] = "__setm"; +static const char __pyx_k_setr[] = "__setr"; +static const char __pyx_k_setx[] = "__setx"; +static const char __pyx_k_sety[] = "__sety"; +static const char __pyx_k_setz[] = "__setz"; +static const char __pyx_k_star[] = "star"; +static const char __pyx_k_test[] = "__test__"; +static const char __pyx_k_v6_2[] = "_v6"; +static const char __pyx_k_xdot[] = "xdot"; +static const char __pyx_k_ydot[] = "ydot"; +static const char __pyx_k_year[] = "year"; +static const char __pyx_k_zdot[] = "zdot"; +static const char __pyx_k_zeta[] = "zeta"; +static const char __pyx_k_B1950[] = "B1950"; +static const char __pyx_k_Hours[] = "Hours."; +static const char __pyx_k_IAU_C[] = "IAU_C"; +static const char __pyx_k_IAU_F[] = "IAU_F"; +static const char __pyx_k_IAU_K[] = "IAU_K"; +static const char __pyx_k_IAU_W[] = "IAU_W"; +static const char __pyx_k_J1984[] = "J1984"; +static const char __pyx_k_J2000[] = "J2000"; +static const char __pyx_k_MJD_0[] = "MJD_0"; +static const char __pyx_k_POLAR[] = "POLAR"; +static const char __pyx_k_alpha[] = "alpha"; +static const char __pyx_k_byear[] = "byear"; +static const char __pyx_k_class[] = "__class__"; +static const char __pyx_k_ctype[] = "ctype"; +static const char __pyx_k_delta[] = "delta"; +static const char __pyx_k_earth[] = "earth"; +static const char __pyx_k_ellab[] = "ellab"; +static const char __pyx_k_et2ut[] = "et2ut"; +static const char __pyx_k_fk425[] = "fk425"; +static const char __pyx_k_fk524[] = "fk524"; +static const char __pyx_k_fmt_d[] = "fmt_d"; +static const char __pyx_k_fmt_h[] = "fmt_h"; +static const char __pyx_k_fmt_j[] = "fmt_j"; +static const char __pyx_k_fmt_r[] = "fmt_r"; +static const char __pyx_k_fmt_y[] = "fmt_y"; +static const char __pyx_k_getPP[] = "__getPP"; +static const char __pyx_k_getPV[] = "__getPV"; +static const char __pyx_k_getVP[] = "__getVP"; +static const char __pyx_k_getVV[] = "__getVV"; +static const char __pyx_k_getdd[] = "__getdd"; +static const char __pyx_k_geteb[] = "__geteb"; +static const char __pyx_k_geteh[] = "__geteh"; +static const char __pyx_k_gethh[] = "__gethh"; +static const char __pyx_k_getmm[] = "__getmm"; +static const char __pyx_k_getnm[] = "__getnm"; +static const char __pyx_k_getpm[] = "__getpm"; +static const char __pyx_k_getss[] = "__getss"; +static const char __pyx_k_getxx[] = "__getxx"; +static const char __pyx_k_getxy[] = "__getxy"; +static const char __pyx_k_getxz[] = "__getxz"; +static const char __pyx_k_getyx[] = "__getyx"; +static const char __pyx_k_getyy[] = "__getyy"; +static const char __pyx_k_getyz[] = "__getyz"; +static const char __pyx_k_getzx[] = "__getzx"; +static const char __pyx_k_getzy[] = "__getzy"; +static const char __pyx_k_getzz[] = "__getzz"; +static const char __pyx_k_j2dow[] = "j2dow"; +static const char __pyx_k_jyear[] = "jyear"; +static const char __pyx_k_obs_m[] = "obs_m"; +static const char __pyx_k_obs_s[] = "obs_s"; +static const char __pyx_k_obs_t[] = "obs_t"; +static const char __pyx_k_pflag[] = "pflag"; +static const char __pyx_k_range[] = "range"; +static const char __pyx_k_refco[] = "refco"; +static const char __pyx_k_setPP[] = "__setPP"; +static const char __pyx_k_setPV[] = "__setPV"; +static const char __pyx_k_setVP[] = "__setVP"; +static const char __pyx_k_setVV[] = "__setVV"; +static const char __pyx_k_setdd[] = "__setdd"; +static const char __pyx_k_sethh[] = "__sethh"; +static const char __pyx_k_setmm[] = "__setmm"; +static const char __pyx_k_setss[] = "__setss"; +static const char __pyx_k_setxx[] = "__setxx"; +static const char __pyx_k_setxy[] = "__setxy"; +static const char __pyx_k_setxz[] = "__setxz"; +static const char __pyx_k_setyx[] = "__setyx"; +static const char __pyx_k_setyy[] = "__setyy"; +static const char __pyx_k_setyz[] = "__setyz"; +static const char __pyx_k_setzx[] = "__setzx"; +static const char __pyx_k_setzy[] = "__setzy"; +static const char __pyx_k_setzz[] = "__setzz"; +static const char __pyx_k_sflag[] = "sflag"; +static const char __pyx_k_spvec[] = "spvec"; +static const char __pyx_k_start[] = "start"; +static const char __pyx_k_theta[] = "theta"; +static const char __pyx_k_ut2et[] = "ut2et"; +static const char __pyx_k_vtype[] = "vtype"; +static const char __pyx_k_xpole[] = "xpole"; +static const char __pyx_k_y2doy[] = "y2doy"; +static const char __pyx_k_ypole[] = "ypole"; +static const char __pyx_k_FRIDAY[] = "FRIDAY"; +static const char __pyx_k_GAL_RA[] = "GAL_RA"; +static const char __pyx_k_IAU_AU[] = "IAU_AU"; +static const char __pyx_k_IAU_DM[] = "IAU_DM"; +static const char __pyx_k_IAU_RE[] = "IAU_RE"; +static const char __pyx_k_IAU_RM[] = "IAU_RM"; +static const char __pyx_k_MONDAY[] = "MONDAY"; +static const char __pyx_k_SUNDAY[] = "SUNDAY"; +static const char __pyx_k_TSTATE[] = "TSTATE"; +static const char __pyx_k_action[] = "action"; +static const char __pyx_k_cat2v6[] = "cat2v6"; +static const char __pyx_k_et2tai[] = "et2tai"; +static const char __pyx_k_et2tdb[] = "et2tdb"; +static const char __pyx_k_et2tdt[] = "et2tdt"; +static const char __pyx_k_et2ut1[] = "et2ut1"; +static const char __pyx_k_et2utc[] = "et2utc"; +static const char __pyx_k_eterms[] = "eterms"; +static const char __pyx_k_format[] = "format"; +static const char __pyx_k_gcal2j[] = "gcal2j"; +static const char __pyx_k_getPOS[] = "__getPOS"; +static const char __pyx_k_getalt[] = "__getalt"; +static const char __pyx_k_getlat[] = "__getlat"; +static const char __pyx_k_getlon[] = "__getlon"; +static const char __pyx_k_gettai[] = "__gettai"; +static const char __pyx_k_gettdb[] = "__gettdb"; +static const char __pyx_k_gettdt[] = "__gettdt"; +static const char __pyx_k_getut1[] = "__getut1"; +static const char __pyx_k_getutc[] = "__getutc"; +static const char __pyx_k_j2gcal[] = "j2gcal"; +static const char __pyx_k_j2jcal[] = "j2jcal"; +static const char __pyx_k_jcal2j[] = "jcal2j"; +static const char __pyx_k_jd_now[] = "jd_now"; +static const char __pyx_k_nalpha[] = "nalpha"; +static const char __pyx_k_ndelta[] = "ndelta"; +static const char __pyx_k_reduce[] = "__reduce__"; +static const char __pyx_k_setPOS[] = "__setPOS"; +static const char __pyx_k_setalt[] = "__setalt"; +static const char __pyx_k_setlat[] = "__setlat"; +static const char __pyx_k_setlon[] = "__setlon"; +static const char __pyx_k_setutc[] = "__setutc"; +static const char __pyx_k_tai2et[] = "tai2et"; +static const char __pyx_k_tdt2et[] = "tdt2et"; +static const char __pyx_k_tstate[] = "tstate"; +static const char __pyx_k_ut12et[] = "ut12et"; +static const char __pyx_k_utc2et[] = "utc2et"; +static const char __pyx_k_v62cat[] = "v62cat"; +static const char __pyx_k_zeedot[] = "zeedot"; +static const char __pyx_k_Degrees[] = "Degrees."; +static const char __pyx_k_GAL_DEC[] = "GAL_DEC"; +static const char __pyx_k_GAL_LON[] = "GAL_LON"; +static const char __pyx_k_Minutes[] = "Minutes."; +static const char __pyx_k_Seconds[] = "Seconds."; +static const char __pyx_k_TPM_ALL[] = "TPM_ALL"; +static const char __pyx_k_TPM_S00[] = "TPM_S00"; +static const char __pyx_k_TPM_S01[] = "TPM_S01"; +static const char __pyx_k_TPM_S02[] = "TPM_S02"; +static const char __pyx_k_TPM_S03[] = "TPM_S03"; +static const char __pyx_k_TPM_S04[] = "TPM_S04"; +static const char __pyx_k_TPM_S05[] = "TPM_S05"; +static const char __pyx_k_TPM_S06[] = "TPM_S06"; +static const char __pyx_k_TPM_S07[] = "TPM_S07"; +static const char __pyx_k_TPM_S08[] = "TPM_S08"; +static const char __pyx_k_TPM_S09[] = "TPM_S09"; +static const char __pyx_k_TPM_S10[] = "TPM_S10"; +static const char __pyx_k_TPM_S11[] = "TPM_S11"; +static const char __pyx_k_TPM_S12[] = "TPM_S12"; +static const char __pyx_k_TPM_S13[] = "TPM_S13"; +static const char __pyx_k_TPM_S14[] = "TPM_S14"; +static const char __pyx_k_TPM_S15[] = "TPM_S15"; +static const char __pyx_k_TPM_S16[] = "TPM_S16"; +static const char __pyx_k_TPM_S17[] = "TPM_S17"; +static const char __pyx_k_TPM_S18[] = "TPM_S18"; +static const char __pyx_k_TPM_S19[] = "TPM_S19"; +static const char __pyx_k_TPM_S20[] = "TPM_S20"; +static const char __pyx_k_TPM_S21[] = "TPM_S21"; +static const char __pyx_k_TPM_T00[] = "TPM_T00"; +static const char __pyx_k_TPM_T01[] = "TPM_T01"; +static const char __pyx_k_TPM_T02[] = "TPM_T02"; +static const char __pyx_k_TPM_T03[] = "TPM_T03"; +static const char __pyx_k_TPM_T04[] = "TPM_T04"; +static const char __pyx_k_TPM_T05[] = "TPM_T05"; +static const char __pyx_k_TPM_T06[] = "TPM_T06"; +static const char __pyx_k_TPM_T07[] = "TPM_T07"; +static const char __pyx_k_TPM_T08[] = "TPM_T08"; +static const char __pyx_k_TPM_T09[] = "TPM_T09"; +static const char __pyx_k_TPM_T10[] = "TPM_T10"; +static const char __pyx_k_TPM_T11[] = "TPM_T11"; +static const char __pyx_k_TPM_T12[] = "TPM_T12"; +static const char __pyx_k_TPM_T13[] = "TPM_T13"; +static const char __pyx_k_TPM_T14[] = "TPM_T14"; +static const char __pyx_k_TPM_T15[] = "TPM_T15"; +static const char __pyx_k_TUESDAY[] = "TUESDAY"; +static const char __pyx_k_degrees[] = "degrees"; +static const char __pyx_k_delta_T[] = "delta_T"; +static const char __pyx_k_ecl2equ[] = "ecl2equ"; +static const char __pyx_k_equ2ecl[] = "equ2ecl"; +static const char __pyx_k_equ2gal[] = "equ2gal"; +static const char __pyx_k_gal2equ[] = "gal2equ"; +static const char __pyx_k_getgast[] = "__getgast"; +static const char __pyx_k_getgmst[] = "__getgmst"; +static const char __pyx_k_getlast[] = "__getlast"; +static const char __pyx_k_getrdot[] = "__getrdot"; +static const char __pyx_k_getrefa[] = "__getrefa"; +static const char __pyx_k_getrefb[] = "__getrefb"; +static const char __pyx_k_getxdot[] = "__getxdot"; +static const char __pyx_k_getydot[] = "__getydot"; +static const char __pyx_k_getzdot[] = "__getzdot"; +static const char __pyx_k_m3rxdot[] = "m3rxdot"; +static const char __pyx_k_m3rydot[] = "m3rydot"; +static const char __pyx_k_m3rzdot[] = "m3rzdot"; +static const char __pyx_k_nut_lon[] = "nut_lon"; +static const char __pyx_k_nut_obl[] = "nut_obl"; +static const char __pyx_k_precess[] = "precess"; +static const char __pyx_k_refract[] = "refract"; +static const char __pyx_k_setrdot[] = "__setrdot"; +static const char __pyx_k_setxdot[] = "__setxdot"; +static const char __pyx_k_setydot[] = "__setydot"; +static const char __pyx_k_setzdot[] = "__setzdot"; +static const char __pyx_k_ststate[] = "ststate"; +static const char __pyx_k_tai2tdb[] = "tai2tdb"; +static const char __pyx_k_tai2tdt[] = "tai2tdt"; +static const char __pyx_k_tai2ut1[] = "tai2ut1"; +static const char __pyx_k_tai2utc[] = "tai2utc"; +static const char __pyx_k_tdt2tai[] = "tdt2tai"; +static const char __pyx_k_tdt2tdb[] = "tdt2tdb"; +static const char __pyx_k_tdt2ut1[] = "tdt2ut1"; +static const char __pyx_k_tdt2utc[] = "tdt2utc"; +static const char __pyx_k_ut12tai[] = "ut12tai"; +static const char __pyx_k_ut12tdb[] = "ut12tdb"; +static const char __pyx_k_ut12tdt[] = "ut12tdt"; +static const char __pyx_k_ut12utc[] = "ut12utc"; +static const char __pyx_k_ut2gmst[] = "ut2gmst"; +static const char __pyx_k_utc2tdb[] = "utc2tdb"; +static const char __pyx_k_utc2tdt[] = "utc2tdt"; +static const char __pyx_k_utc2ut1[] = "utc2ut1"; +static const char __pyx_k_utc_now[] = "utc_now"; +static const char __pyx_k_zetadot[] = "zetadot"; +static const char __pyx_k_SATURDAY[] = "SATURDAY"; +static const char __pyx_k_THURSDAY[] = "THURSDAY"; +static const char __pyx_k_TPM_FAST[] = "TPM_FAST"; +static const char __pyx_k_TPM_INIT[] = "TPM_INIT"; +static const char __pyx_k_TPM_SLOW[] = "TPM_SLOW"; +static const char __pyx_k_aberrate[] = "aberrate"; +static const char __pyx_k_alphadot[] = "alphadot"; +static const char __pyx_k_byear2jd[] = "byear2jd"; +static const char __pyx_k_delta_AT[] = "delta_AT"; +static const char __pyx_k_delta_ET[] = "delta_ET"; +static const char __pyx_k_delta_TT[] = "delta_TT"; +static const char __pyx_k_delta_UT[] = "delta_UT"; +static const char __pyx_k_delta_at[] = "delta_at"; +static const char __pyx_k_delta_ut[] = "delta_ut"; +static const char __pyx_k_deltadot[] = "deltadot"; +static const char __pyx_k_getalpha[] = "__getalpha"; +static const char __pyx_k_getdelta[] = "__getdelta"; +static const char __pyx_k_getobs_m[] = "__getobs_m"; +static const char __pyx_k_getobs_s[] = "__getobs_s"; +static const char __pyx_k_getobs_t[] = "__getobs_t"; +static const char __pyx_k_getstate[] = "__getstate__"; +static const char __pyx_k_getxpole[] = "__getxpole"; +static const char __pyx_k_getypole[] = "__getypole"; +static const char __pyx_k_jd2byear[] = "jd2byear"; +static const char __pyx_k_jd2jyear[] = "jd2jyear"; +static const char __pyx_k_jyear2jd[] = "jyear2jd"; +static const char __pyx_k_latitude[] = "latitude"; +static const char __pyx_k_ldeflect[] = "ldeflect"; +static const char __pyx_k_property[] = "property"; +static const char __pyx_k_setalpha[] = "__setalpha"; +static const char __pyx_k_setdelta[] = "__setdelta"; +static const char __pyx_k_setstate[] = "__setstate__"; +static const char __pyx_k_setxpole[] = "__setxpole"; +static const char __pyx_k_setypole[] = "__setypole"; +static const char __pyx_k_thetadot[] = "thetadot"; +static const char __pyx_k_tpm_data[] = "tpm_data"; +static const char __pyx_k_ut12gmst[] = "ut12gmst"; +static const char __pyx_k_CARTESIAN[] = "CARTESIAN"; +static const char __pyx_k_IAU_KAPPA[] = "IAU_KAPPA"; +static const char __pyx_k_SPHERICAL[] = "SPHERICAL"; +static const char __pyx_k_TypeError[] = "TypeError"; +static const char __pyx_k_WEDNESDAY[] = "WEDNESDAY"; +static const char __pyx_k_delta_eps[] = "delta_eps"; +static const char __pyx_k_delta_phi[] = "delta_phi"; +static const char __pyx_k_fmt_alpha[] = "fmt_alpha"; +static const char __pyx_k_fmt_delta[] = "fmt_delta"; +static const char __pyx_k_geod2geoc[] = "geod2geoc"; +static const char __pyx_k_getnalpha[] = "__getnalpha"; +static const char __pyx_k_getndelta[] = "__getndelta"; +static const char __pyx_k_nutations[] = "nutations"; +static const char __pyx_k_obliquity[] = "obliquity"; +static const char __pyx_k_precess_m[] = "precess_m"; +static const char __pyx_k_reduce_ex[] = "__reduce_ex__"; +static const char __pyx_k_tpm_state[] = "tpm_state"; +static const char __pyx_k_IndexError[] = "IndexError"; +static const char __pyx_k_TARGET_ECL[] = "TARGET_ECL"; +static const char __pyx_k_TARGET_FK4[] = "TARGET_FK4"; +static const char __pyx_k_TARGET_FK5[] = "TARGET_FK5"; +static const char __pyx_k_TARGET_GAL[] = "TARGET_GAL"; +static const char __pyx_k_TPM_MEDIUM[] = "TPM_MEDIUM"; +static const char __pyx_k_ValueError[] = "ValueError"; +static const char __pyx_k_azel2hadec[] = "azel2hadec"; +static const char __pyx_k_getnut_lon[] = "__getnut_lon"; +static const char __pyx_k_getnut_obl[] = "__getnut_obl"; +static const char __pyx_k_hadec2azel[] = "hadec2azel"; +static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__"; +static const char __pyx_k_valid_keys[] = "valid_keys"; +static const char __pyx_k_wavelength[] = "wavelength"; +static const char __pyx_k_N_TPM_TRANS[] = "N_TPM_TRANS"; +static const char __pyx_k_PRECESS_FK4[] = "PRECESS_FK4"; +static const char __pyx_k_PRECESS_FK5[] = "PRECESS_FK5"; +static const char __pyx_k_getalphadot[] = "__getalphadot"; +static const char __pyx_k_getdelta_at[] = "__getdelta_at"; +static const char __pyx_k_getdelta_ut[] = "__getdelta_ut"; +static const char __pyx_k_getdeltadot[] = "__getdeltadot"; +static const char __pyx_k_setalphadot[] = "__setalphadot"; +static const char __pyx_k_setdelta_at[] = "__setdelta_at"; +static const char __pyx_k_setdelta_ut[] = "__setdelta_ut"; +static const char __pyx_k_setdeltadot[] = "__setdeltadot"; +static const char __pyx_k_src_tpm_pyx[] = "src/tpm.pyx"; +static const char __pyx_k_N_TPM_STATES[] = "N_TPM_STATES"; +static const char __pyx_k_PP_component[] = "PP component."; +static const char __pyx_k_PV_component[] = "PV component."; +static const char __pyx_k_R_coordinate[] = "R coordinate."; +static const char __pyx_k_TARGET_HADEC[] = "TARGET_HADEC"; +static const char __pyx_k_VP_component[] = "VP component."; +static const char __pyx_k_VV_component[] = "VV component."; +static const char __pyx_k_X_coordinate[] = "X coordinate."; +static const char __pyx_k_Y_coordinate[] = "Y coordinate."; +static const char __pyx_k_Z_coordinate[] = "Z coordinate."; +static const char __pyx_k_eccentricity[] = "eccentricity"; +static const char __pyx_k_getobliquity[] = "__getobliquity"; +static const char __pyx_k_d2d_line_1549[] = "d2d (line 1549)"; +static const char __pyx_k_d2h_line_1646[] = "d2h (line 1646)"; +static const char __pyx_k_d2r_line_1698[] = "d2r (line 1698)"; +static const char __pyx_k_getwavelength[] = "__getwavelength"; +static const char __pyx_k_h2d_line_1672[] = "h2d (line 1672)"; +static const char __pyx_k_h2h_line_1579[] = "h2h (line 1579)"; +static const char __pyx_k_h2r_line_1752[] = "h2r (line 1752)"; +static const char __pyx_k_j2y_line_1179[] = "j2y (line 1179)"; +static const char __pyx_k_obliquity_dot[] = "obliquity_dot"; +static const char __pyx_k_proper_motion[] = "proper_motion"; +static const char __pyx_k_r2d_line_1724[] = "r2d (line 1724)"; +static const char __pyx_k_r2h_line_1776[] = "r2h (line 1776)"; +static const char __pyx_k_r2r_line_1611[] = "r2r (line 1611)"; +static const char __pyx_k_reduce_cython[] = "__reduce_cython__"; +static const char __pyx_k_setwavelength[] = "__setwavelength"; +static const char __pyx_k_solar_perigee[] = "solar_perigee"; +static const char __pyx_k_y2j_line_1206[] = "y2j (line 1206)"; +static const char __pyx_k_Day_as_a_float[] = "Day as a float."; +static const char __pyx_k_Minutes_of_arc[] = "Minutes of arc."; +static const char __pyx_k_PRECESS_LIESKE[] = "PRECESS_LIESKE"; +static const char __pyx_k_Seconds_of_arc[] = "Seconds of arc."; +static const char __pyx_k_TPM_REFRACTION[] = "TPM_REFRACTION"; +static const char __pyx_k_Universal_time[] = "Universal time."; +static const char __pyx_k_as2d_line_1824[] = "as2d (line 1824)"; +static const char __pyx_k_as2h_line_1848[] = "as2h (line 1848)"; +static const char __pyx_k_as2r_line_1919[] = "as2r (line 1919)"; +static const char __pyx_k_d2as_line_1800[] = "d2as (line 1800)"; +static const char __pyx_k_h2as_line_1872[] = "h2as (line 1872)"; +static const char __pyx_k_r2as_line_1896[] = "r2as (line 1896)"; +static const char __pyx_k_PRECESS_ANDOYER[] = "PRECESS_ANDOYER"; +static const char __pyx_k_PRECESS_NEWCOMB[] = "PRECESS_NEWCOMB"; +static const char __pyx_k_TARGET_APP_AZEL[] = "TARGET_APP_AZEL"; +static const char __pyx_k_TARGET_OBS_AZEL[] = "TARGET_OBS_AZEL"; +static const char __pyx_k_TARGET_OBS_WHAM[] = "TARGET_OBS_WHAM"; +static const char __pyx_k_TARGET_TOP_AZEL[] = "TARGET_TOP_AZEL"; +static const char __pyx_k_fmt_d_line_1370[] = "fmt_d (line 1370)"; +static const char __pyx_k_fmt_h_line_1410[] = "fmt_h (line 1410)"; +static const char __pyx_k_fmt_j_line_1444[] = "fmt_j (line 1444)"; +static const char __pyx_k_fmt_r_line_1480[] = "fmt_r (line 1480)"; +static const char __pyx_k_fmt_y_line_1517[] = "fmt_y (line 1517)"; +static const char __pyx_k_j2dow_line_1232[] = "j2dow (line 1232)"; +static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; +static const char __pyx_k_src_tpm_vec_pxi[] = "src/tpm_vec.pxi"; +static const char __pyx_k_y2doy_line_1257[] = "y2doy (line 1257)"; +static const char __pyx_k_ALPHA_coordinate[] = "ALPHA coordinate."; +static const char __pyx_k_DELTA_coordinate[] = "DELTA coordinate."; +static const char __pyx_k_Hours_as_a_float[] = "Hours as a float."; +static const char __pyx_k_JD_to_j_line_888[] = "JD.to_j (line 888)"; +static const char __pyx_k_PRECESS_INERTIAL[] = "PRECESS_INERTIAL"; +static const char __pyx_k_PRECESS_ROTATING[] = "PRECESS_ROTATING"; +static const char __pyx_k_TARGET_APP_HADEC[] = "TARGET_APP_HADEC"; +static const char __pyx_k_TARGET_OBS_HADEC[] = "TARGET_OBS_HADEC"; +static const char __pyx_k_YMD_doy_line_677[] = "YMD.doy (line 677)"; +static const char __pyx_k_eccentricity_dot[] = "eccentricity_dot"; +static const char __pyx_k_gcal2j_line_1053[] = "gcal2j (line 1053)"; +static const char __pyx_k_j2gcal_line_1119[] = "j2gcal (line 1119)"; +static const char __pyx_k_j2jcal_line_1149[] = "j2jcal (line 1149)"; +static const char __pyx_k_jcal2j_line_1085[] = "jcal2j (line 1085)"; +static const char __pyx_k_Invalid_keyword_0[] = "Invalid keyword: {0}"; +static const char __pyx_k_PRECESS_KINOSHITA[] = "PRECESS_KINOSHITA"; +static const char __pyx_k_Radial_coordinate[] = "Radial coordinate."; +static const char __pyx_k_YMD_to_j_line_633[] = "YMD.to_j (line 633)"; +static const char __pyx_k_byear2jd_line_927[] = "byear2jd (line 927)"; +static const char __pyx_k_jd2byear_line_951[] = "jd2byear (line 951)"; +static const char __pyx_k_jd2jyear_line_999[] = "jd2jyear (line 999)"; +static const char __pyx_k_jyear2jd_line_975[] = "jyear2jd (line 975)"; +static const char __pyx_k_solar_perigee_dot[] = "solar_perigee_dot"; +static const char __pyx_k_src_tpm_astro_pxi[] = "src/tpm_astro.pxi"; +static const char __pyx_k_src_tpm_times_pxi[] = "src/tpm_times.pxi"; +static const char __pyx_k_DELTA_AT_TAI_UTC_s[] = "DELTA_AT = TAI - UTC (s)"; +static const char __pyx_k_DELTA_UT_UT1_UTC_s[] = "DELTA_UT = UT1 - UTC (s)"; +static const char __pyx_k_JD_to_ymd_line_865[] = "JD.to_ymd (line 865)"; +static const char __pyx_k_Minutes_as_a_float[] = "Minutes as a float."; +static const char __pyx_k_Seconds_as_a_float[] = "Seconds as a float."; +static const char __pyx_k_YMD_to_jd_line_612[] = "YMD.to_jd (line 612)"; +static const char __pyx_k_Year_as_an_integer[] = "Year as an integer."; +static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; +static const char __pyx_k_tpm_state_line_195[] = "tpm_state (line 195)"; +static const char __pyx_k_JD_to_year_line_905[] = "JD.to_year (line 905)"; +static const char __pyx_k_Latitude_in_radians[] = "Latitude in radians."; +static const char __pyx_k_Month_as_an_integer[] = "Month as an integer."; +static const char __pyx_k_fmt_alpha_line_1287[] = "fmt_alpha (line 1287)"; +static const char __pyx_k_fmt_delta_line_1331[] = "fmt_delta (line 1331)"; +static const char __pyx_k_Ambient_humidity_0_1[] = "Ambient humidity (0-1)."; +static const char __pyx_k_YMD_raw_str_line_649[] = "YMD.raw_str (line 649)"; +static const char __pyx_k_YMD_to_year_line_695[] = "YMD.to_year (line 695)"; +static const char __pyx_k_JD_normalize_line_847[] = "JD.normalize (line 847)"; +static const char __pyx_k_Nutation_in_longitude[] = "Nutation in longitude."; +static const char __pyx_k_Nutation_in_obliquity[] = "Nutation in obliquity."; +static const char __pyx_k_DMS_normalize_line_161[] = "DMS.normalize (line 161)"; +static const char __pyx_k_HMS_normalize_line_367[] = "HMS.normalize (line 367)"; +static const char __pyx_k_Latitudinal_coordinate[] = "Latitudinal coordinate."; +static const char __pyx_k_Refraction_coefficient[] = "Refraction coefficient."; +static const char __pyx_k_The_position_component[] = "The position component."; +static const char __pyx_k_YMD_normalize_line_594[] = "YMD.normalize (line 594)"; +static const char __pyx_k_Longitudinal_coordinate[] = "Longitudinal coordinate."; +static const char __pyx_k_Nutation_matrix_for_NOW[] = "Nutation matrix for NOW."; +static const char __pyx_k_Polar_motion_in_radians[] = "Polar motion in radians."; +static const char __pyx_k_Year_must_be_an_integer[] = "Year must be an integer."; +static const char __pyx_k_alpha_normalized_to_0_2[] = "alpha normalized to [0, 2\317\200)."; +static const char __pyx_k_delta_normalized_to_2_2[] = "delta normalized to [-\317\200/2, \317\200/2]."; +static const char __pyx_k_Barycentric_Dynamic_Time[] = "Barycentric Dynamic Time."; +static const char __pyx_k_Index_must_be_an_integer[] = "Index must be an integer."; +static const char __pyx_k_Month_must_be_an_integer[] = "Month must be an integer."; +static const char __pyx_k_East_longitude_in_radians[] = "East longitude in radians."; +static const char __pyx_k_International_Atomic_Time[] = "International Atomic Time."; +static const char __pyx_k_Obliquity_of_the_Ecliptic[] = "Obliquity of the Ecliptic."; +static const char __pyx_k_Can_only_add_two_JD_values[] = "Can only add two JD values."; +static const char __pyx_k_Value_must_be_a_V6C_object[] = "Value must be a V6C object."; +static const char __pyx_k_Can_only_add_two_DMS_values[] = "Can only add two DMS values."; +static const char __pyx_k_Can_only_add_two_HMS_values[] = "Can only add two HMS values."; +static const char __pyx_k_Can_only_add_two_V6C_values[] = "Can only add two V6C values."; +static const char __pyx_k_Greewich_Mean_Sidereal_Time[] = "Greewich Mean Sidereal Time."; +static const char __pyx_k_Can_only_add_two_V3CP_values[] = "Can only add two V3CP values."; +static const char __pyx_k_Can_only_add_two_V3SP_values[] = "Can only add two V3SP values."; +static const char __pyx_k_Local_Apparent_Sidereal_Time[] = "Local Apparent Sidereal Time."; +static const char __pyx_k_Ambient_pressure_in_millibars[] = "Ambient pressure in millibars."; +static const char __pyx_k_Altitude_above_geoid_in_meters[] = "Altitude above geoid in meters."; +static const char __pyx_k_Ambient_temperature_in_Kelvins[] = "Ambient temperature in Kelvins."; +static const char __pyx_k_Barycentric_Earth_state_vector[] = "Barycentric Earth state vector."; +static const char __pyx_k_Rate_of_change_of_R_coordinate[] = "Rate of change of R coordinate."; +static const char __pyx_k_Rate_of_change_of_X_coordinate[] = "Rate of change of X coordinate."; +static const char __pyx_k_Rate_of_change_of_Y_coordinate[] = "Rate of change of Y coordinate."; +static const char __pyx_k_Rate_of_change_of_Z_coordinate[] = "Rate of change of Z coordinate."; +static const char __pyx_k_Convert_Gregorian_calendar_year[] = "Convert Gregorian calendar year with fractional part into Julian date.\n\n Parameters\n ----------\n y : float\n Gregorian calendar year with fractional part.\n\n Returns\n -------\n j : float\n Julian date.\n\n Examples\n --------\n >>> tpm.y2j(2000.0040983606557)\n 2451545.0\n >>> tpm.y2j(2001.004109589041)\n 2451911.0\n >>> tpm.j2gcal(tpm.y2j(2001.004109589041))\n {'dd': 1, 'm': 1, 'y': 2001}\n\n "; +static const char __pyx_k_Convert_Julian_date_into_Julian[] = "Convert Julian date into Julian year.\n\n Parameters\n ----------\n jd : float\n Julian date.\n\n Returns\n -------\n jyear : float\n Julian year corresponding to the given Juilan date.\n\n Examples\n --------\n >>> tpm.jd2jyear(tpm.J2000)\n 2000.0\n >>> tpm.jd2jyear(tpm.B1950)\n 1949.9997904422992\n\n "; +static const char __pyx_k_Convert_angle_in_hours_into_arc[] = "Convert angle in hours into arc-seconds.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.h2as(12.0)\n 648000.0\n >>> tpm.h2as(-12.0)\n -648000.0\n\n "; +static const char __pyx_k_Greewich_Apparent_Sidereal_Time[] = "Greewich Apparent Sidereal Time."; +static const char __pyx_k_Heliocentric_Earth_state_vector[] = "Heliocentric Earth state vector."; +static const char __pyx_k_Normalize_angle_in_degrees_into[] = "Normalize angle in degrees into (-360, 360).\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in degrees normalized into (-360, 360).\n\n Examples\n --------\n >>> tpm.d2d(0.0)\n 0.0\n >>> tpm.d2d(-360.0)\n 0.0\n >>> tpm.d2d(360.0)\n 0.0\n >>> tpm.d2d(361.0)\n 1.0\n >>> tpm.d2d(-361.0)\n 359.0\n\n "; +static const char __pyx_k_Normalize_angle_in_hours_into_0[] = "Normalize angle in hours into [0, 24).\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n h : float\n Angle in hours normalized into [0, 24).\n\n Examples\n --------\n >>> tpm.h2h(0.0)\n 0.0\n >>> tpm.h2h(24.0)\n 0.0\n >>> tpm.h2h(25.0)\n 1.0\n >>> tpm.h2h(-25.0)\n 23.0\n >>> tpm.h2h(-1)\n 23.0\n >>> tpm.h2h(1)\n 1.0\n\n "; +static const char __pyx_k_Normalize_angle_in_radians_into[] = "Normalize angle in radians into [0, 2\317\200).\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n r : float\n Angle in radians normalized into [0, 2\317\200).\n\n Examples\n --------\n >>> tpm.r2r(0.0)\n 0.0\n >>> tpm.r2r(2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(-tpm.M_PI/2.0)\n 4.7123889803846897\n\n "; +static const char __pyx_k_Normalize_components_Normalizes[] = "Normalize components.\n\n Normalizes the arc-minutes and arc-seconds of the angle into\n the proper range. Note that after normalize the sign of the\n angle applies to the degrees part alone, and not to the whole\n angle.\n\n Don't use this class outside of PyTPM.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> dms = tpm.DMS(dd=-1.23)\n >>> dms.dd, dms.mm, dms.ss\n (-1.23, 0.0, 0.0)\n >>> print dms\n -01D 13' 47.999\"\n >>> dms.normalize()\n >>> dms.dd, dms.mm, dms.ss\n (-2.0, 46.0, 12.00000000000017)\n\n Note that in the above case if we were to do dms.dd=-1.0,\n dms.mm=13 and dms.ss=48, we would get different results.\n\n >>> dms.dd = -1\n >>> dms.mm = 46.0\n >>> dms.ss = 12.0\n >>> print dms\n --> print(dms)\n -00D 13' 48.000\"\n "; +static const char __pyx_k_Observing_wavelength_in_microns[] = "Observing wavelength in microns."; +static const char __pyx_k_Precession_matrix_from_J2000_to[] = "Precession matrix from J2000 to NOW."; +static const char __pyx_k_S1_must_be_in_0_S1_N_TPM_STATES[] = "S1 must be in 0 <= S1 < N_TPM_STATES"; +static const char __pyx_k_S2_must_be_in_0_S2_N_TPM_STATES[] = "S2 must be in 0 <= S2 < N_TPM_STATES"; +static const char __pyx_k_A_string_representation_in_the_r[] = "A string representation in the 'raw' format.\n\n Returns\n -------\n s : str\n A \"raw\" representation of the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).raw_str()\n '2000 1 1 12 0 0'\n >>> tpm.YMD(y=2000,m=6,dd=1.34,hh=12.0,mm=12.678).raw_str()\n '2000 6 1.34 12 12.678 0'\n\n Printing or converting to str gives a nicely formatted string\n representation.\n\n >>> ymd = tpm.YMD(y=2000,m=1,dd=1,hh=12.0)\n >>> print ymd\n --> print(ymd)\n Sat Jan 1 12:00:00.000 2000\n >>> str(ymd)\n 'Sat Jan 1 12:00:00.000 2000'\n\n "; +static const char __pyx_k_Can_only_subtract_two_DMS_values[] = "Can only subtract two DMS values."; +static const char __pyx_k_Can_only_subtract_two_HMS_values[] = "Can only subtract two HMS values."; +static const char __pyx_k_Can_only_subtract_two_V3CP_value[] = "Can only subtract two V3CP values."; +static const char __pyx_k_Can_only_subtract_two_V3SP_value[] = "Can only subtract two V3SP values."; +static const char __pyx_k_Can_only_subtract_two_V6C_values[] = "Can only subtract two V6C values."; +static const char __pyx_k_Can_only_subtract_two_YMD_values[] = "Can only subtract two YMD values."; +static const char __pyx_k_Can_only_take_cross_product_of_t[] = "Can only take cross product of two V6C values."; +static const char __pyx_k_Can_only_take_dot_product_of_two[] = "Can only take dot product of two V6C values."; +static const char __pyx_k_Convert_Besselian_year_into_a_Ju[] = "Convert Besselian year into a Julian date.\n\n Parameters\n ----------\n byear: float\n Besselian year.\n\n Returns\n -------\n j : float\n Julian date corresponding to the given Besselian year.\n\n Examples\n --------\n >>> tpm.byear2jd(1950.0)\n 2433282.4234590498\n >>> tpm.byear2jd(2000.0)\n 2451544.5333981365\n\n "; +static const char __pyx_k_Convert_JD_into_year_Gregorian_c[] = "Convert JD into year (Gregorian calendar).\n\n Returns\n -------\n y : float\n Year with fractional part. This is just\n (integer_year + day/num_of_days).\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_year()\n 2000.0054644808743\n >>> 2000+(2/366.0)\n 2000.0054644808743\n\n "; +static const char __pyx_k_Convert_JD_to_a_scalar_Julian_da[] = "Convert JD to a scalar Julian date.\n\n Returns\n -------\n j : float\n The scalar Julian date.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_j()\n 2451545.5\n\n "; +static const char __pyx_k_Convert_Julian_date_into_Gregori[] = "Convert Julian date into Gregorian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Gregorian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2gcal(tpm.J2000)\n {'dd': 1, 'm': 1, 'y': 2000}\n >>> tpm.j2gcal(tpm.B1950)\n {'dd': 31, 'm': 12, 'y': 1949}\n\n "; +static const char __pyx_k_Convert_Julian_date_into_a_Besse[] = "Convert Julian date into a Besselian year.\n\n Parameters\n ----------\n jd: float\n Julian date.\n\n Returns\n -------\n byear : float\n Besselian year corresponding to the given Julian date.\n\n Examples\n --------\n >>> tpm.jd2byear(tpm.B1950)\n 1950.0\n >>> tpm.jd2byear(tpm.J2000)\n 2000.0012775135656\n\n "; +static const char __pyx_k_Convert_Julian_year_into_a_Julia[] = "Convert Julian year into a Julian date.\n\n Parameters\n ----------\n jyear : float\n Julian year.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given Julian year.\n\n Examples\n --------\n >>> tpm.jyear2jd(2000.0)\n 2451545.0\n >>> tpm.jyear2jd(1950.0)\n 2433282.5\n\n "; +static const char __pyx_k_Convert_YMD_into_scalar_Julian_d[] = "Convert YMD into scalar Julian date.\n\n Returns\n -------\n jd : float\n The Julian date corresponding to the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_j()\n 2451545.0\n\n "; +static const char __pyx_k_Convert_angle_in_arc_seconds_int[] = "Convert angle in arc-seconds into degrees.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.as2d(3600.0)\n 1.0\n >>> tpm.as2d(-3600.0)\n -1.0\n\n "; +static const char __pyx_k_Convert_angle_in_degrees_into_ar[] = "Convert angle in degrees into arc-seconds.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.d2as(1.0)\n 3600.0\n >>> tpm.d2as(-1.0)\n -3600.0\n\n "; +static const char __pyx_k_Convert_angle_in_degrees_into_de[] = "Convert angle in degrees into degrees.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.d2r(180.0)\n 3.1415926535897931\n >>> tpm.d2r(-180.0)\n -3.1415926535897931\n >>> tpm.d2r(361.0)\n 6.3006385996995293\n\n "; +static const char __pyx_k_Convert_angle_in_degrees_into_ho[] = "Convert angle in degrees into hours.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.d2h(180.0)\n 12.0\n >>> tpm.d2h(-180.0)\n -12.0\n >>> tpm.d2h(12.3456)\n 0.82303999999999999\n\n "; +static const char __pyx_k_Convert_angle_in_hours_into_degr[] = "Convert angle in hours into degrees.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.h2d(12.0)\n 180.0\n >>> tpm.h2d(-12.0)\n -180.0\n >>> tpm.h2d(-25)\n -375.0\n\n "; +static const char __pyx_k_Convert_angle_in_hours_into_radi[] = "Convert angle in hours into radians.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.h2r(12.0)\n 3.1415926535897931\n >>> tpm.h2r(-12.0)\n -3.1415926535897931\n\n "; +static const char __pyx_k_Convert_angle_in_radians_into_ar[] = "Convert angle in radians into arc-seconds.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.r2as(tpm.M_PI)\n 648000.0\n >>> tpm.r2as(-tpm.M_PI)\n -648000.0\n "; +static const char __pyx_k_Convert_angle_in_radians_into_de[] = "Convert angle in radians into degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.r2d(tpm.M_PI)\n 180.0\n >>> tpm.r2d(tpm.M_PI/4.0)\n 45.0\n >>> tpm.r2d(-tpm.M_PI/4.0)\n -45.0\n >>> tpm.r2d(-2*tpm.M_PI)\n -360.0\n\n "; +static const char __pyx_k_Convert_angle_in_radians_into_ho[] = "Convert angle in radians into hours.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.r2h(tpm.M_PI)\n 12.0\n >>> tpm.r2h(-tpm.M_PI)\n -12.0\n\n "; +static const char __pyx_k_Convert_date_time_into_a_year_nu[] = "Convert date-time into a year number.\n\n Returns\n -------\n year : float\n Year number, i.e., year + (day / num. days).\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1).to_year()\n 2000.0027322404371\n >>> 2000+(1/366.0)\n 2000.0027322404371\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_year()\n 2000.0040983606557\n >>> 2000+(1/366.0+12/(24.0*366.0))\n 2000.0040983606557\n\n "; +static const char __pyx_k_Convert_into_a_tpm_JD_object_Ret[] = "Convert into a tpm.JD object.\n\n Returns\n -------\n jd : tpm.JD\n Contains Julian date corresponding to the Calendar date.\n\n Examples\n --------\n >>> j = tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_jd()\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.0, 'hh': 0.0}\n\n "; +static const char __pyx_k_Convert_to_YMD_Gregorian_calenda[] = "Convert to YMD (Gregorian calendar).\n\n Returns\n -------\n ymd : tpm.YMD\n The Julian date is converted into Gregorian calendar date\n and returned as a tpm.YMD object.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> ymd = jd.to_ymd()\n >>> ymd\n {'mm': 0.0, 'dd': 1.5, 'm': 1, 'ss': 0.0, 'hh': 12.0, 'y': 2000}\n\n "; +static const char __pyx_k_Day_of_the_year_corresponding_to[] = "Day of the year corresponding to the date-time.\n\n Returns\n -------\n doy : float\n Day of the year.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).doy()\n 1.5\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.5).doy()\n 1.5208333334885538\n\n "; +static const char __pyx_k_Format_Julian_date_into_a_string[] = "Format Julian date into a string.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n fmts : str\n String of the form: JD ##H ##M ##.###S.\n\n Notes\n -----\n This function takes a Julian date and returns a string that has a\n whole number Julian date and the fraction of the day expressed as\n hours, minutes and seconds in the 24-hour format.\n\n Examples\n --------\n >>> tpm.fmt_j(tpm.J2000)\n ' 2451545 00H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.5)\n ' 2451545 12H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.75)\n ' 2451545 18H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.7)\n ' 2451545 16H 48M 00.000S'\n >>> tpm.fmt_j(tpm.J2000-0.7)\n ' 2451544 07H 11M 59.999S'\n\n "; +static const char __pyx_k_Format_angle_in_degrees_into_a_s[] = "Format angle in degrees into a string: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function will format the given angle in degrees, into a string\n containing degrees, arc-minutes and arc-seconds. The angle is not\n normalized into any range, but is used as such.\n\n The degrees part can be two or three digits long.\n\n Examples\n --------\n >>> tpm.fmt_d(1.234567)\n '+01D 14' 04.441\"'\n >>> tpm.fmt_d(256.9)\n '+256D 53' 59.999\"'\n >>> tpm.fmt_d(-256.9)\n '-256D 53' 59.999\"'\n >>> tpm.fmt_d(6.9)\n '+06D 54' 00.000\"'\n >>> tpm.fmt_d(-361)\n '-361D 00' 00.000\"'\n >>> tpm.fmt_d(720)\n '+720D 00' 00.000\"'\n\n "; +static const char __pyx_k_Format_hours_into_a_string_H_M_S[] = "Format hours into a string: \302\261##H ##M ##.###S\".\n\n Parameters\n ----------\n d : float\n Angle in hours.\n\n Returns\n -------\n fmts : str\n String of the form \302\261##H ##M ##.###S.\n\n Notes\n -----\n This function will format the given angle in hours, into a string\n containing hours, minutes and seconds. The angle is not normalized\n into any range, but is used as such.\n\n Examples\n --------\n >>> tpm.fmt_h(1.23456)\n ' 01H 14M 04.416S'\n >>> tpm.fmt_h(13.456)\n ' 13H 27M 21.599S'\n >>> tpm.fmt_h(-13.456)\n '-13H 27M 21.599S'\n >>> tpm.fmt_h(-133.456)\n '-133H 27M 21.599S'\n\n "; +static const char __pyx_k_Format_radians_into_a_string_wit[] = "Format radians into a string with angle expressed as degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form: \302\261###D ##' ##.###\".\n\n Notes\n -----\n The function converts the angle given in radians into degrees and\n then return a string of the format \302\261###D ##' ##.###\". The\n fractional part of the angle is converted into arc-minutes and\n arc-seconds, but otherwise no normalization is done.\n\n Examples\n --------\n >>> tpm.fmt_r(1.0)\n '+57D 17' 44.806\"'\n >>> tpm.fmt_r(1.2345)\n '+70D 43' 53.903\"'\n >>> tpm.fmt_r(-2*tpm.M_PI)\n '-360D 00' 00.000\"'\n >>> tpm.fmt_r(-3*tpm.M_PI)\n '-540D 00' 00.000\"'\n >>> tpm.fmt_r(3*tpm.M_PI)\n '+540D 00' 00.000\"'\n\n "; +static const char __pyx_k_Format_years_including_fractiona[] = "Format years, including fractional part, into a string.\n\n Parameters\n ----------\n y : float\n Year, including fractional part.\n\n Returns\n -------\n fmts : str\n String of the form: AAA BBB DD HH:MM:SS.SSS YYYY, where AAA is\n the week day, BBB is the month and then the numbers that follow\n are indicate the day, the time in 24-hour format and the year.\n\n Examples\n --------\n >>> tpm.fmt_y(2000.0)\n 'Fri Dec 31 00:00:00.000 1999'\n >>> tpm.fmt_y(2000.0+1.0/366)\n 'Sat Jan 1 00:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.25/366)\n 'Sat Jan 1 06:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.7/366)\n 'Sat Jan 1 16:48:00.000 2000'\n >>> tpm.fmt_y(2001.0+32/365.0)\n 'Thu Feb 1 00:00:00.000 2001'\n\n "; +static const char __pyx_k_Geocentric_Earth_fixed_mean_stat[] = "Geocentric Earth-fixed mean state vector."; +static const char __pyx_k_Geocentric_Earth_fixed_true_stat[] = "Geocentric Earth-fixed true state vector."; +static const char __pyx_k_Geocentric_space_fixed_true_stat[] = "Geocentric space-fixed true state vector."; +static const char __pyx_k_Index_must_be_in_0_index_N_TPM_S[] = "Index must be in 0 <= index < N_TPM_STATES."; +static const char __pyx_k_Normalize_YMD_The_components_y_m[] = "Normalize YMD.\n\n The components `y`, `m`, `dd`, `hh`, `mm` and `ss` are\n normalized into their proper ranges.\n\n Examples\n --------\n >>> ymd = tpm.YMD(y=2010,m=3,dd=12.5,hh=12.25)\n >>> ymd\n {'mm': 0.0, 'dd': 12.5, 'm': 3, 'ss': 0.0, 'hh': 12.25, 'y': 2010}\n >>> ymd.normalize()\n >>> ymd\n {'mm': 14.0, 'dd': 13.0, 'm': 3, 'ss': 59.999986588954926, 'hh': 0.0, 'y': 2010}\n\n "; +static const char __pyx_k_Normalize_and_format_angle_in_ra[] = "Normalize and format angle in radians into a str: ' ##H ##M ##.###S'.\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form ' ##H ##M ##.###S'.\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [0,360) and then converts it into a string that represents\n angle/time in the 24-hour format. The angle is properly divided\n into hours, minutes and seconds.\n\n This is useful for formatting \"longitudinal\" angles, such as right\n ascension.\n\n Examples\n --------\n >>> tpm.fmt_alpha(tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI)\n ' 00H 00M 00.000S'\n >>> tpm.fmt_alpha(tpm.M_PI/2.0)\n ' 06H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI/2.0)\n ' 18H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI+(tpm.M_PI/12.0))\n ' 00H 59M 59.999S'\n >>> tpm.fmt_alpha(-(2*tpm.M_PI+(tpm.M_PI/12.0)))\n ' 23H 00M 00.000S'\n\n "; +static const char __pyx_k_Normalize_the_JD_structure_Norma[] = "Normalize the JD structure.\n\n Normalize the components into their proper ranges and carry the\n fractional part of the date into seconds.\n\n Examples\n --------\n >>> j = tpm.JD(j=2451545.1234467)\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.1234467002, 'hh': 0.0}\n >>> j.normalize()\n >>> j\n {'mm': 57.0, 'ss': 45.794894099235535, 'dd': 2451545.0, 'hh': 2.0}\n\n "; +static const char __pyx_k_Rate_of_change_of_ALPHA_coordina[] = "Rate of change of ALPHA coordinate."; +static const char __pyx_k_Rate_of_change_of_DELTA_coordina[] = "Rate of change of DELTA coordinate."; +static const char __pyx_k_Return_Julian_day_number_for_the[] = "Return Julian day number for the Gregorian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n m : int\n Month in the Gregorian calendar.\n dd : int\n Day in the Gregorian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.gcal2j(2000,1,1)\n 2451545.0\n >>> tpm.gcal2j(2010,1,1)\n 2455198.0\n >>> tpm.gcal2j(1950,1,1)\n 2433283.0\n\n "; +static const char __pyx_k_Return_day_of_week_for_the_given[] = "Return day of week for the given Julian date.\n\n Parameters\n ----------\n j : float\n Julian date (Gregorian calendar).\n\n Returns\n -------\n dow : int\n Day of the week: 0 - Sunday, 6 - Saturday.\n\n Examples\n --------\n >>> j = tpm.gcal2j(2010,1,1)\n >>> tpm.fmt_y(tpm.j2y(j))\n 'Fri Jan 1 12:00:00.000 2010'\n >>> tpm.j2dow(j)\n 5\n\n "; +static const char __pyx_k_Return_number_of_days_in_the_giv[] = "Return number of days in the given Gregorian calendar year.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n\n Returns\n -------\n doy : int\n Number of days in the year.\n\n Examples\n --------\n >>> tpm.y2doy(2000)\n 366\n >>> tpm.y2doy(2001)\n 365\n >>> tpm.y2doy(2002)\n 365\n >>> tpm.y2doy(2003)\n 365\n >>> tpm.y2doy(2004)\n 366\n\n "; +static const char __pyx_k_Return_state_name_given_state_id[] = "Return state name given state id.\n\n Given an integer id for a state, this function returns a\n descriptive name for the state.\n\n Parameters\n ----------\n s : int\n State id.\n\n Returns\n -------\n n : str\n State name.\n\n Examples\n --------\n >>> tpm.tpm_state(tpm.TPM_S06)\n 'Helio. mean FK5'\n >>> tpm.tpm_state(tpm.TPM_S04)\n 'IAU 1958 Galactic'\n >>> tpm.tpm_state(tpm.TPM_S20)\n 'Topo. obs. HA/Dec'\n >>> tpm.tpm_state(tpm.TPM_S19)\n 'Topo. obs. Az/El'\n\n "; +static const char __pyx_k_Terrestrial_Dynamic_Time_Terrest[] = "Terrestrial Dynamic Time (Terrestrial Time)."; +static const char __pyx_k_Type_of_V3_must_be_the_same_as_t[] = "Type of V3 must be the same as that of V6."; +static const char __pyx_k_UTC_as_JD_Defines_NOW_i_e_curren[] = "UTC as JD. Defines NOW, i.e., current time."; +static const char __pyx_k_no_default___reduce___due_to_non[] = "no default __reduce__ due to non-trivial __cinit__"; +static const char __pyx_k_Convert_Julian_date_into_Julian_2[] = "Convert Julian date into Julian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Julian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2jcal(tpm.J2000)\n {'dd': 19, 'm': 12, 'y': 1999}\n >>> tpm.j2jcal(tpm.B1950)\n {'dd': 18, 'm': 12, 'y': 1949}\n\n "; +static const char __pyx_k_Normalize_components_Normalizes_2[] = "Normalize components.\n\n Normalizes the angle so that hours and minutes part are integer\n valued and the fractional part gets assigned to\n seconds. Similar to the case of `DMS`, the negative sign gets\n assigned to the hours part.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> h = tpm.HMS()\n >>> h.hh = 12.34\n >>> h.mm = 1.3\n >>> h.ss = 61.4\n >>> h\n {'mm': 1.3, 'ss': 61.399999999999999, 'hh': 12.34}\n >>> h.normalize()\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': 12.0}\n >>> h.hh = -12.34\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': -12.34}\n >>> h.normalize()\n >>> h\n {'mm': 2.0, 'ss': 19.400000000001967, 'hh': -12.0}\n\n "; +static const char __pyx_k_Convert_Julian_date_into_Gregori_2[] = "Convert Julian date into Gregorian calendar year with fractional part.\n\n Parameters\n ----------\n j : float\n Julian date\n\n Returns\n -------\n year : float\n Year, including fractional part, in the Gregorian\n calendar. This is just (integer_year + day / num_of_days.)\n\n Examples\n --------\n >>> tpm.j2y(tpm.J2000)\n 2000.0040983606557\n >>> 2000+(1.5/366)\n 2000.0040983606557\n >>> tpm.j2y(tpm.J2000+366)\n 2001.004109589041\n\n "; +static const char __pyx_k_Convert_angle_in_arc_seconds_int_2[] = "Convert angle in arc-seconds into hours.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.as2h(3600.0*180.0)\n 12.0\n >>> tpm.as2h(-3600.0*180.0)\n -12.0\n\n "; +static const char __pyx_k_Convert_angle_in_arc_seconds_int_3[] = "Convert angle in arc-seconds into radians.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.as2r(3600.0*180.0)\n 3.1415926535897931\n >>> tpm.as2r(-3600.0*180.0)\n -3.1415926535897931\n\n "; +static const char __pyx_k_Normalize_and_format_angle_in_ra_2[] = "Normalize and format angle in radians into a str: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Return\n ------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [-\317\200/2, \317\200/2] and then formats it into a string of the form\n \302\261###D ##' ##.###\", where each part of the string corresponds to\n degrees, arc-minutes and arc-seconds.\n\n This is useful for formatted output of \"latitudinal\" angles, such\n as declination.\n\n Examples\n --------\n >>> tpm.fmt_delta(tpm.M_PI/2.0)\n '+90D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI/2.0)\n '-90D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI/4.0)\n '+45D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI)\n '+00D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI)\n '+00D 00' 00.000\"'\n "; +static const char __pyx_k_Return_Julian_day_number_for_the_2[] = "Return Julian day number for the Julian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Julian calendar.\n m : int\n Month in the Julian calendar.\n dd : int\n Day in the Julian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n >>> tpm.jcal2j(2000,1,1)\n 2451558.0\n >>> tpm.jcal2j(2010,1,1)\n 2455211.0\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n\n "; +static PyObject *__pyx_kp_s_ALPHA_coordinate; +static PyObject *__pyx_kp_u_A_string_representation_in_the_r; +static PyObject *__pyx_kp_s_Altitude_above_geoid_in_meters; +static PyObject *__pyx_kp_s_Ambient_humidity_0_1; +static PyObject *__pyx_kp_s_Ambient_pressure_in_millibars; +static PyObject *__pyx_kp_s_Ambient_temperature_in_Kelvins; +static PyObject *__pyx_n_s_B1950; +static PyObject *__pyx_kp_s_Barycentric_Dynamic_Time; +static PyObject *__pyx_kp_s_Barycentric_Earth_state_vector; +static PyObject *__pyx_n_s_C; +static PyObject *__pyx_n_s_CARTESIAN; +static PyObject *__pyx_n_s_CB; +static PyObject *__pyx_n_s_CJ; +static PyObject *__pyx_kp_s_Can_only_add_two_DMS_values; +static PyObject *__pyx_kp_s_Can_only_add_two_HMS_values; +static PyObject *__pyx_kp_s_Can_only_add_two_JD_values; +static PyObject *__pyx_kp_s_Can_only_add_two_V3CP_values; +static PyObject *__pyx_kp_s_Can_only_add_two_V3SP_values; +static PyObject *__pyx_kp_s_Can_only_add_two_V6C_values; +static PyObject *__pyx_kp_s_Can_only_subtract_two_DMS_values; +static PyObject *__pyx_kp_s_Can_only_subtract_two_HMS_values; +static PyObject *__pyx_kp_s_Can_only_subtract_two_V3CP_value; +static PyObject *__pyx_kp_s_Can_only_subtract_two_V3SP_value; +static PyObject *__pyx_kp_s_Can_only_subtract_two_V6C_values; +static PyObject *__pyx_kp_s_Can_only_subtract_two_YMD_values; +static PyObject *__pyx_kp_s_Can_only_take_cross_product_of_t; +static PyObject *__pyx_kp_s_Can_only_take_dot_product_of_two; +static PyObject *__pyx_kp_u_Convert_Besselian_year_into_a_Ju; +static PyObject *__pyx_kp_u_Convert_Gregorian_calendar_year; +static PyObject *__pyx_kp_u_Convert_JD_into_year_Gregorian_c; +static PyObject *__pyx_kp_u_Convert_JD_to_a_scalar_Julian_da; +static PyObject *__pyx_kp_u_Convert_Julian_date_into_Gregori; +static PyObject *__pyx_kp_u_Convert_Julian_date_into_Gregori_2; +static PyObject *__pyx_kp_u_Convert_Julian_date_into_Julian; +static PyObject *__pyx_kp_u_Convert_Julian_date_into_Julian_2; +static PyObject *__pyx_kp_u_Convert_Julian_date_into_a_Besse; +static PyObject *__pyx_kp_u_Convert_Julian_year_into_a_Julia; +static PyObject *__pyx_kp_u_Convert_YMD_into_scalar_Julian_d; +static PyObject *__pyx_kp_u_Convert_angle_in_arc_seconds_int; +static PyObject *__pyx_kp_u_Convert_angle_in_arc_seconds_int_2; +static PyObject *__pyx_kp_u_Convert_angle_in_arc_seconds_int_3; +static PyObject *__pyx_kp_u_Convert_angle_in_degrees_into_ar; +static PyObject *__pyx_kp_u_Convert_angle_in_degrees_into_de; +static PyObject *__pyx_kp_u_Convert_angle_in_degrees_into_ho; +static PyObject *__pyx_kp_u_Convert_angle_in_hours_into_arc; +static PyObject *__pyx_kp_u_Convert_angle_in_hours_into_degr; +static PyObject *__pyx_kp_u_Convert_angle_in_hours_into_radi; +static PyObject *__pyx_kp_u_Convert_angle_in_radians_into_ar; +static PyObject *__pyx_kp_u_Convert_angle_in_radians_into_de; +static PyObject *__pyx_kp_u_Convert_angle_in_radians_into_ho; +static PyObject *__pyx_kp_u_Convert_date_time_into_a_year_nu; +static PyObject *__pyx_kp_u_Convert_into_a_tpm_JD_object_Ret; +static PyObject *__pyx_kp_u_Convert_to_YMD_Gregorian_calenda; +static PyObject *__pyx_kp_s_DELTA_AT_TAI_UTC_s; +static PyObject *__pyx_kp_s_DELTA_UT_UT1_UTC_s; +static PyObject *__pyx_kp_s_DELTA_coordinate; +static PyObject *__pyx_n_s_DMS; +static PyObject *__pyx_kp_u_DMS_normalize_line_161; +static PyObject *__pyx_kp_s_Day_as_a_float; +static PyObject *__pyx_kp_u_Day_of_the_year_corresponding_to; +static PyObject *__pyx_kp_s_Degrees; +static PyObject *__pyx_kp_s_East_longitude_in_radians; +static PyObject *__pyx_n_s_FRIDAY; +static PyObject *__pyx_kp_u_Format_Julian_date_into_a_string; +static PyObject *__pyx_kp_u_Format_angle_in_degrees_into_a_s; +static PyObject *__pyx_kp_u_Format_hours_into_a_string_H_M_S; +static PyObject *__pyx_kp_u_Format_radians_into_a_string_wit; +static PyObject *__pyx_kp_u_Format_years_including_fractiona; +static PyObject *__pyx_n_s_GAL_DEC; +static PyObject *__pyx_n_s_GAL_LON; +static PyObject *__pyx_n_s_GAL_RA; +static PyObject *__pyx_kp_s_Geocentric_Earth_fixed_mean_stat; +static PyObject *__pyx_kp_s_Geocentric_Earth_fixed_true_stat; +static PyObject *__pyx_kp_s_Geocentric_space_fixed_true_stat; +static PyObject *__pyx_kp_s_Greewich_Apparent_Sidereal_Time; +static PyObject *__pyx_kp_s_Greewich_Mean_Sidereal_Time; +static PyObject *__pyx_n_s_H; +static PyObject *__pyx_n_s_HMS; +static PyObject *__pyx_kp_u_HMS_normalize_line_367; +static PyObject *__pyx_kp_s_Heliocentric_Earth_state_vector; +static PyObject *__pyx_kp_s_Hours; +static PyObject *__pyx_kp_s_Hours_as_a_float; +static PyObject *__pyx_n_s_IAU_AU; +static PyObject *__pyx_n_s_IAU_C; +static PyObject *__pyx_n_s_IAU_DM; +static PyObject *__pyx_n_s_IAU_F; +static PyObject *__pyx_n_s_IAU_K; +static PyObject *__pyx_n_s_IAU_KAPPA; +static PyObject *__pyx_n_s_IAU_RE; +static PyObject *__pyx_n_s_IAU_RM; +static PyObject *__pyx_n_s_IAU_W; +static PyObject *__pyx_n_s_IndexError; +static PyObject *__pyx_kp_s_Index_must_be_an_integer; +static PyObject *__pyx_kp_s_Index_must_be_in_0_index_N_TPM_S; +static PyObject *__pyx_kp_s_International_Atomic_Time; +static PyObject *__pyx_kp_s_Invalid_keyword_0; +static PyObject *__pyx_n_s_J1984; +static PyObject *__pyx_n_s_J2000; +static PyObject *__pyx_n_s_JD; +static PyObject *__pyx_kp_u_JD_normalize_line_847; +static PyObject *__pyx_kp_u_JD_to_j_line_888; +static PyObject *__pyx_kp_u_JD_to_year_line_905; +static PyObject *__pyx_kp_u_JD_to_ymd_line_865; +static PyObject *__pyx_kp_s_Latitude_in_radians; +static PyObject *__pyx_kp_s_Latitudinal_coordinate; +static PyObject *__pyx_kp_s_Local_Apparent_Sidereal_Time; +static PyObject *__pyx_kp_s_Longitudinal_coordinate; +static PyObject *__pyx_n_s_M3; +static PyObject *__pyx_n_s_M6; +static PyObject *__pyx_n_s_MJD_0; +static PyObject *__pyx_n_s_MONDAY; +static PyObject *__pyx_n_s_M_PI; +static PyObject *__pyx_kp_s_Minutes; +static PyObject *__pyx_kp_s_Minutes_as_a_float; +static PyObject *__pyx_kp_s_Minutes_of_arc; +static PyObject *__pyx_kp_s_Month_as_an_integer; +static PyObject *__pyx_kp_s_Month_must_be_an_integer; +static PyObject *__pyx_n_s_N_TPM_STATES; +static PyObject *__pyx_n_s_N_TPM_TRANS; +static PyObject *__pyx_kp_u_Normalize_YMD_The_components_y_m; +static PyObject *__pyx_kp_u_Normalize_and_format_angle_in_ra; +static PyObject *__pyx_kp_u_Normalize_and_format_angle_in_ra_2; +static PyObject *__pyx_kp_u_Normalize_angle_in_degrees_into; +static PyObject *__pyx_kp_u_Normalize_angle_in_hours_into_0; +static PyObject *__pyx_kp_u_Normalize_angle_in_radians_into; +static PyObject *__pyx_kp_u_Normalize_components_Normalizes; +static PyObject *__pyx_kp_u_Normalize_components_Normalizes_2; +static PyObject *__pyx_kp_u_Normalize_the_JD_structure_Norma; +static PyObject *__pyx_kp_s_Nutation_in_longitude; +static PyObject *__pyx_kp_s_Nutation_in_obliquity; +static PyObject *__pyx_kp_s_Nutation_matrix_for_NOW; +static PyObject *__pyx_kp_s_Obliquity_of_the_Ecliptic; +static PyObject *__pyx_kp_s_Observing_wavelength_in_microns; +static PyObject *__pyx_n_s_P; +static PyObject *__pyx_n_s_POLAR; +static PyObject *__pyx_n_s_POS; +static PyObject *__pyx_kp_s_PP_component; +static PyObject *__pyx_n_s_PRECESS_ANDOYER; +static PyObject *__pyx_n_s_PRECESS_FK4; +static PyObject *__pyx_n_s_PRECESS_FK5; +static PyObject *__pyx_n_s_PRECESS_INERTIAL; +static PyObject *__pyx_n_s_PRECESS_KINOSHITA; +static PyObject *__pyx_n_s_PRECESS_LIESKE; +static PyObject *__pyx_n_s_PRECESS_NEWCOMB; +static PyObject *__pyx_n_s_PRECESS_ROTATING; +static PyObject *__pyx_n_s_PVEC; +static PyObject *__pyx_kp_s_PV_component; +static PyObject *__pyx_kp_s_Polar_motion_in_radians; +static PyObject *__pyx_kp_s_Precession_matrix_from_J2000_to; +static PyObject *__pyx_kp_s_R_coordinate; +static PyObject *__pyx_kp_s_Radial_coordinate; +static PyObject *__pyx_kp_s_Rate_of_change_of_ALPHA_coordina; +static PyObject *__pyx_kp_s_Rate_of_change_of_DELTA_coordina; +static PyObject *__pyx_kp_s_Rate_of_change_of_R_coordinate; +static PyObject *__pyx_kp_s_Rate_of_change_of_X_coordinate; +static PyObject *__pyx_kp_s_Rate_of_change_of_Y_coordinate; +static PyObject *__pyx_kp_s_Rate_of_change_of_Z_coordinate; +static PyObject *__pyx_kp_s_Refraction_coefficient; +static PyObject *__pyx_kp_u_Return_Julian_day_number_for_the; +static PyObject *__pyx_kp_u_Return_Julian_day_number_for_the_2; +static PyObject *__pyx_kp_u_Return_day_of_week_for_the_given; +static PyObject *__pyx_kp_u_Return_number_of_days_in_the_giv; +static PyObject *__pyx_kp_u_Return_state_name_given_state_id; +static PyObject *__pyx_kp_s_S1_must_be_in_0_S1_N_TPM_STATES; +static PyObject *__pyx_kp_s_S2_must_be_in_0_S2_N_TPM_STATES; +static PyObject *__pyx_n_s_SATURDAY; +static PyObject *__pyx_n_s_SPHERICAL; +static PyObject *__pyx_n_s_SUNDAY; +static PyObject *__pyx_kp_s_Seconds; +static PyObject *__pyx_kp_s_Seconds_as_a_float; +static PyObject *__pyx_kp_s_Seconds_of_arc; +static PyObject *__pyx_n_s_T; +static PyObject *__pyx_n_s_TARGET_APP_AZEL; +static PyObject *__pyx_n_s_TARGET_APP_HADEC; +static PyObject *__pyx_n_s_TARGET_ECL; +static PyObject *__pyx_n_s_TARGET_FK4; +static PyObject *__pyx_n_s_TARGET_FK5; +static PyObject *__pyx_n_s_TARGET_GAL; +static PyObject *__pyx_n_s_TARGET_HADEC; +static PyObject *__pyx_n_s_TARGET_OBS_AZEL; +static PyObject *__pyx_n_s_TARGET_OBS_HADEC; +static PyObject *__pyx_n_s_TARGET_OBS_WHAM; +static PyObject *__pyx_n_s_TARGET_TOP_AZEL; +static PyObject *__pyx_n_s_THURSDAY; +static PyObject *__pyx_n_s_TPM_ALL; +static PyObject *__pyx_n_s_TPM_FAST; +static PyObject *__pyx_n_s_TPM_INIT; +static PyObject *__pyx_n_s_TPM_MEDIUM; +static PyObject *__pyx_n_s_TPM_REFRACTION; +static PyObject *__pyx_n_s_TPM_S00; +static PyObject *__pyx_n_s_TPM_S01; +static PyObject *__pyx_n_s_TPM_S02; +static PyObject *__pyx_n_s_TPM_S03; +static PyObject *__pyx_n_s_TPM_S04; +static PyObject *__pyx_n_s_TPM_S05; +static PyObject *__pyx_n_s_TPM_S06; +static PyObject *__pyx_n_s_TPM_S07; +static PyObject *__pyx_n_s_TPM_S08; +static PyObject *__pyx_n_s_TPM_S09; +static PyObject *__pyx_n_s_TPM_S10; +static PyObject *__pyx_n_s_TPM_S11; +static PyObject *__pyx_n_s_TPM_S12; +static PyObject *__pyx_n_s_TPM_S13; +static PyObject *__pyx_n_s_TPM_S14; +static PyObject *__pyx_n_s_TPM_S15; +static PyObject *__pyx_n_s_TPM_S16; +static PyObject *__pyx_n_s_TPM_S17; +static PyObject *__pyx_n_s_TPM_S18; +static PyObject *__pyx_n_s_TPM_S19; +static PyObject *__pyx_n_s_TPM_S20; +static PyObject *__pyx_n_s_TPM_S21; +static PyObject *__pyx_n_s_TPM_SLOW; +static PyObject *__pyx_n_s_TPM_T00; +static PyObject *__pyx_n_s_TPM_T01; +static PyObject *__pyx_n_s_TPM_T02; +static PyObject *__pyx_n_s_TPM_T03; +static PyObject *__pyx_n_s_TPM_T04; +static PyObject *__pyx_n_s_TPM_T05; +static PyObject *__pyx_n_s_TPM_T06; +static PyObject *__pyx_n_s_TPM_T07; +static PyObject *__pyx_n_s_TPM_T08; +static PyObject *__pyx_n_s_TPM_T09; +static PyObject *__pyx_n_s_TPM_T10; +static PyObject *__pyx_n_s_TPM_T11; +static PyObject *__pyx_n_s_TPM_T12; +static PyObject *__pyx_n_s_TPM_T13; +static PyObject *__pyx_n_s_TPM_T14; +static PyObject *__pyx_n_s_TPM_T15; +static PyObject *__pyx_n_s_TSTATE; +static PyObject *__pyx_n_s_TUESDAY; +static PyObject *__pyx_kp_s_Terrestrial_Dynamic_Time_Terrest; +static PyObject *__pyx_kp_s_The_position_component; +static PyObject *__pyx_n_s_TypeError; +static PyObject *__pyx_kp_s_Type_of_V3_must_be_the_same_as_t; +static PyObject *__pyx_kp_s_UTC_as_JD_Defines_NOW_i_e_curren; +static PyObject *__pyx_kp_s_Universal_time; +static PyObject *__pyx_n_s_V3; +static PyObject *__pyx_n_s_V3CP; +static PyObject *__pyx_n_s_V3SP; +static PyObject *__pyx_n_s_V6; +static PyObject *__pyx_n_s_V6C; +static PyObject *__pyx_n_s_V6S; +static PyObject *__pyx_n_s_VEL; +static PyObject *__pyx_kp_s_VP_component; +static PyObject *__pyx_kp_s_VV_component; +static PyObject *__pyx_n_s_ValueError; +static PyObject *__pyx_kp_s_Value_must_be_a_V6C_object; +static PyObject *__pyx_n_s_WEDNESDAY; +static PyObject *__pyx_n_s_X; +static PyObject *__pyx_kp_s_XX; +static PyObject *__pyx_kp_s_XY; +static PyObject *__pyx_kp_s_XZ; +static PyObject *__pyx_kp_s_X_coordinate; +static PyObject *__pyx_n_s_Y; +static PyObject *__pyx_n_s_YMD; +static PyObject *__pyx_kp_u_YMD_doy_line_677; +static PyObject *__pyx_kp_u_YMD_normalize_line_594; +static PyObject *__pyx_kp_u_YMD_raw_str_line_649; +static PyObject *__pyx_kp_u_YMD_to_j_line_633; +static PyObject *__pyx_kp_u_YMD_to_jd_line_612; +static PyObject *__pyx_kp_u_YMD_to_year_line_695; +static PyObject *__pyx_kp_s_YX; +static PyObject *__pyx_kp_s_YY; +static PyObject *__pyx_kp_s_YZ; +static PyObject *__pyx_kp_s_Y_coordinate; +static PyObject *__pyx_kp_s_Year_as_an_integer; +static PyObject *__pyx_kp_s_Year_must_be_an_integer; +static PyObject *__pyx_n_s_Z; +static PyObject *__pyx_kp_s_ZX; +static PyObject *__pyx_kp_s_ZY; +static PyObject *__pyx_kp_s_ZZ; +static PyObject *__pyx_kp_s_Z_coordinate; +static PyObject *__pyx_n_s_aberrate; +static PyObject *__pyx_n_s_action; +static PyObject *__pyx_n_s_alpha; +static PyObject *__pyx_kp_s_alpha_normalized_to_0_2; +static PyObject *__pyx_n_s_alphadot; +static PyObject *__pyx_n_s_alt; +static PyObject *__pyx_n_s_arcs; +static PyObject *__pyx_n_s_as2d; +static PyObject *__pyx_kp_u_as2d_line_1824; +static PyObject *__pyx_n_s_as2h; +static PyObject *__pyx_kp_u_as2h_line_1848; +static PyObject *__pyx_n_s_as2r; +static PyObject *__pyx_kp_u_as2r_line_1919; +static PyObject *__pyx_n_s_azel2hadec; +static PyObject *__pyx_n_s_byear; +static PyObject *__pyx_n_s_byear2jd; +static PyObject *__pyx_kp_u_byear2jd_line_927; +static PyObject *__pyx_n_s_c2s; +static PyObject *__pyx_n_s_cat2v6; +static PyObject *__pyx_n_s_class; +static PyObject *__pyx_n_s_cline_in_traceback; +static PyObject *__pyx_n_s_ctype; +static PyObject *__pyx_n_s_d; +static PyObject *__pyx_n_s_d2as; +static PyObject *__pyx_kp_u_d2as_line_1800; +static PyObject *__pyx_n_s_d2d; +static PyObject *__pyx_kp_u_d2d_line_1549; +static PyObject *__pyx_n_s_d2h; +static PyObject *__pyx_kp_u_d2h_line_1646; +static PyObject *__pyx_n_s_d2r; +static PyObject *__pyx_kp_u_d2r_line_1698; +static PyObject *__pyx_n_s_dd; +static PyObject *__pyx_n_s_degrees; +static PyObject *__pyx_n_s_delta; +static PyObject *__pyx_n_s_delta_AT; +static PyObject *__pyx_n_s_delta_ET; +static PyObject *__pyx_n_s_delta_T; +static PyObject *__pyx_n_s_delta_TT; +static PyObject *__pyx_n_s_delta_UT; +static PyObject *__pyx_n_s_delta_at; +static PyObject *__pyx_n_s_delta_eps; +static PyObject *__pyx_kp_s_delta_normalized_to_2_2; +static PyObject *__pyx_n_s_delta_phi; +static PyObject *__pyx_n_s_delta_ut; +static PyObject *__pyx_n_s_deltadot; +static PyObject *__pyx_n_s_doc; +static PyObject *__pyx_n_s_e; +static PyObject *__pyx_n_s_earth; +static PyObject *__pyx_n_s_eb; +static PyObject *__pyx_n_s_eccentricity; +static PyObject *__pyx_n_s_eccentricity_dot; +static PyObject *__pyx_n_s_ecl2equ; +static PyObject *__pyx_n_s_eh; +static PyObject *__pyx_n_s_ellab; +static PyObject *__pyx_n_s_end; +static PyObject *__pyx_n_s_ep; +static PyObject *__pyx_n_s_eps; +static PyObject *__pyx_n_s_eq; +static PyObject *__pyx_n_s_equ2ecl; +static PyObject *__pyx_n_s_equ2gal; +static PyObject *__pyx_n_s_et; +static PyObject *__pyx_n_s_et2tai; +static PyObject *__pyx_n_s_et2tdb; +static PyObject *__pyx_n_s_et2tdt; +static PyObject *__pyx_n_s_et2ut; +static PyObject *__pyx_n_s_et2ut1; +static PyObject *__pyx_n_s_et2utc; +static PyObject *__pyx_n_s_eterms; +static PyObject *__pyx_n_s_evp; +static PyObject *__pyx_n_s_fk425; +static PyObject *__pyx_n_s_fk524; +static PyObject *__pyx_n_s_flag; +static PyObject *__pyx_n_s_fmt_alpha; +static PyObject *__pyx_kp_u_fmt_alpha_line_1287; +static PyObject *__pyx_n_s_fmt_d; +static PyObject *__pyx_kp_u_fmt_d_line_1370; +static PyObject *__pyx_n_s_fmt_delta; +static PyObject *__pyx_kp_u_fmt_delta_line_1331; +static PyObject *__pyx_n_s_fmt_h; +static PyObject *__pyx_kp_u_fmt_h_line_1410; +static PyObject *__pyx_n_s_fmt_j; +static PyObject *__pyx_kp_u_fmt_j_line_1444; +static PyObject *__pyx_n_s_fmt_r; +static PyObject *__pyx_kp_u_fmt_r_line_1480; +static PyObject *__pyx_n_s_fmt_y; +static PyObject *__pyx_kp_u_fmt_y_line_1517; +static PyObject *__pyx_n_s_format; +static PyObject *__pyx_n_s_gal2equ; +static PyObject *__pyx_n_s_gast; +static PyObject *__pyx_n_s_gcal2j; +static PyObject *__pyx_kp_u_gcal2j_line_1053; +static PyObject *__pyx_n_s_geod2geoc; +static PyObject *__pyx_n_s_get; +static PyObject *__pyx_n_s_getH; +static PyObject *__pyx_n_s_getP; +static PyObject *__pyx_n_s_getPOS; +static PyObject *__pyx_n_s_getPP; +static PyObject *__pyx_n_s_getPV; +static PyObject *__pyx_n_s_getT; +static PyObject *__pyx_n_s_getVP; +static PyObject *__pyx_n_s_getVV; +static PyObject *__pyx_n_s_getalpha; +static PyObject *__pyx_n_s_getalphadot; +static PyObject *__pyx_n_s_getalt; +static PyObject *__pyx_n_s_getdd; +static PyObject *__pyx_n_s_getdelta; +static PyObject *__pyx_n_s_getdelta_at; +static PyObject *__pyx_n_s_getdelta_ut; +static PyObject *__pyx_n_s_getdeltadot; +static PyObject *__pyx_n_s_geteb; +static PyObject *__pyx_n_s_geteh; +static PyObject *__pyx_n_s_getgast; +static PyObject *__pyx_n_s_getgmst; +static PyObject *__pyx_n_s_gethh; +static PyObject *__pyx_n_s_getlast; +static PyObject *__pyx_n_s_getlat; +static PyObject *__pyx_n_s_getlon; +static PyObject *__pyx_n_s_getm; +static PyObject *__pyx_n_s_getmm; +static PyObject *__pyx_n_s_getnalpha; +static PyObject *__pyx_n_s_getndelta; +static PyObject *__pyx_n_s_getnm; +static PyObject *__pyx_n_s_getnut_lon; +static PyObject *__pyx_n_s_getnut_obl; +static PyObject *__pyx_n_s_getobliquity; +static PyObject *__pyx_n_s_getobs_m; +static PyObject *__pyx_n_s_getobs_s; +static PyObject *__pyx_n_s_getobs_t; +static PyObject *__pyx_n_s_getpm; +static PyObject *__pyx_n_s_getr; +static PyObject *__pyx_n_s_getrdot; +static PyObject *__pyx_n_s_getrefa; +static PyObject *__pyx_n_s_getrefb; +static PyObject *__pyx_n_s_getss; +static PyObject *__pyx_n_s_getstate; +static PyObject *__pyx_n_s_gettai; +static PyObject *__pyx_n_s_gettdb; +static PyObject *__pyx_n_s_gettdt; +static PyObject *__pyx_n_s_getut1; +static PyObject *__pyx_n_s_getutc; +static PyObject *__pyx_n_s_getwavelength; +static PyObject *__pyx_n_s_getx; +static PyObject *__pyx_n_s_getxdot; +static PyObject *__pyx_n_s_getxpole; +static PyObject *__pyx_n_s_getxx; +static PyObject *__pyx_n_s_getxy; +static PyObject *__pyx_n_s_getxz; +static PyObject *__pyx_n_s_gety; +static PyObject *__pyx_n_s_getydot; +static PyObject *__pyx_n_s_getypole; +static PyObject *__pyx_n_s_getyx; +static PyObject *__pyx_n_s_getyy; +static PyObject *__pyx_n_s_getyz; +static PyObject *__pyx_n_s_getz; +static PyObject *__pyx_n_s_getzdot; +static PyObject *__pyx_n_s_getzx; +static PyObject *__pyx_n_s_getzy; +static PyObject *__pyx_n_s_getzz; +static PyObject *__pyx_n_s_gmst; +static PyObject *__pyx_n_s_h; +static PyObject *__pyx_n_s_h2as; +static PyObject *__pyx_kp_u_h2as_line_1872; +static PyObject *__pyx_n_s_h2d; +static PyObject *__pyx_kp_u_h2d_line_1672; +static PyObject *__pyx_n_s_h2h; +static PyObject *__pyx_kp_u_h2h_line_1579; +static PyObject *__pyx_n_s_h2r; +static PyObject *__pyx_kp_u_h2r_line_1752; +static PyObject *__pyx_n_s_hadec2azel; +static PyObject *__pyx_n_s_hh; +static PyObject *__pyx_n_s_j; +static PyObject *__pyx_n_s_j2dow; +static PyObject *__pyx_kp_u_j2dow_line_1232; +static PyObject *__pyx_n_s_j2gcal; +static PyObject *__pyx_kp_u_j2gcal_line_1119; +static PyObject *__pyx_n_s_j2jcal; +static PyObject *__pyx_kp_u_j2jcal_line_1149; +static PyObject *__pyx_n_s_j2y; +static PyObject *__pyx_kp_u_j2y_line_1179; +static PyObject *__pyx_n_s_jcal2j; +static PyObject *__pyx_kp_u_jcal2j_line_1085; +static PyObject *__pyx_n_s_jd; +static PyObject *__pyx_n_s_jd2byear; +static PyObject *__pyx_kp_u_jd2byear_line_951; +static PyObject *__pyx_n_s_jd2jyear; +static PyObject *__pyx_kp_u_jd2jyear_line_999; +static PyObject *__pyx_n_s_jd_now; +static PyObject *__pyx_n_s_jyear; +static PyObject *__pyx_n_s_jyear2jd; +static PyObject *__pyx_kp_u_jyear2jd_line_975; +static PyObject *__pyx_n_s_last; +static PyObject *__pyx_n_s_lat; +static PyObject *__pyx_n_s_latitude; +static PyObject *__pyx_n_s_ldeflect; +static PyObject *__pyx_n_s_lon; +static PyObject *__pyx_n_s_m; +static PyObject *__pyx_n_s_m3; +static PyObject *__pyx_n_s_m3rx; +static PyObject *__pyx_n_s_m3rxdot; +static PyObject *__pyx_n_s_m3ry; +static PyObject *__pyx_n_s_m3rydot; +static PyObject *__pyx_n_s_m3rz; +static PyObject *__pyx_n_s_m3rzdot; +static PyObject *__pyx_n_s_m6; +static PyObject *__pyx_n_s_m6qx; +static PyObject *__pyx_n_s_m6qy; +static PyObject *__pyx_n_s_m6qz; +static PyObject *__pyx_n_s_main; +static PyObject *__pyx_n_s_mm; +static PyObject *__pyx_n_s_nalpha; +static PyObject *__pyx_n_s_name; +static PyObject *__pyx_n_s_ndelta; +static PyObject *__pyx_n_s_nm; +static PyObject *__pyx_kp_s_no_default___reduce___due_to_non; +static PyObject *__pyx_n_s_nut_lon; +static PyObject *__pyx_n_s_nut_obl; +static PyObject *__pyx_n_s_nutations; +static PyObject *__pyx_n_s_obl; +static PyObject *__pyx_n_s_obliquity; +static PyObject *__pyx_n_s_obliquity_dot; +static PyObject *__pyx_n_s_obs_m; +static PyObject *__pyx_n_s_obs_s; +static PyObject *__pyx_n_s_obs_t; +static PyObject *__pyx_n_s_p; +static PyObject *__pyx_n_s_pflag; +static PyObject *__pyx_n_s_pm; +static PyObject *__pyx_n_s_pma; +static PyObject *__pyx_n_s_pmd; +static PyObject *__pyx_n_s_pos; +static PyObject *__pyx_n_s_pp; +static PyObject *__pyx_n_s_precess; +static PyObject *__pyx_n_s_precess_m; +static PyObject *__pyx_n_s_proper_motion; +static PyObject *__pyx_n_s_property; +static PyObject *__pyx_n_s_pv; +static PyObject *__pyx_n_s_pvec; +static PyObject *__pyx_n_s_px; +static PyObject *__pyx_n_s_pyx_vtable; +static PyObject *__pyx_n_s_r; +static PyObject *__pyx_n_s_r2as; +static PyObject *__pyx_kp_u_r2as_line_1896; +static PyObject *__pyx_n_s_r2d; +static PyObject *__pyx_kp_u_r2d_line_1724; +static PyObject *__pyx_n_s_r2h; +static PyObject *__pyx_kp_u_r2h_line_1776; +static PyObject *__pyx_n_s_r2r; +static PyObject *__pyx_kp_u_r2r_line_1611; +static PyObject *__pyx_n_s_range; +static PyObject *__pyx_n_s_rdot; +static PyObject *__pyx_n_s_reduce; +static PyObject *__pyx_n_s_reduce_cython; +static PyObject *__pyx_n_s_reduce_ex; +static PyObject *__pyx_n_s_refa; +static PyObject *__pyx_n_s_refb; +static PyObject *__pyx_n_s_refco; +static PyObject *__pyx_n_s_refract; +static PyObject *__pyx_n_s_rh; +static PyObject *__pyx_n_s_rv; +static PyObject *__pyx_n_s_s; +static PyObject *__pyx_n_s_s1; +static PyObject *__pyx_n_s_s2; +static PyObject *__pyx_n_s_setH; +static PyObject *__pyx_n_s_setP; +static PyObject *__pyx_n_s_setPOS; +static PyObject *__pyx_n_s_setPP; +static PyObject *__pyx_n_s_setPV; +static PyObject *__pyx_n_s_setT; +static PyObject *__pyx_n_s_setVP; +static PyObject *__pyx_n_s_setVV; +static PyObject *__pyx_n_s_setalpha; +static PyObject *__pyx_n_s_setalphadot; +static PyObject *__pyx_n_s_setalt; +static PyObject *__pyx_n_s_setdd; +static PyObject *__pyx_n_s_setdelta; +static PyObject *__pyx_n_s_setdelta_at; +static PyObject *__pyx_n_s_setdelta_ut; +static PyObject *__pyx_n_s_setdeltadot; +static PyObject *__pyx_n_s_sethh; +static PyObject *__pyx_n_s_setlat; +static PyObject *__pyx_n_s_setlon; +static PyObject *__pyx_n_s_setm; +static PyObject *__pyx_n_s_setmm; +static PyObject *__pyx_n_s_setr; +static PyObject *__pyx_n_s_setrdot; +static PyObject *__pyx_n_s_setss; +static PyObject *__pyx_n_s_setstate; +static PyObject *__pyx_n_s_setstate_cython; +static PyObject *__pyx_n_s_setutc; +static PyObject *__pyx_n_s_setwavelength; +static PyObject *__pyx_n_s_setx; +static PyObject *__pyx_n_s_setxdot; +static PyObject *__pyx_n_s_setxpole; +static PyObject *__pyx_n_s_setxx; +static PyObject *__pyx_n_s_setxy; +static PyObject *__pyx_n_s_setxz; +static PyObject *__pyx_n_s_sety; +static PyObject *__pyx_n_s_setydot; +static PyObject *__pyx_n_s_setypole; +static PyObject *__pyx_n_s_setyx; +static PyObject *__pyx_n_s_setyy; +static PyObject *__pyx_n_s_setyz; +static PyObject *__pyx_n_s_setz; +static PyObject *__pyx_n_s_setzdot; +static PyObject *__pyx_n_s_setzx; +static PyObject *__pyx_n_s_setzy; +static PyObject *__pyx_n_s_setzz; +static PyObject *__pyx_n_s_sflag; +static PyObject *__pyx_n_s_solar_perigee; +static PyObject *__pyx_n_s_solar_perigee_dot; +static PyObject *__pyx_n_s_spvec; +static PyObject *__pyx_kp_s_src_tpm_astro_pxi; +static PyObject *__pyx_kp_s_src_tpm_pyx; +static PyObject *__pyx_kp_s_src_tpm_times_pxi; +static PyObject *__pyx_kp_s_src_tpm_vec_pxi; +static PyObject *__pyx_n_s_ss; +static PyObject *__pyx_n_s_star; +static PyObject *__pyx_n_s_start; +static PyObject *__pyx_n_s_ststate; +static PyObject *__pyx_n_s_t; +static PyObject *__pyx_n_s_tai; +static PyObject *__pyx_n_s_tai2et; +static PyObject *__pyx_n_s_tai2tdb; +static PyObject *__pyx_n_s_tai2tdt; +static PyObject *__pyx_n_s_tai2ut1; +static PyObject *__pyx_n_s_tai2utc; +static PyObject *__pyx_n_s_tdb; +static PyObject *__pyx_n_s_tdt; +static PyObject *__pyx_n_s_tdt2et; +static PyObject *__pyx_n_s_tdt2tai; +static PyObject *__pyx_n_s_tdt2tdb; +static PyObject *__pyx_n_s_tdt2ut1; +static PyObject *__pyx_n_s_tdt2utc; +static PyObject *__pyx_n_s_test; +static PyObject *__pyx_n_s_theta; +static PyObject *__pyx_n_s_thetadot; +static PyObject *__pyx_n_s_tpm; +static PyObject *__pyx_n_s_tpm_data; +static PyObject *__pyx_n_s_tpm_state; +static PyObject *__pyx_kp_u_tpm_state_line_195; +static PyObject *__pyx_n_s_tstate; +static PyObject *__pyx_n_s_ut; +static PyObject *__pyx_n_s_ut1; +static PyObject *__pyx_n_s_ut12et; +static PyObject *__pyx_n_s_ut12gmst; +static PyObject *__pyx_n_s_ut12tai; +static PyObject *__pyx_n_s_ut12tdb; +static PyObject *__pyx_n_s_ut12tdt; +static PyObject *__pyx_n_s_ut12utc; +static PyObject *__pyx_n_s_ut2et; +static PyObject *__pyx_n_s_ut2gmst; +static PyObject *__pyx_n_s_utc; +static PyObject *__pyx_n_s_utc2et; +static PyObject *__pyx_n_s_utc2tdb; +static PyObject *__pyx_n_s_utc2tdt; +static PyObject *__pyx_n_s_utc2ut1; +static PyObject *__pyx_n_s_utc_now; +static PyObject *__pyx_n_s_v; +static PyObject *__pyx_n_s_v3; +static PyObject *__pyx_n_s_v6; +static PyObject *__pyx_n_s_v61; +static PyObject *__pyx_n_s_v62cat; +static PyObject *__pyx_n_s_v6_2; +static PyObject *__pyx_n_s_v6b; +static PyObject *__pyx_n_s_v6h; +static PyObject *__pyx_n_s_valid_keys; +static PyObject *__pyx_n_s_vb; +static PyObject *__pyx_n_s_vh; +static PyObject *__pyx_n_s_vp; +static PyObject *__pyx_n_s_vtype; +static PyObject *__pyx_n_s_vv; +static PyObject *__pyx_n_s_wavelength; +static PyObject *__pyx_n_s_x; +static PyObject *__pyx_n_s_xdot; +static PyObject *__pyx_n_s_xpole; +static PyObject *__pyx_n_s_xx; +static PyObject *__pyx_n_s_xy; +static PyObject *__pyx_n_s_xz; +static PyObject *__pyx_n_s_y; +static PyObject *__pyx_n_s_y2doy; +static PyObject *__pyx_kp_u_y2doy_line_1257; +static PyObject *__pyx_n_s_y2j; +static PyObject *__pyx_kp_u_y2j_line_1206; +static PyObject *__pyx_n_s_ydd; +static PyObject *__pyx_n_s_ydot; +static PyObject *__pyx_n_s_year; +static PyObject *__pyx_n_s_ypole; +static PyObject *__pyx_n_s_yx; +static PyObject *__pyx_n_s_yy; +static PyObject *__pyx_n_s_yz; +static PyObject *__pyx_n_s_z; +static PyObject *__pyx_n_s_zdot; +static PyObject *__pyx_n_s_zee; +static PyObject *__pyx_n_s_zeedot; +static PyObject *__pyx_n_s_zeta; +static PyObject *__pyx_n_s_zetadot; +static PyObject *__pyx_n_s_zx; +static PyObject *__pyx_n_s_zy; +static PyObject *__pyx_n_s_zz; +static int __pyx_pf_3tpm_3DMS___cinit__(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_3DMS_2__init__(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_kwargs); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_4__getdd(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_6__setdd(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_8__getmm(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_10__setmm(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_12__getss(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_14__setss(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_16__repr__(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_18__str__(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_20__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_22__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_24to_hms(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_26normalize(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_28to_degrees(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_30to_hours(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_32to_radians(struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_DMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3DMS_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_DMS *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_3HMS___cinit__(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_3HMS_2__init__(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_kwargs); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_4__gethh(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_6__sethh(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_8__getmm(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_10__setmm(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_12__getss(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_14__setss(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_16__repr__(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_18__str__(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_20__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_22__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_24to_dms(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_26normalize(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_28to_hours(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_30to_degrees(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_32to_radians(struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_HMS *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3HMS_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_HMS *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_3YMD___cinit__(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_3YMD_2__init__(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_kwarg); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_4__gety(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_6__sety(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_8__getm(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_10__setm(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_12__getdd(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_14__setdd(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_16__gethh(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_18__sethh(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_20__getmm(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_22__setmm(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_24__getss(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_26__setss(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_28__repr__(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_30__str__(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_32__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_34normalize(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_36to_jd(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_38to_j(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_40raw_str(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_42doy(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_44to_year(struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_46__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_YMD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3YMD_48__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_YMD *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_2JD___cinit__(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_2JD_2__init__(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_kwargs); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_4__getdd(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_6__setdd(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_8__gethh(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_10__sethh(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_12__getmm(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_14__setmm(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_16__getss(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_18__setss(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_20__repr__(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_22__str__(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_24__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_26__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_28normalize(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_30to_ymd(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_32to_j(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_34to_year(struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_36__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_JD *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2JD_38__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_JD *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static PyObject *__pyx_pf_3tpm_byear2jd(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_byear); /* proto */ +static PyObject *__pyx_pf_3tpm_2jd2byear(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_jd); /* proto */ +static PyObject *__pyx_pf_3tpm_4jyear2jd(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_jyear); /* proto */ +static PyObject *__pyx_pf_3tpm_6jd2jyear(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_jd); /* proto */ +static PyObject *__pyx_pf_3tpm_8jd_now(CYTHON_UNUSED PyObject *__pyx_self); /* proto */ +static PyObject *__pyx_pf_3tpm_10utc_now(CYTHON_UNUSED PyObject *__pyx_self); /* proto */ +static PyObject *__pyx_pf_3tpm_12gcal2j(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_y, int __pyx_v_m, int __pyx_v_dd); /* proto */ +static PyObject *__pyx_pf_3tpm_14jcal2j(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_y, int __pyx_v_m, int __pyx_v_dd); /* proto */ +static PyObject *__pyx_pf_3tpm_16j2gcal(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_j); /* proto */ +static PyObject *__pyx_pf_3tpm_18j2jcal(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_j); /* proto */ +static PyObject *__pyx_pf_3tpm_20j2y(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_j); /* proto */ +static PyObject *__pyx_pf_3tpm_22y2j(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_y); /* proto */ +static PyObject *__pyx_pf_3tpm_24j2dow(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_j); /* proto */ +static PyObject *__pyx_pf_3tpm_26y2doy(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_y); /* proto */ +static PyObject *__pyx_pf_3tpm_28fmt_alpha(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha); /* proto */ +static PyObject *__pyx_pf_3tpm_30fmt_delta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_delta); /* proto */ +static PyObject *__pyx_pf_3tpm_32fmt_d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d); /* proto */ +static PyObject *__pyx_pf_3tpm_34fmt_h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h); /* proto */ +static PyObject *__pyx_pf_3tpm_36fmt_j(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_j); /* proto */ +static PyObject *__pyx_pf_3tpm_38fmt_r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_40fmt_y(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_y); /* proto */ +static PyObject *__pyx_pf_3tpm_42d2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d); /* proto */ +static PyObject *__pyx_pf_3tpm_44h2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h); /* proto */ +static PyObject *__pyx_pf_3tpm_46r2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_48d2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d); /* proto */ +static PyObject *__pyx_pf_3tpm_50h2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h); /* proto */ +static PyObject *__pyx_pf_3tpm_52d2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d); /* proto */ +static PyObject *__pyx_pf_3tpm_54r2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_56h2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h); /* proto */ +static PyObject *__pyx_pf_3tpm_58r2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_60d2as(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d); /* proto */ +static PyObject *__pyx_pf_3tpm_62as2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arcs); /* proto */ +static PyObject *__pyx_pf_3tpm_64as2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arcs); /* proto */ +static PyObject *__pyx_pf_3tpm_66h2as(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h); /* proto */ +static PyObject *__pyx_pf_3tpm_68r2as(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_70as2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arcs); /* proto */ +static int __pyx_pf_3tpm_2V3___cinit__(struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_2V3_2__init__(struct __pyx_obj_3tpm_V3 *__pyx_v_self, PyObject *__pyx_v_ctype, PyObject *__pyx_v_X, PyObject *__pyx_v_Y, PyObject *__pyx_v_Z); /* proto */ +static PyObject *__pyx_pf_3tpm_2V3_4__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2V3_6__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_4V3CP___init__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_x, PyObject *__pyx_v_y, PyObject *__pyx_v_z); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_2__getx(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_4__setx(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_x); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_6__gety(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_8__sety(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_y); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_10__getz(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_12__setz(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_z); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_14c2s(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_16unit(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_18mod(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_20dot(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_22cross(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_24__sub__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_26__add__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_28__mul__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, double __pyx_v_n); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_30__str__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_32__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3CP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3CP_34__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3CP *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_4V3SP___init__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_r, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_2__getr(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_4__setr(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_6__getalpha(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_8__setalpha(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_alpha); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_10__getdelta(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_12__setdelta(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_delta); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_14__getnalpha(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_16__getndelta(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_18s2c(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_20mod(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_22dot(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_24cross(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_26__sub__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_28__add__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_30__mul__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, double __pyx_v_n); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_32__str__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3SP *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4V3SP_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3SP *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_2V6___cinit__(struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_2V6_2__init__(struct __pyx_obj_3tpm_V6 *__pyx_v_self, PyObject *__pyx_v_ctype, PyObject *__pyx_v_x, PyObject *__pyx_v_y, PyObject *__pyx_v_z, PyObject *__pyx_v_xdot, PyObject *__pyx_v_ydot, PyObject *__pyx_v_zdot); /* proto */ +static PyObject *__pyx_pf_3tpm_2V6_4__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2V6_6__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_3V6C___init__(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_x, PyObject *__pyx_v_y, PyObject *__pyx_v_z, PyObject *__pyx_v_xdot, PyObject *__pyx_v_ydot, PyObject *__pyx_v_zdot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_2__getx(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_4__setx(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_x); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_6__gety(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_8__sety(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_y); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_10__getz(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_12__setz(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_z); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_14__getxdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_16__setxdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_xdot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_18__getydot(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_20__setydot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_ydot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_22__getzdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_24__setzdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_zdot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_26__getPOS(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_28__setPOS(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_30__sub__(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_32__add__(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_34mod(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_36unit(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_38scale(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_x); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_40v62v3(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_dt); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_42dot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_44cross(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_46c2s(struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_48__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6C *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6C_50__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6C *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_3V6S___init__(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_r, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_rdot, PyObject *__pyx_v_alphadot, PyObject *__pyx_v_deltadot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_2__getr(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_4__setr(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_r); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_6__getalpha(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_8__setalpha(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_alpha); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_10__getdelta(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_12__setdelta(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_delta); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_14__getrdot(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_16__setrdot(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_rdot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_18__getalphadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_20__setalphadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_alphadot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_22__getdeltadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_24__setdeltadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_deltadot); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_26__getnalpha(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_28__getndelta(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_30s2c(struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_32__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6S *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_3V6S_34__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6S *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_2M3___cinit__(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_2M3_2__init__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, PyObject *__pyx_v_xx, PyObject *__pyx_v_xy, PyObject *__pyx_v_xz, PyObject *__pyx_v_yx, PyObject *__pyx_v_yy, PyObject *__pyx_v_yz, PyObject *__pyx_v_zx, PyObject *__pyx_v_zy, PyObject *__pyx_v_zz); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_4__getxx(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_6__setxx(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_xx); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_8__getxy(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_10__setxy(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_xy); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_12__getxz(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_14__setxz(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_xz); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_16__getyx(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_18__setyx(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_yx); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_20__getyy(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_22__setyy(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_yy); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_24__getyz(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_26__setyz(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_yz); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_28__getzx(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_30__setzx(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_zx); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_32__getzy(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_34__setzy(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_zy); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_36__getzz(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_38__setzz(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_zz); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_40__str__(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_42__sub__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_44__add__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_46__mul__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_x); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_48inv(struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_50m3m3(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_52m3v3(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_v3); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_54m3v6(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_56__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M3 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M3_58__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M3 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static int __pyx_pf_3tpm_2M6___cinit__(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_2M6_2__init__(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_4__getPP(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_6__setPP(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_8__getPV(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_10__setPV(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_12__getVP(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_14__setVP(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_16__getVV(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_18__setVV(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_20__add__(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M6 *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_22__sub__(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M6 *__pyx_v_other); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_24__mul__(struct __pyx_obj_3tpm_M6 *__pyx_v_self, double __pyx_v_x); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_26__str__(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_28inv(struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_30m6v3(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_v3); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_32m6v6(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M6 *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_2M6_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M6 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static PyObject *__pyx_pf_3tpm_72m3rx(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta); /* proto */ +static PyObject *__pyx_pf_3tpm_74m3rxdot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta, PyObject *__pyx_v_thetadot); /* proto */ +static PyObject *__pyx_pf_3tpm_76m3ry(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta); /* proto */ +static PyObject *__pyx_pf_3tpm_78m3rydot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta, PyObject *__pyx_v_thetadot); /* proto */ +static PyObject *__pyx_pf_3tpm_80m3rz(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta); /* proto */ +static PyObject *__pyx_pf_3tpm_82m3rzdot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta, PyObject *__pyx_v_thetadot); /* proto */ +static PyObject *__pyx_pf_3tpm_84m6qx(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x, PyObject *__pyx_v_xdot); /* proto */ +static PyObject *__pyx_pf_3tpm_86m6qy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_y, PyObject *__pyx_v_ydot); /* proto */ +static PyObject *__pyx_pf_3tpm_88m6qz(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_z, PyObject *__pyx_v_zdot); /* proto */ +static int __pyx_pf_3tpm_6TSTATE___cinit__(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_6TSTATE_2__init__(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_utc, PyObject *__pyx_v_delta_at, PyObject *__pyx_v_delta_ut, PyObject *__pyx_v_lon, PyObject *__pyx_v_lat, PyObject *__pyx_v_alt, PyObject *__pyx_v_xpole, PyObject *__pyx_v_ypole, PyObject *__pyx_v_T, PyObject *__pyx_v_P, PyObject *__pyx_v_H, PyObject *__pyx_v_wavelength); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_4__getutc(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_6__setutc(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_8__getdelta_at(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_10__setdelta_at(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_delta_at); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_12__getdelta_ut(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_14__setdelta_ut(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_delta_ut); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_16__getlon(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_18__setlon(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_lon); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_20__getlat(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_22__setlat(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_lat); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_24__getalt(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_26__setalt(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_alt); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_28__getxpole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_30__setxpole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_xpole); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_32__getypole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_34__setypole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_ypole); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_36__getT(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_38__setT(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_T); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_40__getP(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_42__setP(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_P); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_44__getH(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_46__setH(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_H); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_48__getwavelength(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_50__setwavelength(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_wavelength); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_52__gettai(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_54__gettdt(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_56__gettdb(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_58__getobliquity(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_60__getnut_lon(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_62__getnut_obl(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_64__getnm(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_66__getpm(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_68__getut1(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_70__getgmst(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_72__getgast(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_74__getlast(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_76__geteb(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_78__geteh(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_80__getobs_m(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_82__getobs_t(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_84__getobs_s(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_86__getrefa(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_88__getrefb(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_90__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_TSTATE *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_6TSTATE_92__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static PyObject *__pyx_pf_3tpm_90tpm_data(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_TSTATE *__pyx_v_tstate, int __pyx_v_action); /* proto */ +static int __pyx_pf_3tpm_4PVEC___cinit__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self); /* proto */ +static int __pyx_pf_3tpm_4PVEC_2__init__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4PVEC_4__getitem__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self, int __pyx_v_index); /* proto */ +static int __pyx_pf_3tpm_4PVEC_6__setitem__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self, int __pyx_v_index, struct __pyx_obj_3tpm_V6C *__pyx_v_v6c); /* proto */ +static PyObject *__pyx_pf_3tpm_4PVEC_8__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_PVEC *__pyx_v_self); /* proto */ +static PyObject *__pyx_pf_3tpm_4PVEC_10__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_PVEC *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ +static PyObject *__pyx_pf_3tpm_92tpm(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_PVEC *__pyx_v_pvec, int __pyx_v_s1, int __pyx_v_s2, double __pyx_v_ep, double __pyx_v_eq, struct __pyx_obj_3tpm_TSTATE *__pyx_v_tstate); /* proto */ +static PyObject *__pyx_pf_3tpm_94tpm_state(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_s); /* proto */ +static PyObject *__pyx_pf_3tpm_96delta_AT(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_98delta_T(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_100delta_UT(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_102delta_ET(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_104delta_TT(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_106tdt2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_108ut12gmst(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_110et2tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et); /* proto */ +static PyObject *__pyx_pf_3tpm_112tai2tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai); /* proto */ +static PyObject *__pyx_pf_3tpm_114tdt2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_116ut12et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_118utc2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_120utc2tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_122utc2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_124et2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et); /* proto */ +static PyObject *__pyx_pf_3tpm_126et2utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et); /* proto */ +static PyObject *__pyx_pf_3tpm_128tai2utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai); /* proto */ +static PyObject *__pyx_pf_3tpm_130tdt2tai(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_132tdt2utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_134ut12utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_136et2tai(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et); /* proto */ +static PyObject *__pyx_pf_3tpm_138et2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et); /* proto */ +static PyObject *__pyx_pf_3tpm_140tai2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai); /* proto */ +static PyObject *__pyx_pf_3tpm_142tai2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai); /* proto */ +static PyObject *__pyx_pf_3tpm_144tai2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai); /* proto */ +static PyObject *__pyx_pf_3tpm_146tdt2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_148ut12tai(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_150ut12tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_152ut12tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1); /* proto */ +static PyObject *__pyx_pf_3tpm_154utc2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc); /* proto */ +static PyObject *__pyx_pf_3tpm_156et2ut(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et); /* proto */ +static PyObject *__pyx_pf_3tpm_158ut2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut); /* proto */ +static PyObject *__pyx_pf_3tpm_160ut2gmst(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut); /* proto */ +static PyObject *__pyx_pf_3tpm_162cat2v6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_pma, PyObject *__pyx_v_pmd, PyObject *__pyx_v_px, PyObject *__pyx_v_rv, PyObject *__pyx_v_C); /* proto */ +static PyObject *__pyx_pf_3tpm_164v62cat(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, PyObject *__pyx_v_C); /* proto */ +static PyObject *__pyx_pf_3tpm_166proper_motion(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, PyObject *__pyx_v_end, PyObject *__pyx_v_start); /* proto */ +static PyObject *__pyx_pf_3tpm_168aberrate(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_p, struct __pyx_obj_3tpm_V6C *__pyx_v_e, int __pyx_v_flag); /* proto */ +static PyObject *__pyx_pf_3tpm_170azel2hadec(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_latitude); /* proto */ +static PyObject *__pyx_pf_3tpm_172hadec2azel(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_latitude); /* proto */ +static PyObject *__pyx_pf_3tpm_174evp(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_tdb); /* proto */ +static PyObject *__pyx_pf_3tpm_176ecl2equ(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_obl); /* proto */ +static PyObject *__pyx_pf_3tpm_178equ2ecl(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_obl); /* proto */ +static PyObject *__pyx_pf_3tpm_180ellab(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_tdt, struct __pyx_obj_3tpm_V6C *__pyx_v_star, int __pyx_v_flag); /* proto */ +static PyObject *__pyx_pf_3tpm_182equ2gal(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6); /* proto */ +static PyObject *__pyx_pf_3tpm_184gal2equ(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6); /* proto */ +static PyObject *__pyx_pf_3tpm_186eterms(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_ep); /* proto */ +static PyObject *__pyx_pf_3tpm_188fk425(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6); /* proto */ +static PyObject *__pyx_pf_3tpm_190fk524(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6); /* proto */ +static PyObject *__pyx_pf_3tpm_192geod2geoc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_lon, PyObject *__pyx_v_lat, PyObject *__pyx_v_alt); /* proto */ +static PyObject *__pyx_pf_3tpm_194ldeflect(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_star, struct __pyx_obj_3tpm_V6C *__pyx_v_earth, int __pyx_v_flag); /* proto */ +static PyObject *__pyx_pf_3tpm_196precess(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_start, double __pyx_v_end, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, int __pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_198precess_m(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag, PyObject *__pyx_v_sflag); /* proto */ +static PyObject *__pyx_pf_3tpm_200eccentricity(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_202eccentricity_dot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_204obliquity(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_206obliquity_dot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_208refco(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_lat, PyObject *__pyx_v_alt, PyObject *__pyx_v_T, PyObject *__pyx_v_P, PyObject *__pyx_v_rh, PyObject *__pyx_v_wavelength, PyObject *__pyx_v_eps); /* proto */ +static PyObject *__pyx_pf_3tpm_210refract(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_zx, PyObject *__pyx_v_refa, PyObject *__pyx_v_refb, PyObject *__pyx_v_flag); /* proto */ +static PyObject *__pyx_pf_3tpm_212solar_perigee(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_214solar_perigee_dot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_216theta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_218thetadot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_220zee(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_222zeedot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_224zeta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_226zetadot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag); /* proto */ +static PyObject *__pyx_pf_3tpm_228nutations(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt); /* proto */ +static PyObject *__pyx_pf_3tpm_230nalpha(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_degrees); /* proto */ +static PyObject *__pyx_pf_3tpm_232ndelta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_delta, PyObject *__pyx_v_degrees); /* proto */ +static PyObject *__pyx_tp_new_3tpm_DMS(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_HMS(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_YMD(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_JD(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_V3(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_V3CP(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_V3SP(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_V6(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_V6C(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_V6S(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_M3(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_M6(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_TSTATE(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_3tpm_PVEC(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_get = {0, &__pyx_n_s_get, 0, 0, 0}; +static PyObject *__pyx_float_0_0; +static PyObject *__pyx_float_1_0; +static PyObject *__pyx_float_1eneg_8; +static PyObject *__pyx_float_0_550; +static PyObject *__pyx_float_273_15; +static PyObject *__pyx_float_1013_25; +static PyObject *__pyx_float_36525_0; +static PyObject *__pyx_float_2093_093; +static PyObject *__pyx_float_0_557744205098; static PyObject *__pyx_int_0; static PyObject *__pyx_int_1; static PyObject *__pyx_int_2000; -static PyObject *__pyx_k_10; -static PyObject *__pyx_k_11; -static PyObject *__pyx_k_12; -static PyObject *__pyx_k_13; -static PyObject *__pyx_k_14; -static PyObject *__pyx_k_15; -static PyObject *__pyx_k_16; -static PyObject *__pyx_k_19; -static PyObject *__pyx_k_20; -static PyObject *__pyx_k_21; -static PyObject *__pyx_k_24; -static PyObject *__pyx_k_25; -static PyObject *__pyx_k_26; -static PyObject *__pyx_k_27; -static PyObject *__pyx_k_28; -static PyObject *__pyx_k_29; -static PyObject *__pyx_k_30; -static PyObject *__pyx_k_32; -static PyObject *__pyx_k_33; -static PyObject *__pyx_k_34; -static PyObject *__pyx_k_35; -static PyObject *__pyx_k_36; -static PyObject *__pyx_k_37; -static PyObject *__pyx_k_42; -static PyObject *__pyx_k_43; -static PyObject *__pyx_k_44; -static PyObject *__pyx_k_45; -static PyObject *__pyx_k_46; -static PyObject *__pyx_k_47; -static PyObject *__pyx_k_48; -static PyObject *__pyx_k_49; -static PyObject *__pyx_k_50; -static PyObject *__pyx_k_51; -static PyObject *__pyx_k_52; -static PyObject *__pyx_k_53; -static PyObject *__pyx_k_54; -static PyObject *__pyx_k_55; -static PyObject *__pyx_k_56; -static PyObject *__pyx_k_57; -static PyObject *__pyx_k_58; -static PyObject *__pyx_k_59; -static PyObject *__pyx_k_60; -static PyObject *__pyx_k_61; -static PyObject *__pyx_k_62; -static PyObject *__pyx_k_63; -static PyObject *__pyx_k_64; -static PyObject *__pyx_k_65; -static PyObject *__pyx_k_66; -static PyObject *__pyx_k_72; -static PyObject *__pyx_k_73; -static PyObject *__pyx_k_74; -static PyObject *__pyx_k_75; -static PyObject *__pyx_k_76; -static PyObject *__pyx_k_77; -static PyObject *__pyx_k_78; -static PyObject *__pyx_k_79; -static PyObject *__pyx_k_80; -static PyObject *__pyx_k_81; -static PyObject *__pyx_k_82; -static PyObject *__pyx_k_tuple_83; -static PyObject *__pyx_k_tuple_87; -static PyObject *__pyx_k_tuple_91; -static PyObject *__pyx_k_tuple_98; - -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":67 +static PyObject *__pyx_k__9; +static PyObject *__pyx_k__16; +static PyObject *__pyx_tuple_; +static PyObject *__pyx_tuple__2; +static PyObject *__pyx_tuple__3; +static PyObject *__pyx_tuple__4; +static PyObject *__pyx_tuple__5; +static PyObject *__pyx_tuple__6; +static PyObject *__pyx_tuple__7; +static PyObject *__pyx_tuple__8; +static PyObject *__pyx_tuple__10; +static PyObject *__pyx_tuple__11; +static PyObject *__pyx_tuple__12; +static PyObject *__pyx_tuple__13; +static PyObject *__pyx_tuple__14; +static PyObject *__pyx_tuple__15; +static PyObject *__pyx_tuple__17; +static PyObject *__pyx_tuple__18; +static PyObject *__pyx_tuple__19; +static PyObject *__pyx_tuple__20; +static PyObject *__pyx_tuple__21; +static PyObject *__pyx_tuple__22; +static PyObject *__pyx_tuple__23; +static PyObject *__pyx_tuple__24; +static PyObject *__pyx_tuple__25; +static PyObject *__pyx_tuple__26; +static PyObject *__pyx_tuple__27; +static PyObject *__pyx_tuple__28; +static PyObject *__pyx_tuple__29; +static PyObject *__pyx_tuple__30; +static PyObject *__pyx_tuple__31; +static PyObject *__pyx_tuple__32; +static PyObject *__pyx_tuple__33; +static PyObject *__pyx_tuple__34; +static PyObject *__pyx_tuple__35; +static PyObject *__pyx_tuple__37; +static PyObject *__pyx_tuple__39; +static PyObject *__pyx_tuple__41; +static PyObject *__pyx_tuple__43; +static PyObject *__pyx_tuple__46; +static PyObject *__pyx_tuple__48; +static PyObject *__pyx_tuple__50; +static PyObject *__pyx_tuple__52; +static PyObject *__pyx_tuple__54; +static PyObject *__pyx_tuple__56; +static PyObject *__pyx_tuple__58; +static PyObject *__pyx_tuple__60; +static PyObject *__pyx_tuple__62; +static PyObject *__pyx_tuple__64; +static PyObject *__pyx_tuple__66; +static PyObject *__pyx_tuple__68; +static PyObject *__pyx_tuple__70; +static PyObject *__pyx_tuple__72; +static PyObject *__pyx_tuple__74; +static PyObject *__pyx_tuple__76; +static PyObject *__pyx_tuple__78; +static PyObject *__pyx_tuple__80; +static PyObject *__pyx_tuple__82; +static PyObject *__pyx_tuple__84; +static PyObject *__pyx_tuple__86; +static PyObject *__pyx_tuple__88; +static PyObject *__pyx_tuple__90; +static PyObject *__pyx_tuple__92; +static PyObject *__pyx_tuple__94; +static PyObject *__pyx_tuple__96; +static PyObject *__pyx_tuple__98; +static PyObject *__pyx_tuple__100; +static PyObject *__pyx_tuple__102; +static PyObject *__pyx_tuple__104; +static PyObject *__pyx_tuple__106; +static PyObject *__pyx_tuple__108; +static PyObject *__pyx_tuple__110; +static PyObject *__pyx_tuple__112; +static PyObject *__pyx_tuple__114; +static PyObject *__pyx_tuple__116; +static PyObject *__pyx_tuple__118; +static PyObject *__pyx_tuple__120; +static PyObject *__pyx_tuple__122; +static PyObject *__pyx_tuple__124; +static PyObject *__pyx_tuple__126; +static PyObject *__pyx_tuple__128; +static PyObject *__pyx_tuple__130; +static PyObject *__pyx_tuple__132; +static PyObject *__pyx_tuple__134; +static PyObject *__pyx_tuple__136; +static PyObject *__pyx_tuple__138; +static PyObject *__pyx_tuple__140; +static PyObject *__pyx_tuple__142; +static PyObject *__pyx_tuple__144; +static PyObject *__pyx_tuple__146; +static PyObject *__pyx_tuple__148; +static PyObject *__pyx_tuple__150; +static PyObject *__pyx_tuple__152; +static PyObject *__pyx_tuple__154; +static PyObject *__pyx_tuple__156; +static PyObject *__pyx_tuple__158; +static PyObject *__pyx_tuple__160; +static PyObject *__pyx_tuple__162; +static PyObject *__pyx_tuple__164; +static PyObject *__pyx_tuple__166; +static PyObject *__pyx_tuple__168; +static PyObject *__pyx_tuple__170; +static PyObject *__pyx_tuple__172; +static PyObject *__pyx_tuple__174; +static PyObject *__pyx_tuple__176; +static PyObject *__pyx_tuple__178; +static PyObject *__pyx_tuple__180; +static PyObject *__pyx_tuple__182; +static PyObject *__pyx_tuple__184; +static PyObject *__pyx_tuple__186; +static PyObject *__pyx_tuple__188; +static PyObject *__pyx_tuple__190; +static PyObject *__pyx_tuple__192; +static PyObject *__pyx_tuple__194; +static PyObject *__pyx_tuple__196; +static PyObject *__pyx_tuple__198; +static PyObject *__pyx_tuple__200; +static PyObject *__pyx_tuple__202; +static PyObject *__pyx_tuple__204; +static PyObject *__pyx_tuple__206; +static PyObject *__pyx_tuple__208; +static PyObject *__pyx_tuple__210; +static PyObject *__pyx_tuple__212; +static PyObject *__pyx_tuple__214; +static PyObject *__pyx_tuple__216; +static PyObject *__pyx_tuple__218; +static PyObject *__pyx_tuple__220; +static PyObject *__pyx_tuple__222; +static PyObject *__pyx_tuple__224; +static PyObject *__pyx_tuple__226; +static PyObject *__pyx_tuple__228; +static PyObject *__pyx_tuple__230; +static PyObject *__pyx_tuple__232; +static PyObject *__pyx_tuple__234; +static PyObject *__pyx_tuple__236; +static PyObject *__pyx_tuple__238; +static PyObject *__pyx_tuple__240; +static PyObject *__pyx_tuple__242; +static PyObject *__pyx_tuple__244; +static PyObject *__pyx_tuple__246; +static PyObject *__pyx_tuple__248; +static PyObject *__pyx_tuple__250; +static PyObject *__pyx_tuple__252; +static PyObject *__pyx_tuple__254; +static PyObject *__pyx_tuple__256; +static PyObject *__pyx_tuple__258; +static PyObject *__pyx_tuple__260; +static PyObject *__pyx_tuple__262; +static PyObject *__pyx_tuple__264; +static PyObject *__pyx_tuple__266; +static PyObject *__pyx_codeobj__36; +static PyObject *__pyx_codeobj__38; +static PyObject *__pyx_codeobj__40; +static PyObject *__pyx_codeobj__42; +static PyObject *__pyx_codeobj__44; +static PyObject *__pyx_codeobj__45; +static PyObject *__pyx_codeobj__47; +static PyObject *__pyx_codeobj__49; +static PyObject *__pyx_codeobj__51; +static PyObject *__pyx_codeobj__53; +static PyObject *__pyx_codeobj__55; +static PyObject *__pyx_codeobj__57; +static PyObject *__pyx_codeobj__59; +static PyObject *__pyx_codeobj__61; +static PyObject *__pyx_codeobj__63; +static PyObject *__pyx_codeobj__65; +static PyObject *__pyx_codeobj__67; +static PyObject *__pyx_codeobj__69; +static PyObject *__pyx_codeobj__71; +static PyObject *__pyx_codeobj__73; +static PyObject *__pyx_codeobj__75; +static PyObject *__pyx_codeobj__77; +static PyObject *__pyx_codeobj__79; +static PyObject *__pyx_codeobj__81; +static PyObject *__pyx_codeobj__83; +static PyObject *__pyx_codeobj__85; +static PyObject *__pyx_codeobj__87; +static PyObject *__pyx_codeobj__89; +static PyObject *__pyx_codeobj__91; +static PyObject *__pyx_codeobj__93; +static PyObject *__pyx_codeobj__95; +static PyObject *__pyx_codeobj__97; +static PyObject *__pyx_codeobj__99; +static PyObject *__pyx_codeobj__101; +static PyObject *__pyx_codeobj__103; +static PyObject *__pyx_codeobj__105; +static PyObject *__pyx_codeobj__107; +static PyObject *__pyx_codeobj__109; +static PyObject *__pyx_codeobj__111; +static PyObject *__pyx_codeobj__113; +static PyObject *__pyx_codeobj__115; +static PyObject *__pyx_codeobj__117; +static PyObject *__pyx_codeobj__119; +static PyObject *__pyx_codeobj__121; +static PyObject *__pyx_codeobj__123; +static PyObject *__pyx_codeobj__125; +static PyObject *__pyx_codeobj__127; +static PyObject *__pyx_codeobj__129; +static PyObject *__pyx_codeobj__131; +static PyObject *__pyx_codeobj__133; +static PyObject *__pyx_codeobj__135; +static PyObject *__pyx_codeobj__137; +static PyObject *__pyx_codeobj__139; +static PyObject *__pyx_codeobj__141; +static PyObject *__pyx_codeobj__143; +static PyObject *__pyx_codeobj__145; +static PyObject *__pyx_codeobj__147; +static PyObject *__pyx_codeobj__149; +static PyObject *__pyx_codeobj__151; +static PyObject *__pyx_codeobj__153; +static PyObject *__pyx_codeobj__155; +static PyObject *__pyx_codeobj__157; +static PyObject *__pyx_codeobj__159; +static PyObject *__pyx_codeobj__161; +static PyObject *__pyx_codeobj__163; +static PyObject *__pyx_codeobj__165; +static PyObject *__pyx_codeobj__167; +static PyObject *__pyx_codeobj__169; +static PyObject *__pyx_codeobj__171; +static PyObject *__pyx_codeobj__173; +static PyObject *__pyx_codeobj__175; +static PyObject *__pyx_codeobj__177; +static PyObject *__pyx_codeobj__179; +static PyObject *__pyx_codeobj__181; +static PyObject *__pyx_codeobj__183; +static PyObject *__pyx_codeobj__185; +static PyObject *__pyx_codeobj__187; +static PyObject *__pyx_codeobj__189; +static PyObject *__pyx_codeobj__191; +static PyObject *__pyx_codeobj__193; +static PyObject *__pyx_codeobj__195; +static PyObject *__pyx_codeobj__197; +static PyObject *__pyx_codeobj__199; +static PyObject *__pyx_codeobj__201; +static PyObject *__pyx_codeobj__203; +static PyObject *__pyx_codeobj__205; +static PyObject *__pyx_codeobj__207; +static PyObject *__pyx_codeobj__209; +static PyObject *__pyx_codeobj__211; +static PyObject *__pyx_codeobj__213; +static PyObject *__pyx_codeobj__215; +static PyObject *__pyx_codeobj__217; +static PyObject *__pyx_codeobj__219; +static PyObject *__pyx_codeobj__221; +static PyObject *__pyx_codeobj__223; +static PyObject *__pyx_codeobj__225; +static PyObject *__pyx_codeobj__227; +static PyObject *__pyx_codeobj__229; +static PyObject *__pyx_codeobj__231; +static PyObject *__pyx_codeobj__233; +static PyObject *__pyx_codeobj__235; +static PyObject *__pyx_codeobj__237; +static PyObject *__pyx_codeobj__239; +static PyObject *__pyx_codeobj__241; +static PyObject *__pyx_codeobj__243; +static PyObject *__pyx_codeobj__245; +static PyObject *__pyx_codeobj__247; +static PyObject *__pyx_codeobj__249; +static PyObject *__pyx_codeobj__251; +static PyObject *__pyx_codeobj__253; +static PyObject *__pyx_codeobj__255; +static PyObject *__pyx_codeobj__257; +static PyObject *__pyx_codeobj__259; +static PyObject *__pyx_codeobj__261; +static PyObject *__pyx_codeobj__263; +static PyObject *__pyx_codeobj__265; +static PyObject *__pyx_codeobj__267; +/* Late includes */ + +/* "src/tpm_times.pxi":67 * valid_keys = ('r', 'h', 'dd', 'mm', 'ss') * cdef tpm_times.DMS _dms * def __cinit__(self): # <<<<<<<<<<<<<< @@ -2281,47 +3783,69 @@ static PyObject *__pyx_k_tuple_98; * self._dms.mm = 0.0 */ -static int __pyx_pf_5pytpm_3tpm_3DMS___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3DMS___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3DMS_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3DMS_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_3DMS___cinit__(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3DMS___cinit__(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":68 + /* "src/tpm_times.pxi":68 * cdef tpm_times.DMS _dms * def __cinit__(self): * self._dms.dd = 0.0 # <<<<<<<<<<<<<< * self._dms.mm = 0.0 * self._dms.ss = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.dd = 0.0; + __pyx_v_self->_dms.dd = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":69 + /* "src/tpm_times.pxi":69 * def __cinit__(self): * self._dms.dd = 0.0 * self._dms.mm = 0.0 # <<<<<<<<<<<<<< * self._dms.ss = 0.0 * */ - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.mm = 0.0; + __pyx_v_self->_dms.mm = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":70 + /* "src/tpm_times.pxi":70 * self._dms.dd = 0.0 * self._dms.mm = 0.0 * self._dms.ss = 0.0 # <<<<<<<<<<<<<< * * def __init__(self, **kwargs): */ - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.ss = 0.0; + __pyx_v_self->_dms.ss = 0.0; + + /* "src/tpm_times.pxi":67 + * valid_keys = ('r', 'h', 'dd', 'mm', 'ss') + * cdef tpm_times.DMS _dms + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._dms.dd = 0.0 + * self._dms.mm = 0.0 + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":72 +/* "src/tpm_times.pxi":72 * self._dms.ss = 0.0 * * def __init__(self, **kwargs): # <<<<<<<<<<<<<< @@ -2329,218 +3853,255 @@ static int __pyx_pf_5pytpm_3tpm_3DMS___cinit__(PyObject *__pyx_v_self, PyObject * if key not in self.valid_keys: */ -static int __pyx_pf_5pytpm_3tpm_3DMS_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3DMS_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3DMS_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3DMS_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_kwargs = 0; - PyObject *__pyx_v_key; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - void *__pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - double __pyx_t_8; - __Pyx_RefNannySetupContext("__init__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (__pyx_kwds && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 1))) return -1; - __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); - if (unlikely(!__pyx_v_kwargs)) return -1; + __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return -1; __Pyx_GOTREF(__pyx_v_kwargs); - __pyx_v_key = Py_None; __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_3DMS_2__init__(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self), __pyx_v_kwargs); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":73 - * - * def __init__(self, **kwargs): - * for key in kwargs: # <<<<<<<<<<<<<< - * if key not in self.valid_keys: + /* function exit code */ + __Pyx_XDECREF(__pyx_v_kwargs); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3DMS_2__init__(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_kwargs) { + PyObject *__pyx_v_key = NULL; + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + Py_ssize_t __pyx_t_2; + Py_ssize_t __pyx_t_3; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + int __pyx_t_6; + int __pyx_t_7; + int __pyx_t_8; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; + double __pyx_t_11; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); + + /* "src/tpm_times.pxi":73 + * + * def __init__(self, **kwargs): + * for key in kwargs: # <<<<<<<<<<<<<< + * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) */ - __Pyx_INCREF(((PyObject *)__pyx_v_kwargs)); - __Pyx_XDECREF(__pyx_t_1); - __pyx_t_1 = ((PyObject *)__pyx_v_kwargs); __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_kwargs, 1, ((PyObject *)NULL), (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 73, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_1); + __pyx_t_1 = __pyx_t_5; + __pyx_t_5 = 0; while (1) { - if (!PyDict_Next(__pyx_t_1, (&__pyx_t_2), ((PyObject **)(&__pyx_t_3)), NULL)) break; - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_v_key); - __pyx_v_key = ((PyObject *)__pyx_t_3); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":74 + __pyx_t_6 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, NULL, NULL, __pyx_t_4); + if (unlikely(__pyx_t_6 == 0)) break; + if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(0, 73, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); + __pyx_t_5 = 0; + + /* "src/tpm_times.pxi":74 * def __init__(self, **kwargs): * for key in kwargs: * if key not in self.valid_keys: # <<<<<<<<<<<<<< * raise TypeError, "Invalid keyword: {0}".format(key) * if "r" in kwargs: */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__valid_keys); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_4, __pyx_v_key))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_valid_keys); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 74, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_7 = (__Pyx_PySequence_ContainsTF(__pyx_v_key, __pyx_t_5, Py_NE)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 74, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_8 = (__pyx_t_7 != 0); + if (unlikely(__pyx_t_8)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":75 + /* "src/tpm_times.pxi":75 * for key in kwargs: * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) # <<<<<<<<<<<<<< * if "r" in kwargs: * self._dms = tpm_times.r2dms(kwargs['r']) */ - __pyx_t_4 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_1), __pyx_n_s__format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_key); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_key); - __Pyx_GIVEREF(__pyx_v_key); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_7, 0); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L7; + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_Invalid_keyword_0, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 75, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9); + if (likely(__pyx_t_10)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_9, function); + } + } + __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_10, __pyx_v_key) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_v_key); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 75, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_5, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 75, __pyx_L1_error) + + /* "src/tpm_times.pxi":74 + * def __init__(self, **kwargs): + * for key in kwargs: + * if key not in self.valid_keys: # <<<<<<<<<<<<<< + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "r" in kwargs: + */ } - __pyx_L7:; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":76 + /* "src/tpm_times.pxi":76 * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) * if "r" in kwargs: # <<<<<<<<<<<<<< * self._dms = tpm_times.r2dms(kwargs['r']) * elif "h" in kwargs: */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__r)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_8 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_r, __pyx_v_kwargs, Py_EQ)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_7 = (__pyx_t_8 != 0); + if (__pyx_t_7) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":77 + /* "src/tpm_times.pxi":77 * raise TypeError, "Invalid keyword: {0}".format(key) * if "r" in kwargs: * self._dms = tpm_times.r2dms(kwargs['r']) # <<<<<<<<<<<<<< * elif "h" in kwargs: * self._dms = tpm_times.h2dms(kwargs['h']) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__r)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_n_s_r); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms = r2dms(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_dms = r2dms(__pyx_t_11); + + /* "src/tpm_times.pxi":76 + * if key not in self.valid_keys: + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "r" in kwargs: # <<<<<<<<<<<<<< + * self._dms = tpm_times.r2dms(kwargs['r']) + * elif "h" in kwargs: + */ + goto __pyx_L6; } - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":78 + /* "src/tpm_times.pxi":78 * if "r" in kwargs: * self._dms = tpm_times.r2dms(kwargs['r']) * elif "h" in kwargs: # <<<<<<<<<<<<<< * self._dms = tpm_times.h2dms(kwargs['h']) * else: */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__h)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_7 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_h, __pyx_v_kwargs, Py_EQ)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 78, __pyx_L1_error) + __pyx_t_8 = (__pyx_t_7 != 0); + if (__pyx_t_8) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":79 + /* "src/tpm_times.pxi":79 * self._dms = tpm_times.r2dms(kwargs['r']) * elif "h" in kwargs: * self._dms = tpm_times.h2dms(kwargs['h']) # <<<<<<<<<<<<<< * else: * self._dms.dd = kwargs.get('dd',0.0) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__h)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_n_s_h); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms = h2dms(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_dms = h2dms(__pyx_t_11); + + /* "src/tpm_times.pxi":78 + * if "r" in kwargs: + * self._dms = tpm_times.r2dms(kwargs['r']) + * elif "h" in kwargs: # <<<<<<<<<<<<<< + * self._dms = tpm_times.h2dms(kwargs['h']) + * else: + */ + goto __pyx_L6; } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":81 + /* "src/tpm_times.pxi":81 * self._dms = tpm_times.h2dms(kwargs['h']) * else: * self._dms.dd = kwargs.get('dd',0.0) # <<<<<<<<<<<<<< * self._dms.mm = kwargs.get('mm',0.0) * self._dms.ss = kwargs.get('ss',0.0) */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_dd, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__dd), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.dd = __pyx_t_8; + __pyx_v_self->_dms.dd = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":82 + /* "src/tpm_times.pxi":82 * else: * self._dms.dd = kwargs.get('dd',0.0) * self._dms.mm = kwargs.get('mm',0.0) # <<<<<<<<<<<<<< * self._dms.ss = kwargs.get('ss',0.0) * */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__mm), __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_mm, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.mm = __pyx_t_8; + __pyx_v_self->_dms.mm = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":83 + /* "src/tpm_times.pxi":83 * self._dms.dd = kwargs.get('dd',0.0) * self._dms.mm = kwargs.get('mm',0.0) * self._dms.ss = kwargs.get('ss',0.0) # <<<<<<<<<<<<<< * * def __getdd(self): */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_ss, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__ss), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.ss = __pyx_t_8; + __pyx_v_self->_dms.ss = __pyx_t_11; } - __pyx_L8:; + __pyx_L6:; + /* "src/tpm_times.pxi":72 + * self._dms.ss = 0.0 + * + * def __init__(self, **kwargs): # <<<<<<<<<<<<<< + * for key in kwargs: + * if key not in self.valid_keys: + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("pytpm.tpm.DMS.__init__"); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_10); + __Pyx_AddTraceback("tpm.DMS.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_DECREF(__pyx_v_kwargs); - __Pyx_DECREF(__pyx_v_key); + __Pyx_XDECREF(__pyx_v_key); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":85 +/* "src/tpm_times.pxi":85 * self._dms.ss = kwargs.get('ss',0.0) * * def __getdd(self): # <<<<<<<<<<<<<< @@ -2548,13 +4109,29 @@ static int __pyx_pf_5pytpm_3tpm_3DMS_1__init__(PyObject *__pyx_v_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_2__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_2__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_5__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_5__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_4__getdd(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_4__getdd(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdd"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":86 + /* "src/tpm_times.pxi":86 * * def __getdd(self): * return self._dms.dd # <<<<<<<<<<<<<< @@ -2562,17 +4139,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_2__getdd(PyObject *__pyx_v_self, CYTH * def __setdd(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_dms.dd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":85 + * self._dms.ss = kwargs.get('ss',0.0) + * + * def __getdd(self): # <<<<<<<<<<<<<< + * return self._dms.dd + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.__getdd"); + __Pyx_AddTraceback("tpm.DMS.__getdd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2580,7 +4164,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_2__getdd(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":88 +/* "src/tpm_times.pxi":88 * return self._dms.dd * * def __setdd(self,value): # <<<<<<<<<<<<<< @@ -2588,26 +4172,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_2__getdd(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_3__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_3__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_7__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_7__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_6__setdd(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_6__setdd(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setdd"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":89 + /* "src/tpm_times.pxi":89 * * def __setdd(self,value): * self._dms.dd = value # <<<<<<<<<<<<<< * * dd = property(__getdd, __setdd,doc="Degrees.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.dd = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 89, __pyx_L1_error) + __pyx_v_self->_dms.dd = __pyx_t_1; + + /* "src/tpm_times.pxi":88 + * return self._dms.dd + * + * def __setdd(self,value): # <<<<<<<<<<<<<< + * self._dms.dd = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.DMS.__setdd"); + __Pyx_AddTraceback("tpm.DMS.__setdd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2615,7 +4224,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_3__setdd(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":93 +/* "src/tpm_times.pxi":93 * dd = property(__getdd, __setdd,doc="Degrees.") * * def __getmm(self): # <<<<<<<<<<<<<< @@ -2623,13 +4232,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_3__setdd(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_4__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_4__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_9__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_9__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_8__getmm(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_8__getmm(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":94 + /* "src/tpm_times.pxi":94 * * def __getmm(self): * return self._dms.mm # <<<<<<<<<<<<<< @@ -2637,17 +4262,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_4__getmm(PyObject *__pyx_v_self, CYTH * def __setmm(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_dms.mm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":93 + * dd = property(__getdd, __setdd,doc="Degrees.") + * + * def __getmm(self): # <<<<<<<<<<<<<< + * return self._dms.mm + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.__getmm"); + __Pyx_AddTraceback("tpm.DMS.__getmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2655,7 +4287,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_4__getmm(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":96 +/* "src/tpm_times.pxi":96 * return self._dms.mm * * def __setmm(self,value): # <<<<<<<<<<<<<< @@ -2663,26 +4295,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_4__getmm(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_5__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_5__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_11__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_11__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_10__setmm(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_10__setmm(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":97 + /* "src/tpm_times.pxi":97 * * def __setmm(self,value): * self._dms.mm = value # <<<<<<<<<<<<<< * * mm = property(__getmm, __setmm,doc="Minutes of arc.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.mm = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 97, __pyx_L1_error) + __pyx_v_self->_dms.mm = __pyx_t_1; + + /* "src/tpm_times.pxi":96 + * return self._dms.mm + * + * def __setmm(self,value): # <<<<<<<<<<<<<< + * self._dms.mm = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.DMS.__setmm"); + __Pyx_AddTraceback("tpm.DMS.__setmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2690,7 +4347,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_5__setmm(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":101 +/* "src/tpm_times.pxi":101 * mm = property(__getmm, __setmm,doc="Minutes of arc.") * * def __getss(self): # <<<<<<<<<<<<<< @@ -2698,13 +4355,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_5__setmm(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_6__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_6__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_13__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_13__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_12__getss(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_12__getss(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":102 + /* "src/tpm_times.pxi":102 * * def __getss(self): * return self._dms.ss # <<<<<<<<<<<<<< @@ -2712,17 +4385,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_6__getss(PyObject *__pyx_v_self, CYTH * def __setss(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_dms.ss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":101 + * mm = property(__getmm, __setmm,doc="Minutes of arc.") + * + * def __getss(self): # <<<<<<<<<<<<<< + * return self._dms.ss + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.__getss"); + __Pyx_AddTraceback("tpm.DMS.__getss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2730,7 +4410,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_6__getss(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":104 +/* "src/tpm_times.pxi":104 * return self._dms.ss * * def __setss(self,value): # <<<<<<<<<<<<<< @@ -2738,26 +4418,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_6__getss(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_7__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_7__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_15__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_15__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_14__setss(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_14__setss(struct __pyx_obj_3tpm_DMS *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":105 + /* "src/tpm_times.pxi":105 * * def __setss(self,value): * self._dms.ss = value # <<<<<<<<<<<<<< * * ss = property(__getss, __setss,doc="Seconds of arc.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms.ss = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 105, __pyx_L1_error) + __pyx_v_self->_dms.ss = __pyx_t_1; + + /* "src/tpm_times.pxi":104 + * return self._dms.ss + * + * def __setss(self,value): # <<<<<<<<<<<<<< + * self._dms.ss = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.DMS.__setss"); + __Pyx_AddTraceback("tpm.DMS.__setss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2765,7 +4470,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_7__setss(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":109 +/* "src/tpm_times.pxi":109 * ss = property(__getss, __setss,doc="Seconds of arc.") * * def __repr__(self): # <<<<<<<<<<<<<< @@ -2773,41 +4478,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_7__setss(PyObject *__pyx_v_self, PyOb * return repr(d) */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_8__repr__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_8__repr__(PyObject *__pyx_v_self) { - PyObject *__pyx_v_d; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_17__repr__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_17__repr__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_16__repr__(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_16__repr__(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { + PyObject *__pyx_v_d = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_v_d = ((PyObject*)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__repr__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":110 + /* "src/tpm_times.pxi":110 * * def __repr__(self): * d = {'dd': self.dd, 'mm': self.mm, 'ss': self.ss} # <<<<<<<<<<<<<< * return repr(d) * */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 110, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_dd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__dd), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dd, __pyx_t_2) < 0) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__mm), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_mm, __pyx_t_2) < 0) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__ss), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ss, __pyx_t_2) < 0) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_d)); - __pyx_v_d = __pyx_t_1; + __pyx_v_d = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":111 + /* "src/tpm_times.pxi":111 * def __repr__(self): * d = {'dd': self.dd, 'mm': self.mm, 'ss': self.ss} * return repr(d) # <<<<<<<<<<<<<< @@ -2815,27 +4534,34 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_8__repr__(PyObject *__pyx_v_self) { * def __str__(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_Repr(((PyObject *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyObject_Repr(__pyx_v_d); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":109 + * ss = property(__getss, __setss,doc="Seconds of arc.") + * + * def __repr__(self): # <<<<<<<<<<<<<< + * d = {'dd': self.dd, 'mm': self.mm, 'ss': self.ss} + * return repr(d) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.DMS.__repr__"); + __Pyx_AddTraceback("tpm.DMS.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_d); + __Pyx_XDECREF(__pyx_v_d); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":113 +/* "src/tpm_times.pxi":113 * return repr(d) * * def __str__(self): # <<<<<<<<<<<<<< @@ -2843,14 +4569,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_8__repr__(PyObject *__pyx_v_self) { * return tpm_times.fmt_dms(self._dms).decode("utf-8") */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_9__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_9__str__(PyObject *__pyx_v_self) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_19__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_19__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_18__str__(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_18__str__(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":115 + /* "src/tpm_times.pxi":115 * def __str__(self): * cdef tpm_times.DMS dms * return tpm_times.fmt_dms(self._dms).decode("utf-8") # <<<<<<<<<<<<<< @@ -2858,19 +4600,26 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_9__str__(PyObject *__pyx_v_self) { * def __add__(self, other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = fmt_dms(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_1 = fmt_dms(__pyx_v_self->_dms); + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 115, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":113 + * return repr(d) + * + * def __str__(self): # <<<<<<<<<<<<<< + * cdef tpm_times.DMS dms + * return tpm_times.fmt_dms(self._dms).decode("utf-8") + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.DMS.__str__"); + __Pyx_AddTraceback("tpm.DMS.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -2878,7 +4627,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_9__str__(PyObject *__pyx_v_self) { return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":117 +/* "src/tpm_times.pxi":117 * return tpm_times.fmt_dms(self._dms).decode("utf-8") * * def __add__(self, other): # <<<<<<<<<<<<<< @@ -2886,118 +4635,136 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_9__str__(PyObject *__pyx_v_self) { * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_10__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_10__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_dms; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_21__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_21__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_20__add__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_20__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_dms = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_dms = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":120 + /* "src/tpm_times.pxi":120 * # Cython does not have __radd__ and the first parameter may not * # be this object * if isinstance(self, DMS) and isinstance(other, DMS): # <<<<<<<<<<<<<< * # return a new DMS object * dms = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_DMS)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_DMS); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_DMS)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_DMS); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":122 + /* "src/tpm_times.pxi":122 * if isinstance(self, DMS) and isinstance(other, DMS): * # return a new DMS object * dms = self.__class__() # <<<<<<<<<<<<<< * dms.dd = self.dd + other.dd * dms.mm = self.mm + other.mm */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_dms); - __pyx_v_dms = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 122, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 122, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_dms = __pyx_t_4; + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":123 + /* "src/tpm_times.pxi":123 * # return a new DMS object * dms = self.__class__() * dms.dd = self.dd + other.dd # <<<<<<<<<<<<<< * dms.mm = self.mm + other.mm * dms.ss = self.ss + other.ss */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 123, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dd); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 123, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_dms, __pyx_n_s__dd, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_dms, __pyx_n_s_dd, __pyx_t_6) < 0) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":124 + /* "src/tpm_times.pxi":124 * dms = self.__class__() * dms.dd = self.dd + other.dd * dms.mm = self.mm + other.mm # <<<<<<<<<<<<<< * dms.ss = self.ss + other.ss * return dms */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 124, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 124, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_dms, __pyx_n_s__mm, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_dms, __pyx_n_s_mm, __pyx_t_4) < 0) __PYX_ERR(0, 124, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":125 + /* "src/tpm_times.pxi":125 * dms.dd = self.dd + other.dd * dms.mm = self.mm + other.mm * dms.ss = self.ss + other.ss # <<<<<<<<<<<<<< * return dms * else: */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 125, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 125, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 125, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_dms, __pyx_n_s__ss, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_dms, __pyx_n_s_ss, __pyx_t_6) < 0) __PYX_ERR(0, 125, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":126 + /* "src/tpm_times.pxi":126 * dms.mm = self.mm + other.mm * dms.ss = self.ss + other.ss * return dms # <<<<<<<<<<<<<< @@ -3008,38 +4775,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_10__add__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(__pyx_v_dms); __pyx_r = __pyx_v_dms; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":120 + * # Cython does not have __radd__ and the first parameter may not + * # be this object + * if isinstance(self, DMS) and isinstance(other, DMS): # <<<<<<<<<<<<<< + * # return a new DMS object + * dms = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":128 + /* "src/tpm_times.pxi":128 * return dms * else: * raise TypeError, "Can only add two DMS values." # <<<<<<<<<<<<<< * * def __sub__(self, other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_2), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_DMS_values, 0, 0); + __PYX_ERR(0, 128, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":117 + * return tpm_times.fmt_dms(self._dms).decode("utf-8") + * + * def __add__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __radd__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.DMS.__add__"); + __Pyx_AddTraceback("tpm.DMS.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_dms); + __Pyx_XDECREF(__pyx_v_dms); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":130 +/* "src/tpm_times.pxi":130 * raise TypeError, "Can only add two DMS values." * * def __sub__(self, other): # <<<<<<<<<<<<<< @@ -3047,118 +4827,136 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_10__add__(PyObject *__pyx_v_self, PyO * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_11__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_11__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_dms; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_23__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_23__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_22__sub__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_22__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_dms = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_dms = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":133 + /* "src/tpm_times.pxi":133 * # Cython does not have __rsub__ and the first parameter may not * # be this object * if isinstance(self, DMS) and isinstance(other, DMS): # <<<<<<<<<<<<<< * # return a new DMS object * dms = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_DMS)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_DMS); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_DMS)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_DMS); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":135 + /* "src/tpm_times.pxi":135 * if isinstance(self, DMS) and isinstance(other, DMS): * # return a new DMS object * dms = self.__class__() # <<<<<<<<<<<<<< * dms.dd = self.dd - other.dd * dms.mm = self.mm - other.mm */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_dms); - __pyx_v_dms = __pyx_t_2; - __pyx_t_2 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":136 + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 135, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 135, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_dms = __pyx_t_4; + __pyx_t_4 = 0; + + /* "src/tpm_times.pxi":136 * # return a new DMS object * dms = self.__class__() * dms.dd = self.dd - other.dd # <<<<<<<<<<<<<< * dms.mm = self.mm - other.mm * dms.ss = self.ss - other.ss */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 136, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dd); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 136, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_dms, __pyx_n_s__dd, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_dms, __pyx_n_s_dd, __pyx_t_6) < 0) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":137 + /* "src/tpm_times.pxi":137 * dms = self.__class__() * dms.dd = self.dd - other.dd * dms.mm = self.mm - other.mm # <<<<<<<<<<<<<< * dms.ss = self.ss - other.ss * return dms */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 137, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 137, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_dms, __pyx_n_s__mm, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_dms, __pyx_n_s_mm, __pyx_t_4) < 0) __PYX_ERR(0, 137, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":138 + /* "src/tpm_times.pxi":138 * dms.dd = self.dd - other.dd * dms.mm = self.mm - other.mm * dms.ss = self.ss - other.ss # <<<<<<<<<<<<<< * return dms * else: */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 138, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 138, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_dms, __pyx_n_s__ss, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_dms, __pyx_n_s_ss, __pyx_t_6) < 0) __PYX_ERR(0, 138, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":139 + /* "src/tpm_times.pxi":139 * dms.mm = self.mm - other.mm * dms.ss = self.ss - other.ss * return dms # <<<<<<<<<<<<<< @@ -3169,38 +4967,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_11__sub__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(__pyx_v_dms); __pyx_r = __pyx_v_dms; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":133 + * # Cython does not have __rsub__ and the first parameter may not + * # be this object + * if isinstance(self, DMS) and isinstance(other, DMS): # <<<<<<<<<<<<<< + * # return a new DMS object + * dms = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":141 + /* "src/tpm_times.pxi":141 * return dms * else: * raise TypeError, "Can only subtract two DMS values." # <<<<<<<<<<<<<< * * def to_hms(self): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_3), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_subtract_two_DMS_values, 0, 0); + __PYX_ERR(0, 141, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":130 + * raise TypeError, "Can only add two DMS values." + * + * def __sub__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __rsub__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.DMS.__sub__"); + __Pyx_AddTraceback("tpm.DMS.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_dms); + __Pyx_XDECREF(__pyx_v_dms); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":143 +/* "src/tpm_times.pxi":143 * raise TypeError, "Can only subtract two DMS values." * * def to_hms(self): # <<<<<<<<<<<<<< @@ -3208,39 +5019,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_11__sub__(PyObject *__pyx_v_self, PyO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_12to_hms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3DMS_12to_hms[] = "Convert to an HMS object.\n\n Returns a tpm.HMS class containing the angle in this instance\n converted into hours, minutes and seconds.\n\n Returns\n -------\n hms : tpm.HMS\n A tpm.HMS object.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_12to_hms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_25to_hms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3DMS_24to_hms[] = "Convert to an HMS object.\n\n Returns a tpm.HMS class containing the angle in this instance\n converted into hours, minutes and seconds.\n\n Returns\n -------\n hms : tpm.HMS\n A tpm.HMS object.\n\n "; +static PyObject *__pyx_pw_3tpm_3DMS_25to_hms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_hms (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_24to_hms(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_24to_hms(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { HMS __pyx_v__hms; - struct __pyx_obj_5pytpm_3tpm_HMS *__pyx_v_hms; + struct __pyx_obj_3tpm_HMS *__pyx_v_hms = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_hms"); - __pyx_v_hms = ((struct __pyx_obj_5pytpm_3tpm_HMS *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_hms", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":156 + /* "src/tpm_times.pxi":156 * """ * cdef tpm_times.HMS _hms * _hms = tpm_times.dms2hms(self._dms) # <<<<<<<<<<<<<< * hms = HMS() * hms._hms = _hms */ - __pyx_v__hms = dms2hms(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms); + __pyx_v__hms = dms2hms(__pyx_v_self->_dms); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":157 + /* "src/tpm_times.pxi":157 * cdef tpm_times.HMS _hms * _hms = tpm_times.dms2hms(self._dms) * hms = HMS() # <<<<<<<<<<<<<< * hms._hms = _hms * return hms */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_HMS)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_HMS)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 157, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_hms)); - __pyx_v_hms = ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_t_1); + __pyx_v_hms = ((struct __pyx_obj_3tpm_HMS *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":158 + /* "src/tpm_times.pxi":158 * _hms = tpm_times.dms2hms(self._dms) * hms = HMS() * hms._hms = _hms # <<<<<<<<<<<<<< @@ -3249,7 +5074,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_12to_hms(PyObject *__pyx_v_self, CYTH */ __pyx_v_hms->_hms = __pyx_v__hms; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":159 + /* "src/tpm_times.pxi":159 * hms = HMS() * hms._hms = _hms * return hms # <<<<<<<<<<<<<< @@ -3261,20 +5086,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_12to_hms(PyObject *__pyx_v_self, CYTH __pyx_r = ((PyObject *)__pyx_v_hms); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":143 + * raise TypeError, "Can only subtract two DMS values." + * + * def to_hms(self): # <<<<<<<<<<<<<< + * """Convert to an HMS object. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.to_hms"); + __Pyx_AddTraceback("tpm.DMS.to_hms", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_hms); + __Pyx_XDECREF((PyObject *)__pyx_v_hms); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":161 +/* "src/tpm_times.pxi":161 * return hms * * def normalize(self): # <<<<<<<<<<<<<< @@ -3282,28 +5114,50 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_12to_hms(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_13normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3DMS_13normalize[] = "Normalize components.\n\n Normalizes the arc-minutes and arc-seconds of the angle into\n the proper range. Note that after normalize the sign of the\n angle applies to the degrees part alone, and not to the whole\n angle.\n\n Don't use this class outside of PyTPM.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> dms = tpm.DMS(dd=-1.23)\n >>> dms.dd, dms.mm, dms.ss\n (-1.23, 0.0, 0.0)\n >>> print dms\n -01D 13' 47.999\"\n >>> dms.normalize()\n >>> dms.dd, dms.mm, dms.ss\n (-2.0, 46.0, 12.00000000000017)\n\n Note that in the above case if we were to do dms.dd=-1.0,\n dms.mm=13 and dms.ss=48, we would get different results.\n\n >>> dms.dd = -1\n >>> dms.mm = 46.0\n >>> dms.ss = 12.0\n >>> print dms\n --> print(dms)\n -00D 13' 48.000\"\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_13normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_27normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3DMS_26normalize[] = "Normalize components.\n\n Normalizes the arc-minutes and arc-seconds of the angle into\n the proper range. Note that after normalize the sign of the\n angle applies to the degrees part alone, and not to the whole\n angle.\n\n Don't use this class outside of PyTPM.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> dms = tpm.DMS(dd=-1.23)\n >>> dms.dd, dms.mm, dms.ss\n (-1.23, 0.0, 0.0)\n >>> print dms\n -01D 13' 47.999\"\n >>> dms.normalize()\n >>> dms.dd, dms.mm, dms.ss\n (-2.0, 46.0, 12.00000000000017)\n\n Note that in the above case if we were to do dms.dd=-1.0,\n dms.mm=13 and dms.ss=48, we would get different results.\n\n >>> dms.dd = -1\n >>> dms.mm = 46.0\n >>> dms.ss = 12.0\n >>> print dms\n --> print(dms)\n -00D 13' 48.000\"\n "; +static PyObject *__pyx_pw_3tpm_3DMS_27normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_26normalize(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_26normalize(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("normalize"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":193 + /* "src/tpm_times.pxi":193 * -00D 13' 48.000" * """ * self._dms = tpm_times.dms2dms(self._dms) # <<<<<<<<<<<<<< * * def to_degrees(self): */ - ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms = dms2dms(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms); + __pyx_v_self->_dms = dms2dms(__pyx_v_self->_dms); + + /* "src/tpm_times.pxi":161 + * return hms + * + * def normalize(self): # <<<<<<<<<<<<<< + * """Normalize components. + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":195 +/* "src/tpm_times.pxi":195 * self._dms = tpm_times.dms2dms(self._dms) * * def to_degrees(self): # <<<<<<<<<<<<<< @@ -3311,14 +5165,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_13normalize(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_14to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3DMS_14to_degrees[] = "Return angle in decimal degrees.\n\n Angle in degrees, arc-minutes and arc-seconds is converted into\n decimal degrees.\n\n Returns\n -------\n dd : float\n Angle in degrees.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_14to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_29to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3DMS_28to_degrees[] = "Return angle in decimal degrees.\n\n Angle in degrees, arc-minutes and arc-seconds is converted into\n decimal degrees.\n\n Returns\n -------\n dd : float\n Angle in degrees.\n\n "; +static PyObject *__pyx_pw_3tpm_3DMS_29to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_degrees (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_28to_degrees(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_28to_degrees(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_degrees"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_degrees", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":207 + /* "src/tpm_times.pxi":207 * * """ * return tpm_times.dms2d(self._dms) # <<<<<<<<<<<<<< @@ -3326,17 +5196,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_14to_degrees(PyObject *__pyx_v_self, * def to_hours(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(dms2d(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(dms2d(__pyx_v_self->_dms)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":195 + * self._dms = tpm_times.dms2dms(self._dms) + * + * def to_degrees(self): # <<<<<<<<<<<<<< + * """Return angle in decimal degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.to_degrees"); + __Pyx_AddTraceback("tpm.DMS.to_degrees", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3344,7 +5221,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_14to_degrees(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":209 +/* "src/tpm_times.pxi":209 * return tpm_times.dms2d(self._dms) * * def to_hours(self): # <<<<<<<<<<<<<< @@ -3352,14 +5229,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_14to_degrees(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_15to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3DMS_15to_hours[] = "Return angle in decimal hours.\n\n Angle in degrees, arc-minutes and arc-seconds is converted into\n hours.\n\n Returns\n -------\n hh : float\n Angle in hours.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_15to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_31to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3DMS_30to_hours[] = "Return angle in decimal hours.\n\n Angle in degrees, arc-minutes and arc-seconds is converted into\n hours.\n\n Returns\n -------\n hh : float\n Angle in hours.\n\n "; +static PyObject *__pyx_pw_3tpm_3DMS_31to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_hours (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_30to_hours(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_30to_hours(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_hours"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_hours", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":221 + /* "src/tpm_times.pxi":221 * * """ * return tpm_times.dms2h(self._dms) # <<<<<<<<<<<<<< @@ -3367,17 +5260,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_15to_hours(PyObject *__pyx_v_self, CY * def to_radians(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(dms2h(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(dms2h(__pyx_v_self->_dms)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":209 + * return tpm_times.dms2d(self._dms) + * + * def to_hours(self): # <<<<<<<<<<<<<< + * """Return angle in decimal hours. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.to_hours"); + __Pyx_AddTraceback("tpm.DMS.to_hours", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3385,7 +5285,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_15to_hours(PyObject *__pyx_v_self, CY return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":223 +/* "src/tpm_times.pxi":223 * return tpm_times.dms2h(self._dms) * * def to_radians(self): # <<<<<<<<<<<<<< @@ -3393,14 +5293,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_15to_hours(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_16to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3DMS_16to_radians[] = "Return angle in radians.\n\n Angle in degrees, arc-minutes and arc-seconds is converted into\n radians.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_16to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_33to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3DMS_32to_radians[] = "Return angle in radians.\n\n Angle in degrees, arc-minutes and arc-seconds is converted into\n radians.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n "; +static PyObject *__pyx_pw_3tpm_3DMS_33to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_radians (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_32to_radians(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_32to_radians(struct __pyx_obj_3tpm_DMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_radians"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_radians", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":235 + /* "src/tpm_times.pxi":235 * * """ * return tpm_times.dms2r(self._dms) # <<<<<<<<<<<<<< @@ -3408,17 +5324,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_16to_radians(PyObject *__pyx_v_self, * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(dms2r(((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_v_self)->_dms)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(dms2r(__pyx_v_self->_dms)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":223 + * return tpm_times.dms2h(self._dms) + * + * def to_radians(self): # <<<<<<<<<<<<<< + * """Return angle in radians. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.DMS.to_radians"); + __Pyx_AddTraceback("tpm.DMS.to_radians", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3426,7 +5349,120 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_16to_radians(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":272 +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_34__reduce_cython__(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_DMS *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple_, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.DMS.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3DMS_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_3DMS_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3DMS_36__setstate_cython__(((struct __pyx_obj_3tpm_DMS *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3DMS_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_DMS *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.DMS.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_times.pxi":272 * valid_keys = ('r', 'dd', 'hh', 'mm', 'ss') * cdef tpm_times.HMS _hms * def __cinit__(self): # <<<<<<<<<<<<<< @@ -3434,47 +5470,69 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3DMS_16to_radians(PyObject *__pyx_v_self, * self._hms.mm = 0.0 */ -static int __pyx_pf_5pytpm_3tpm_3HMS___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3HMS___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3HMS_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3HMS_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_3HMS___cinit__(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3HMS___cinit__(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":273 + /* "src/tpm_times.pxi":273 * cdef tpm_times.HMS _hms * def __cinit__(self): * self._hms.hh = 0.0 # <<<<<<<<<<<<<< * self._hms.mm = 0.0 * self._hms.ss = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.hh = 0.0; + __pyx_v_self->_hms.hh = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":274 + /* "src/tpm_times.pxi":274 * def __cinit__(self): * self._hms.hh = 0.0 * self._hms.mm = 0.0 # <<<<<<<<<<<<<< * self._hms.ss = 0.0 * */ - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.mm = 0.0; + __pyx_v_self->_hms.mm = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":275 + /* "src/tpm_times.pxi":275 * self._hms.hh = 0.0 * self._hms.mm = 0.0 * self._hms.ss = 0.0 # <<<<<<<<<<<<<< * * def __init__(self,**kwargs): */ - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.ss = 0.0; + __pyx_v_self->_hms.ss = 0.0; + + /* "src/tpm_times.pxi":272 + * valid_keys = ('r', 'dd', 'hh', 'mm', 'ss') + * cdef tpm_times.HMS _hms + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._hms.hh = 0.0 + * self._hms.mm = 0.0 + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":277 +/* "src/tpm_times.pxi":277 * self._hms.ss = 0.0 * * def __init__(self,**kwargs): # <<<<<<<<<<<<<< @@ -3482,218 +5540,255 @@ static int __pyx_pf_5pytpm_3tpm_3HMS___cinit__(PyObject *__pyx_v_self, PyObject * if key not in self.valid_keys: */ -static int __pyx_pf_5pytpm_3tpm_3HMS_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3HMS_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3HMS_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3HMS_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_kwargs = 0; - PyObject *__pyx_v_key; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - void *__pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - double __pyx_t_8; - __Pyx_RefNannySetupContext("__init__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (__pyx_kwds && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 1))) return -1; - __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); - if (unlikely(!__pyx_v_kwargs)) return -1; + __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return -1; __Pyx_GOTREF(__pyx_v_kwargs); - __pyx_v_key = Py_None; __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_3HMS_2__init__(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self), __pyx_v_kwargs); + + /* function exit code */ + __Pyx_XDECREF(__pyx_v_kwargs); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3HMS_2__init__(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_kwargs) { + PyObject *__pyx_v_key = NULL; + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + Py_ssize_t __pyx_t_2; + Py_ssize_t __pyx_t_3; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + int __pyx_t_6; + int __pyx_t_7; + int __pyx_t_8; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; + double __pyx_t_11; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":278 + /* "src/tpm_times.pxi":278 * * def __init__(self,**kwargs): * for key in kwargs: # <<<<<<<<<<<<<< * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) */ - __Pyx_INCREF(((PyObject *)__pyx_v_kwargs)); - __Pyx_XDECREF(__pyx_t_1); - __pyx_t_1 = ((PyObject *)__pyx_v_kwargs); __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_kwargs, 1, ((PyObject *)NULL), (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 278, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_1); + __pyx_t_1 = __pyx_t_5; + __pyx_t_5 = 0; while (1) { - if (!PyDict_Next(__pyx_t_1, (&__pyx_t_2), ((PyObject **)(&__pyx_t_3)), NULL)) break; - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_v_key); - __pyx_v_key = ((PyObject *)__pyx_t_3); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":279 + __pyx_t_6 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, NULL, NULL, __pyx_t_4); + if (unlikely(__pyx_t_6 == 0)) break; + if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(0, 278, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); + __pyx_t_5 = 0; + + /* "src/tpm_times.pxi":279 * def __init__(self,**kwargs): * for key in kwargs: * if key not in self.valid_keys: # <<<<<<<<<<<<<< * raise TypeError, "Invalid keyword: {0}".format(key) * if "r" in kwargs: */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__valid_keys); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_4, __pyx_v_key))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_valid_keys); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 279, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_7 = (__Pyx_PySequence_ContainsTF(__pyx_v_key, __pyx_t_5, Py_NE)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 279, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_8 = (__pyx_t_7 != 0); + if (unlikely(__pyx_t_8)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":280 + /* "src/tpm_times.pxi":280 * for key in kwargs: * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) # <<<<<<<<<<<<<< * if "r" in kwargs: * self._hms = tpm_times.r2hms(kwargs['r']) */ - __pyx_t_4 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_1), __pyx_n_s__format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_key); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_key); - __Pyx_GIVEREF(__pyx_v_key); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_7, 0); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L7; + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_Invalid_keyword_0, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 280, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9); + if (likely(__pyx_t_10)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_9, function); + } + } + __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_10, __pyx_v_key) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_v_key); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 280, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_5, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 280, __pyx_L1_error) + + /* "src/tpm_times.pxi":279 + * def __init__(self,**kwargs): + * for key in kwargs: + * if key not in self.valid_keys: # <<<<<<<<<<<<<< + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "r" in kwargs: + */ } - __pyx_L7:; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":281 + /* "src/tpm_times.pxi":281 * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) * if "r" in kwargs: # <<<<<<<<<<<<<< * self._hms = tpm_times.r2hms(kwargs['r']) * elif "dd" in kwargs: */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__r)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_8 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_r, __pyx_v_kwargs, Py_EQ)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 281, __pyx_L1_error) + __pyx_t_7 = (__pyx_t_8 != 0); + if (__pyx_t_7) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":282 + /* "src/tpm_times.pxi":282 * raise TypeError, "Invalid keyword: {0}".format(key) * if "r" in kwargs: * self._hms = tpm_times.r2hms(kwargs['r']) # <<<<<<<<<<<<<< * elif "dd" in kwargs: * self._hms = tpm_times.d2hms(kwargs['dd']) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__r)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_n_s_r); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 282, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms = r2hms(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_hms = r2hms(__pyx_t_11); + + /* "src/tpm_times.pxi":281 + * if key not in self.valid_keys: + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "r" in kwargs: # <<<<<<<<<<<<<< + * self._hms = tpm_times.r2hms(kwargs['r']) + * elif "dd" in kwargs: + */ + goto __pyx_L6; } - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":283 + /* "src/tpm_times.pxi":283 * if "r" in kwargs: * self._hms = tpm_times.r2hms(kwargs['r']) * elif "dd" in kwargs: # <<<<<<<<<<<<<< * self._hms = tpm_times.d2hms(kwargs['dd']) * else: */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__dd)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_7 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_dd, __pyx_v_kwargs, Py_EQ)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 283, __pyx_L1_error) + __pyx_t_8 = (__pyx_t_7 != 0); + if (__pyx_t_8) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":284 + /* "src/tpm_times.pxi":284 * self._hms = tpm_times.r2hms(kwargs['r']) * elif "dd" in kwargs: * self._hms = tpm_times.d2hms(kwargs['dd']) # <<<<<<<<<<<<<< * else: * self._hms.hh = kwargs.get('hh',0.0) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__dd)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_n_s_dd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 284, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms = d2hms(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_hms = d2hms(__pyx_t_11); + + /* "src/tpm_times.pxi":283 + * if "r" in kwargs: + * self._hms = tpm_times.r2hms(kwargs['r']) + * elif "dd" in kwargs: # <<<<<<<<<<<<<< + * self._hms = tpm_times.d2hms(kwargs['dd']) + * else: + */ + goto __pyx_L6; } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":286 + /* "src/tpm_times.pxi":286 * self._hms = tpm_times.d2hms(kwargs['dd']) * else: * self._hms.hh = kwargs.get('hh',0.0) # <<<<<<<<<<<<<< * self._hms.mm = kwargs.get('mm',0.0) * self._hms.ss = kwargs.get('ss',0.0) */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_hh, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__hh), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 286, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.hh = __pyx_t_8; + __pyx_v_self->_hms.hh = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":287 + /* "src/tpm_times.pxi":287 * else: * self._hms.hh = kwargs.get('hh',0.0) * self._hms.mm = kwargs.get('mm',0.0) # <<<<<<<<<<<<<< * self._hms.ss = kwargs.get('ss',0.0) * */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__mm), __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_mm, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.mm = __pyx_t_8; + __pyx_v_self->_hms.mm = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":288 + /* "src/tpm_times.pxi":288 * self._hms.hh = kwargs.get('hh',0.0) * self._hms.mm = kwargs.get('mm',0.0) * self._hms.ss = kwargs.get('ss',0.0) # <<<<<<<<<<<<<< * * def __gethh(self): */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_ss, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__ss), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 288, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.ss = __pyx_t_8; + __pyx_v_self->_hms.ss = __pyx_t_11; } - __pyx_L8:; + __pyx_L6:; + + /* "src/tpm_times.pxi":277 + * self._hms.ss = 0.0 + * + * def __init__(self,**kwargs): # <<<<<<<<<<<<<< + * for key in kwargs: + * if key not in self.valid_keys: + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("pytpm.tpm.HMS.__init__"); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_10); + __Pyx_AddTraceback("tpm.HMS.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_DECREF(__pyx_v_kwargs); - __Pyx_DECREF(__pyx_v_key); + __Pyx_XDECREF(__pyx_v_key); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":290 +/* "src/tpm_times.pxi":290 * self._hms.ss = kwargs.get('ss',0.0) * * def __gethh(self): # <<<<<<<<<<<<<< @@ -3701,13 +5796,29 @@ static int __pyx_pf_5pytpm_3tpm_3HMS_1__init__(PyObject *__pyx_v_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_2__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_2__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_5__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_5__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gethh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_4__gethh(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_4__gethh(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gethh"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gethh", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":291 + /* "src/tpm_times.pxi":291 * * def __gethh(self): * return self._hms.hh # <<<<<<<<<<<<<< @@ -3715,17 +5826,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_2__gethh(PyObject *__pyx_v_self, CYTH * def __sethh(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_hms.hh); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 291, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":290 + * self._hms.ss = kwargs.get('ss',0.0) + * + * def __gethh(self): # <<<<<<<<<<<<<< + * return self._hms.hh + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.__gethh"); + __Pyx_AddTraceback("tpm.HMS.__gethh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3733,7 +5851,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_2__gethh(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":293 +/* "src/tpm_times.pxi":293 * return self._hms.hh * * def __sethh(self,value): # <<<<<<<<<<<<<< @@ -3741,26 +5859,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_2__gethh(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_3__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_3__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { - PyObject *__pyx_r = NULL; - double __pyx_t_1; - __Pyx_RefNannySetupContext("__sethh"); +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_7__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_7__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sethh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_6__sethh(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self), ((PyObject *)__pyx_v_value)); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":294 - * - * def __sethh(self,value): + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_6__sethh(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sethh", 0); + + /* "src/tpm_times.pxi":294 + * + * def __sethh(self,value): * self._hms.hh = value # <<<<<<<<<<<<<< * * hh = property(__gethh, __sethh,doc="Hours.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.hh = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 294, __pyx_L1_error) + __pyx_v_self->_hms.hh = __pyx_t_1; + + /* "src/tpm_times.pxi":293 + * return self._hms.hh + * + * def __sethh(self,value): # <<<<<<<<<<<<<< + * self._hms.hh = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.HMS.__sethh"); + __Pyx_AddTraceback("tpm.HMS.__sethh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3768,7 +5911,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_3__sethh(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":298 +/* "src/tpm_times.pxi":298 * hh = property(__gethh, __sethh,doc="Hours.") * * def __getmm(self): # <<<<<<<<<<<<<< @@ -3776,13 +5919,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_3__sethh(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_4__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_4__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_9__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_9__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_8__getmm(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_8__getmm(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":299 + /* "src/tpm_times.pxi":299 * * def __getmm(self): * return self._hms.mm # <<<<<<<<<<<<<< @@ -3790,17 +5949,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_4__getmm(PyObject *__pyx_v_self, CYTH * def __setmm(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_hms.mm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":298 + * hh = property(__gethh, __sethh,doc="Hours.") + * + * def __getmm(self): # <<<<<<<<<<<<<< + * return self._hms.mm + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.__getmm"); + __Pyx_AddTraceback("tpm.HMS.__getmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3808,7 +5974,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_4__getmm(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":301 +/* "src/tpm_times.pxi":301 * return self._hms.mm * * def __setmm(self,value): # <<<<<<<<<<<<<< @@ -3816,26 +5982,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_4__getmm(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_5__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_5__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_11__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_11__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_10__setmm(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_10__setmm(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":302 + /* "src/tpm_times.pxi":302 * * def __setmm(self,value): * self._hms.mm = value # <<<<<<<<<<<<<< * * mm = property(__getmm, __setmm,doc="Minutes.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.mm = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 302, __pyx_L1_error) + __pyx_v_self->_hms.mm = __pyx_t_1; + + /* "src/tpm_times.pxi":301 + * return self._hms.mm + * + * def __setmm(self,value): # <<<<<<<<<<<<<< + * self._hms.mm = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.HMS.__setmm"); + __Pyx_AddTraceback("tpm.HMS.__setmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3843,7 +6034,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_5__setmm(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":306 +/* "src/tpm_times.pxi":306 * mm = property(__getmm, __setmm,doc="Minutes.") * * def __getss(self): # <<<<<<<<<<<<<< @@ -3851,13 +6042,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_5__setmm(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_6__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_6__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_13__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_13__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_12__getss(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_12__getss(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":307 + /* "src/tpm_times.pxi":307 * * def __getss(self): * return self._hms.ss # <<<<<<<<<<<<<< @@ -3865,17 +6072,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_6__getss(PyObject *__pyx_v_self, CYTH * def __setss(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_hms.ss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 307, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":306 + * mm = property(__getmm, __setmm,doc="Minutes.") + * + * def __getss(self): # <<<<<<<<<<<<<< + * return self._hms.ss + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.__getss"); + __Pyx_AddTraceback("tpm.HMS.__getss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3883,7 +6097,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_6__getss(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":309 +/* "src/tpm_times.pxi":309 * return self._hms.ss * * def __setss(self,value): # <<<<<<<<<<<<<< @@ -3891,26 +6105,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_6__getss(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_7__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_7__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_15__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_15__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_14__setss(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_14__setss(struct __pyx_obj_3tpm_HMS *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":310 + /* "src/tpm_times.pxi":310 * * def __setss(self,value): * self._hms.ss = value # <<<<<<<<<<<<<< * * ss = property(__getss, __setss,doc="Seconds.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms.ss = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 310, __pyx_L1_error) + __pyx_v_self->_hms.ss = __pyx_t_1; + + /* "src/tpm_times.pxi":309 + * return self._hms.ss + * + * def __setss(self,value): # <<<<<<<<<<<<<< + * self._hms.ss = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.HMS.__setss"); + __Pyx_AddTraceback("tpm.HMS.__setss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -3918,7 +6157,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_7__setss(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":314 +/* "src/tpm_times.pxi":314 * ss = property(__getss, __setss,doc="Seconds.") * * def __repr__(self): # <<<<<<<<<<<<<< @@ -3926,41 +6165,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_7__setss(PyObject *__pyx_v_self, PyOb * return repr(d) */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_8__repr__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_8__repr__(PyObject *__pyx_v_self) { - PyObject *__pyx_v_d; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_17__repr__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_17__repr__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_16__repr__(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_16__repr__(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { + PyObject *__pyx_v_d = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_v_d = ((PyObject*)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__repr__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":315 + /* "src/tpm_times.pxi":315 * * def __repr__(self): * d = {'hh': self.hh, 'mm': self.mm, 'ss': self.ss} # <<<<<<<<<<<<<< * return repr(d) * */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 315, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_hh); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__hh), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_hh, __pyx_t_2) < 0) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__mm), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_mm, __pyx_t_2) < 0) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__ss), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ss, __pyx_t_2) < 0) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_d)); - __pyx_v_d = __pyx_t_1; + __pyx_v_d = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":316 + /* "src/tpm_times.pxi":316 * def __repr__(self): * d = {'hh': self.hh, 'mm': self.mm, 'ss': self.ss} * return repr(d) # <<<<<<<<<<<<<< @@ -3968,27 +6221,34 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_8__repr__(PyObject *__pyx_v_self) { * def __str__(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_Repr(((PyObject *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyObject_Repr(__pyx_v_d); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":314 + * ss = property(__getss, __setss,doc="Seconds.") + * + * def __repr__(self): # <<<<<<<<<<<<<< + * d = {'hh': self.hh, 'mm': self.mm, 'ss': self.ss} + * return repr(d) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.HMS.__repr__"); + __Pyx_AddTraceback("tpm.HMS.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_d); + __Pyx_XDECREF(__pyx_v_d); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":318 +/* "src/tpm_times.pxi":318 * return repr(d) * * def __str__(self): # <<<<<<<<<<<<<< @@ -3996,24 +6256,40 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_8__repr__(PyObject *__pyx_v_self) { * hms = tpm_times.hms2hms(self._hms) */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_9__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_9__str__(PyObject *__pyx_v_self) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_19__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_19__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_18__str__(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_18__str__(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { HMS __pyx_v_hms; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":320 + /* "src/tpm_times.pxi":320 * def __str__(self): * cdef tpm_times.HMS hms * hms = tpm_times.hms2hms(self._hms) # <<<<<<<<<<<<<< * return tpm_times.fmt_hms(hms).decode("utf-8") * */ - __pyx_v_hms = hms2hms(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms); + __pyx_v_hms = hms2hms(__pyx_v_self->_hms); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":321 + /* "src/tpm_times.pxi":321 * cdef tpm_times.HMS hms * hms = tpm_times.hms2hms(self._hms) * return tpm_times.fmt_hms(hms).decode("utf-8") # <<<<<<<<<<<<<< @@ -4022,18 +6298,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_9__str__(PyObject *__pyx_v_self) { */ __Pyx_XDECREF(__pyx_r); __pyx_t_1 = fmt_hms(__pyx_v_hms); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 321, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":318 + * return repr(d) + * + * def __str__(self): # <<<<<<<<<<<<<< + * cdef tpm_times.HMS hms + * hms = tpm_times.hms2hms(self._hms) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.HMS.__str__"); + __Pyx_AddTraceback("tpm.HMS.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -4041,7 +6324,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_9__str__(PyObject *__pyx_v_self) { return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":323 +/* "src/tpm_times.pxi":323 * return tpm_times.fmt_hms(hms).decode("utf-8") * * def __add__(self, other): # <<<<<<<<<<<<<< @@ -4049,118 +6332,136 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_9__str__(PyObject *__pyx_v_self) { * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_10__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_10__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_hms; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_21__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_21__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_20__add__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_20__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_hms = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_hms = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":326 + /* "src/tpm_times.pxi":326 * # Cython does not have __rdd__ and the first parameter may not * # be this object * if isinstance(self, HMS) and isinstance(other, HMS): # <<<<<<<<<<<<<< * # return a new HMS object * hms = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_HMS)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_HMS); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_HMS)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_HMS); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":328 + /* "src/tpm_times.pxi":328 * if isinstance(self, HMS) and isinstance(other, HMS): * # return a new HMS object * hms = self.__class__() # <<<<<<<<<<<<<< * hms.hh = self.hh + other.hh * hms.mm = self.mm + other.mm */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_hms); - __pyx_v_hms = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_hms = __pyx_t_4; + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":329 + /* "src/tpm_times.pxi":329 * # return a new HMS object * hms = self.__class__() * hms.hh = self.hh + other.hh # <<<<<<<<<<<<<< * hms.mm = self.mm + other.mm * hms.ss = self.ss + other.ss */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_hh); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 329, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_hh); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 329, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 329, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_hms, __pyx_n_s__hh, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_hms, __pyx_n_s_hh, __pyx_t_6) < 0) __PYX_ERR(0, 329, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":330 + /* "src/tpm_times.pxi":330 * hms = self.__class__() * hms.hh = self.hh + other.hh * hms.mm = self.mm + other.mm # <<<<<<<<<<<<<< * hms.ss = self.ss + other.ss * return hms */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_hms, __pyx_n_s__mm, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_hms, __pyx_n_s_mm, __pyx_t_4) < 0) __PYX_ERR(0, 330, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":331 + /* "src/tpm_times.pxi":331 * hms.hh = self.hh + other.hh * hms.mm = self.mm + other.mm * hms.ss = self.ss + other.ss # <<<<<<<<<<<<<< * return hms * else: */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 331, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_hms, __pyx_n_s__ss, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_hms, __pyx_n_s_ss, __pyx_t_6) < 0) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":332 + /* "src/tpm_times.pxi":332 * hms.mm = self.mm + other.mm * hms.ss = self.ss + other.ss * return hms # <<<<<<<<<<<<<< @@ -4171,38 +6472,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_10__add__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(__pyx_v_hms); __pyx_r = __pyx_v_hms; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":326 + * # Cython does not have __rdd__ and the first parameter may not + * # be this object + * if isinstance(self, HMS) and isinstance(other, HMS): # <<<<<<<<<<<<<< + * # return a new HMS object + * hms = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":334 + /* "src/tpm_times.pxi":334 * return hms * else: * raise TypeError, "Can only add two HMS values." # <<<<<<<<<<<<<< * * def __sub__(self, other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_4), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 334; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_HMS_values, 0, 0); + __PYX_ERR(0, 334, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":323 + * return tpm_times.fmt_hms(hms).decode("utf-8") + * + * def __add__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __rdd__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.HMS.__add__"); + __Pyx_AddTraceback("tpm.HMS.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_hms); + __Pyx_XDECREF(__pyx_v_hms); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":336 +/* "src/tpm_times.pxi":336 * raise TypeError, "Can only add two HMS values." * * def __sub__(self, other): # <<<<<<<<<<<<<< @@ -4210,118 +6524,136 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_10__add__(PyObject *__pyx_v_self, PyO * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_11__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_11__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_hms; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_23__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_23__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_22__sub__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_22__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_hms = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_hms = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":339 + /* "src/tpm_times.pxi":339 * # Cython does not have __rsub__ and the first parameter may not * # be this object * if isinstance(self, HMS) and isinstance(other, HMS): # <<<<<<<<<<<<<< * # return a new HMS object * hms = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_HMS)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_HMS); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_HMS)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_HMS); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":341 + /* "src/tpm_times.pxi":341 * if isinstance(self, HMS) and isinstance(other, HMS): * # return a new HMS object * hms = self.__class__() # <<<<<<<<<<<<<< * hms.hh = self.hh - other.hh * hms.mm = self.mm - other.mm */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_hms); - __pyx_v_hms = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 341, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 341, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_hms = __pyx_t_4; + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":342 + /* "src/tpm_times.pxi":342 * # return a new HMS object * hms = self.__class__() * hms.hh = self.hh - other.hh # <<<<<<<<<<<<<< * hms.mm = self.mm - other.mm * hms.ss = self.ss - other.ss */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_hh); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 342, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_hh); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 342, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_hms, __pyx_n_s__hh, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_hms, __pyx_n_s_hh, __pyx_t_6) < 0) __PYX_ERR(0, 342, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":343 + /* "src/tpm_times.pxi":343 * hms = self.__class__() * hms.hh = self.hh - other.hh * hms.mm = self.mm - other.mm # <<<<<<<<<<<<<< * hms.ss = self.ss - other.ss * return hms */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 343, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 343, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_hms, __pyx_n_s__mm, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_hms, __pyx_n_s_mm, __pyx_t_4) < 0) __PYX_ERR(0, 343, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":344 + /* "src/tpm_times.pxi":344 * hms.hh = self.hh - other.hh * hms.mm = self.mm - other.mm * hms.ss = self.ss - other.ss # <<<<<<<<<<<<<< * return hms * else: */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 344, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_hms, __pyx_n_s__ss, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_hms, __pyx_n_s_ss, __pyx_t_6) < 0) __PYX_ERR(0, 344, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":345 + /* "src/tpm_times.pxi":345 * hms.mm = self.mm - other.mm * hms.ss = self.ss - other.ss * return hms # <<<<<<<<<<<<<< @@ -4332,38 +6664,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_11__sub__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(__pyx_v_hms); __pyx_r = __pyx_v_hms; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":339 + * # Cython does not have __rsub__ and the first parameter may not + * # be this object + * if isinstance(self, HMS) and isinstance(other, HMS): # <<<<<<<<<<<<<< + * # return a new HMS object + * hms = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":347 + /* "src/tpm_times.pxi":347 * return hms * else: * raise TypeError, "Can only subtract two HMS values." # <<<<<<<<<<<<<< * * def to_dms(self): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_5), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_subtract_two_HMS_values, 0, 0); + __PYX_ERR(0, 347, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":336 + * raise TypeError, "Can only add two HMS values." + * + * def __sub__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __rsub__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.HMS.__sub__"); + __Pyx_AddTraceback("tpm.HMS.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_hms); + __Pyx_XDECREF(__pyx_v_hms); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":349 +/* "src/tpm_times.pxi":349 * raise TypeError, "Can only subtract two HMS values." * * def to_dms(self): # <<<<<<<<<<<<<< @@ -4371,39 +6716,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_11__sub__(PyObject *__pyx_v_self, PyO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_12to_dms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3HMS_12to_dms[] = "Convert to a DMS object.\n\n Returns a tpm.DMS class containing the angle/time in this\n instance converted into degrees, arc-minutes, and arc-seconds.\n\n Returns\n -------\n dms : tpm.DMS\n A tpm.DMS object.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_12to_dms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_25to_dms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3HMS_24to_dms[] = "Convert to a DMS object.\n\n Returns a tpm.DMS class containing the angle/time in this\n instance converted into degrees, arc-minutes, and arc-seconds.\n\n Returns\n -------\n dms : tpm.DMS\n A tpm.DMS object.\n\n "; +static PyObject *__pyx_pw_3tpm_3HMS_25to_dms(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_dms (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_24to_dms(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_24to_dms(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { DMS __pyx_v__dms; - struct __pyx_obj_5pytpm_3tpm_DMS *__pyx_v_dms; + struct __pyx_obj_3tpm_DMS *__pyx_v_dms = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_dms"); - __pyx_v_dms = ((struct __pyx_obj_5pytpm_3tpm_DMS *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_dms", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":362 + /* "src/tpm_times.pxi":362 * """ * cdef tpm_times.DMS _dms * _dms = tpm_times.hms2dms(self._hms) # <<<<<<<<<<<<<< * dms = DMS() * dms._dms = _dms */ - __pyx_v__dms = hms2dms(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms); + __pyx_v__dms = hms2dms(__pyx_v_self->_hms); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":363 + /* "src/tpm_times.pxi":363 * cdef tpm_times.DMS _dms * _dms = tpm_times.hms2dms(self._hms) * dms = DMS() # <<<<<<<<<<<<<< * dms._dms = _dms * return dms */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_DMS)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_DMS)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_dms)); - __pyx_v_dms = ((struct __pyx_obj_5pytpm_3tpm_DMS *)__pyx_t_1); + __pyx_v_dms = ((struct __pyx_obj_3tpm_DMS *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":364 + /* "src/tpm_times.pxi":364 * _dms = tpm_times.hms2dms(self._hms) * dms = DMS() * dms._dms = _dms # <<<<<<<<<<<<<< @@ -4412,7 +6771,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_12to_dms(PyObject *__pyx_v_self, CYTH */ __pyx_v_dms->_dms = __pyx_v__dms; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":365 + /* "src/tpm_times.pxi":365 * dms = DMS() * dms._dms = _dms * return dms # <<<<<<<<<<<<<< @@ -4424,20 +6783,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_12to_dms(PyObject *__pyx_v_self, CYTH __pyx_r = ((PyObject *)__pyx_v_dms); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":349 + * raise TypeError, "Can only subtract two HMS values." + * + * def to_dms(self): # <<<<<<<<<<<<<< + * """Convert to a DMS object. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.to_dms"); + __Pyx_AddTraceback("tpm.HMS.to_dms", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_dms); + __Pyx_XDECREF((PyObject *)__pyx_v_dms); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":367 +/* "src/tpm_times.pxi":367 * return dms * * def normalize(self): # <<<<<<<<<<<<<< @@ -4445,28 +6811,50 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_12to_dms(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_13normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3HMS_13normalize[] = "Normalize components.\n\n Normalizes the angle so that hours and minutes part are integer\n valued and the fractional part gets assigned to\n seconds. Similar to the case of `DMS`, the negative sign gets\n assigned to the hours part.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> h = tpm.HMS()\n >>> h.hh = 12.34\n >>> h.mm = 1.3\n >>> h.ss = 61.4\n >>> h\n {'mm': 1.3, 'ss': 61.399999999999999, 'hh': 12.34}\n >>> h.normalize()\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': 12.0}\n >>> h.hh = -12.34\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': -12.34}\n >>> h.normalize()\n >>> h\n {'mm': 2.0, 'ss': 19.400000000001967, 'hh': -12.0}\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_13normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_27normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3HMS_26normalize[] = "Normalize components.\n\n Normalizes the angle so that hours and minutes part are integer\n valued and the fractional part gets assigned to\n seconds. Similar to the case of `DMS`, the negative sign gets\n assigned to the hours part.\n\n Examples\n --------\n >>> from pytpm import tpm\n >>> h = tpm.HMS()\n >>> h.hh = 12.34\n >>> h.mm = 1.3\n >>> h.ss = 61.4\n >>> h\n {'mm': 1.3, 'ss': 61.399999999999999, 'hh': 12.34}\n >>> h.normalize()\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': 12.0}\n >>> h.hh = -12.34\n >>> h\n {'mm': 22.0, 'ss': 43.400000000001455, 'hh': -12.34}\n >>> h.normalize()\n >>> h\n {'mm': 2.0, 'ss': 19.400000000001967, 'hh': -12.0}\n\n "; +static PyObject *__pyx_pw_3tpm_3HMS_27normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_26normalize(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_26normalize(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("normalize"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":395 + /* "src/tpm_times.pxi":395 * * """ * self._hms = tpm_times.hms2hms(self._hms) # <<<<<<<<<<<<<< * * def to_hours(self): */ - ((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms = hms2hms(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms); + __pyx_v_self->_hms = hms2hms(__pyx_v_self->_hms); + + /* "src/tpm_times.pxi":367 + * return dms + * + * def normalize(self): # <<<<<<<<<<<<<< + * """Normalize components. + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":397 +/* "src/tpm_times.pxi":397 * self._hms = tpm_times.hms2hms(self._hms) * * def to_hours(self): # <<<<<<<<<<<<<< @@ -4474,14 +6862,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_13normalize(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_14to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3HMS_14to_hours[] = "Convert time into hours.\n\n Angle in hours, minutes and seconds is converted into hours.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_14to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_29to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3HMS_28to_hours[] = "Convert time into hours.\n\n Angle in hours, minutes and seconds is converted into hours.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n "; +static PyObject *__pyx_pw_3tpm_3HMS_29to_hours(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_hours (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_28to_hours(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_28to_hours(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_hours"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_hours", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":408 + /* "src/tpm_times.pxi":408 * * """ * return tpm_times.hms2h(self._hms) # <<<<<<<<<<<<<< @@ -4489,17 +6893,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_14to_hours(PyObject *__pyx_v_self, CY * def to_degrees(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(hms2h(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(hms2h(__pyx_v_self->_hms)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 408, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":397 + * self._hms = tpm_times.hms2hms(self._hms) + * + * def to_hours(self): # <<<<<<<<<<<<<< + * """Convert time into hours. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.to_hours"); + __Pyx_AddTraceback("tpm.HMS.to_hours", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -4507,7 +6918,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_14to_hours(PyObject *__pyx_v_self, CY return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":410 +/* "src/tpm_times.pxi":410 * return tpm_times.hms2h(self._hms) * * def to_degrees(self): # <<<<<<<<<<<<<< @@ -4515,14 +6926,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_14to_hours(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_15to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3HMS_15to_degrees[] = "Convert HMS into decimal degrees.\n\n Angle in hours, minutes and seconds is converted into degrees.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_15to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = NULL; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_31to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3HMS_30to_degrees[] = "Convert HMS into decimal degrees.\n\n Angle in hours, minutes and seconds is converted into degrees.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n "; +static PyObject *__pyx_pw_3tpm_3HMS_31to_degrees(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_degrees (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_30to_degrees(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_30to_degrees(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_degrees"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_degrees", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":421 + /* "src/tpm_times.pxi":421 * * """ * return tpm_times.hms2d(self._hms) # <<<<<<<<<<<<<< @@ -4530,17 +6957,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_15to_degrees(PyObject *__pyx_v_self, * def to_radians(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(hms2d(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(hms2d(__pyx_v_self->_hms)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":410 + * return tpm_times.hms2h(self._hms) + * + * def to_degrees(self): # <<<<<<<<<<<<<< + * """Convert HMS into decimal degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.to_degrees"); + __Pyx_AddTraceback("tpm.HMS.to_degrees", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -4548,7 +6982,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_15to_degrees(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":423 +/* "src/tpm_times.pxi":423 * return tpm_times.hms2d(self._hms) * * def to_radians(self): # <<<<<<<<<<<<<< @@ -4556,14 +6990,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_15to_degrees(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_16to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3HMS_16to_radians[] = "Convert HMS into radians.\n\n Angle in hours, minutes and seconds is converted into radians.\n\n Returns\n -------\n r : float\n Angle in radians.\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_16to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_33to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3HMS_32to_radians[] = "Convert HMS into radians.\n\n Angle in hours, minutes and seconds is converted into radians.\n\n Returns\n -------\n r : float\n Angle in radians.\n "; +static PyObject *__pyx_pw_3tpm_3HMS_33to_radians(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_radians (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_32to_radians(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_32to_radians(struct __pyx_obj_3tpm_HMS *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_radians"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_radians", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":433 + /* "src/tpm_times.pxi":433 * Angle in radians. * """ * return tpm_times.hms2r(self._hms) # <<<<<<<<<<<<<< @@ -4571,17 +7021,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_16to_radians(PyObject *__pyx_v_self, * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(hms2r(((struct __pyx_obj_5pytpm_3tpm_HMS *)__pyx_v_self)->_hms)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 433; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(hms2r(__pyx_v_self->_hms)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":423 + * return tpm_times.hms2d(self._hms) + * + * def to_radians(self): # <<<<<<<<<<<<<< + * """Convert HMS into radians. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.HMS.to_radians"); + __Pyx_AddTraceback("tpm.HMS.to_radians", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -4589,7 +7046,120 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_16to_radians(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":486 +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_34__reduce_cython__(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_HMS *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.HMS.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3HMS_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_3HMS_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3HMS_36__setstate_cython__(((struct __pyx_obj_3tpm_HMS *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3HMS_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_HMS *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.HMS.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_times.pxi":486 * valid_keys = ('j','year','ydd','y','m','dd','hh','mm','ss') * cdef tpm_times.YMD _ymd * def __cinit__(self): # <<<<<<<<<<<<<< @@ -4597,74 +7167,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3HMS_16to_radians(PyObject *__pyx_v_self, * self._ymd.m = 1 */ -static int __pyx_pf_5pytpm_3tpm_3YMD___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3YMD___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3YMD_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3YMD_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_3YMD___cinit__(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3YMD___cinit__(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":487 + /* "src/tpm_times.pxi":487 * cdef tpm_times.YMD _ymd * def __cinit__(self): * self._ymd.y = 2000 # <<<<<<<<<<<<<< * self._ymd.m = 1 * self._ymd.dd = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.y = 2000; + __pyx_v_self->_ymd.y = 0x7D0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":488 + /* "src/tpm_times.pxi":488 * def __cinit__(self): * self._ymd.y = 2000 * self._ymd.m = 1 # <<<<<<<<<<<<<< * self._ymd.dd = 0.0 * self._ymd.hms.hh = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.m = 1; + __pyx_v_self->_ymd.m = 1; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":489 + /* "src/tpm_times.pxi":489 * self._ymd.y = 2000 * self._ymd.m = 1 * self._ymd.dd = 0.0 # <<<<<<<<<<<<<< * self._ymd.hms.hh = 0.0 * self._ymd.hms.mm = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.dd = 0.0; + __pyx_v_self->_ymd.dd = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":490 + /* "src/tpm_times.pxi":490 * self._ymd.m = 1 * self._ymd.dd = 0.0 * self._ymd.hms.hh = 0.0 # <<<<<<<<<<<<<< * self._ymd.hms.mm = 0.0 * self._ymd.hms.ss = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.hh = 0.0; + __pyx_v_self->_ymd.hms.hh = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":491 + /* "src/tpm_times.pxi":491 * self._ymd.dd = 0.0 * self._ymd.hms.hh = 0.0 * self._ymd.hms.mm = 0.0 # <<<<<<<<<<<<<< * self._ymd.hms.ss = 0.0 * */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.mm = 0.0; + __pyx_v_self->_ymd.hms.mm = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":492 + /* "src/tpm_times.pxi":492 * self._ymd.hms.hh = 0.0 * self._ymd.hms.mm = 0.0 * self._ymd.hms.ss = 0.0 # <<<<<<<<<<<<<< * * def __init__(self,**kwarg): */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.ss = 0.0; + __pyx_v_self->_ymd.hms.ss = 0.0; + + /* "src/tpm_times.pxi":486 + * valid_keys = ('j','year','ydd','y','m','dd','hh','mm','ss') + * cdef tpm_times.YMD _ymd + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._ymd.y = 2000 + * self._ymd.m = 1 + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":494 +/* "src/tpm_times.pxi":494 * self._ymd.hms.ss = 0.0 * * def __init__(self,**kwarg): # <<<<<<<<<<<<<< @@ -4672,230 +7264,298 @@ static int __pyx_pf_5pytpm_3tpm_3YMD___cinit__(PyObject *__pyx_v_self, PyObject * if key not in self.valid_keys: */ -static int __pyx_pf_5pytpm_3tpm_3YMD_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3YMD_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3YMD_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3YMD_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_kwarg = 0; - PyObject *__pyx_v_key; - PyObject *__pyx_v_y; - PyObject *__pyx_v_d; - PyObject *__pyx_v_m; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - void *__pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - double __pyx_t_8; - int __pyx_t_9; - __Pyx_RefNannySetupContext("__init__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (__pyx_kwds && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 1))) return -1; - __pyx_v_kwarg = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); - if (unlikely(!__pyx_v_kwarg)) return -1; + __pyx_v_kwarg = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); if (unlikely(!__pyx_v_kwarg)) return -1; __Pyx_GOTREF(__pyx_v_kwarg); - __pyx_v_key = Py_None; __Pyx_INCREF(Py_None); - __pyx_v_y = Py_None; __Pyx_INCREF(Py_None); - __pyx_v_d = Py_None; __Pyx_INCREF(Py_None); - __pyx_v_m = Py_None; __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_3YMD_2__init__(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), __pyx_v_kwarg); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":495 + /* function exit code */ + __Pyx_XDECREF(__pyx_v_kwarg); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3YMD_2__init__(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_kwarg) { + PyObject *__pyx_v_key = NULL; + PyObject *__pyx_v_y = NULL; + PyObject *__pyx_v_d = NULL; + PyObject *__pyx_v_m = NULL; + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + Py_ssize_t __pyx_t_2; + Py_ssize_t __pyx_t_3; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + int __pyx_t_6; + int __pyx_t_7; + int __pyx_t_8; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; + double __pyx_t_11; + PyObject *(*__pyx_t_12)(PyObject *); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); + + /* "src/tpm_times.pxi":495 * * def __init__(self,**kwarg): * for key in kwarg: # <<<<<<<<<<<<<< * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) */ - __Pyx_INCREF(((PyObject *)__pyx_v_kwarg)); - __Pyx_XDECREF(__pyx_t_1); - __pyx_t_1 = ((PyObject *)__pyx_v_kwarg); __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_kwarg, 1, ((PyObject *)NULL), (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 495, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_1); + __pyx_t_1 = __pyx_t_5; + __pyx_t_5 = 0; while (1) { - if (!PyDict_Next(__pyx_t_1, (&__pyx_t_2), ((PyObject **)(&__pyx_t_3)), NULL)) break; - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_v_key); - __pyx_v_key = ((PyObject *)__pyx_t_3); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":496 + __pyx_t_6 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, NULL, NULL, __pyx_t_4); + if (unlikely(__pyx_t_6 == 0)) break; + if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(0, 495, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); + __pyx_t_5 = 0; + + /* "src/tpm_times.pxi":496 * def __init__(self,**kwarg): * for key in kwarg: * if key not in self.valid_keys: # <<<<<<<<<<<<<< * raise TypeError, "Invalid keyword: {0}".format(key) * if "j" in kwarg: */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__valid_keys); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_4, __pyx_v_key))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_valid_keys); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 496, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_7 = (__Pyx_PySequence_ContainsTF(__pyx_v_key, __pyx_t_5, Py_NE)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 496, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_8 = (__pyx_t_7 != 0); + if (unlikely(__pyx_t_8)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":497 + /* "src/tpm_times.pxi":497 * for key in kwarg: * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) # <<<<<<<<<<<<<< * if "j" in kwarg: * self._ymd = tpm_times.j2ymd(kwarg['j']) */ - __pyx_t_4 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_1), __pyx_n_s__format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_key); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_key); - __Pyx_GIVEREF(__pyx_v_key); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_7, 0); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L7; + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_Invalid_keyword_0, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 497, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9); + if (likely(__pyx_t_10)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_9, function); + } + } + __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_10, __pyx_v_key) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_v_key); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 497, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_5, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 497, __pyx_L1_error) + + /* "src/tpm_times.pxi":496 + * def __init__(self,**kwarg): + * for key in kwarg: + * if key not in self.valid_keys: # <<<<<<<<<<<<<< + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "j" in kwarg: + */ } - __pyx_L7:; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":498 + /* "src/tpm_times.pxi":498 * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) * if "j" in kwarg: # <<<<<<<<<<<<<< * self._ymd = tpm_times.j2ymd(kwarg['j']) * elif "year" in kwarg: */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__j)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_8 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_j, __pyx_v_kwarg, Py_EQ)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 498, __pyx_L1_error) + __pyx_t_7 = (__pyx_t_8 != 0); + if (__pyx_t_7) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":499 + /* "src/tpm_times.pxi":499 * raise TypeError, "Invalid keyword: {0}".format(key) * if "j" in kwarg: * self._ymd = tpm_times.j2ymd(kwarg['j']) # <<<<<<<<<<<<<< * elif "year" in kwarg: * self._ymd = tpm_times.y2ymd(kwarg['year']) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__j)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwarg, __pyx_n_s_j); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 499, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd = j2ymd(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_ymd = j2ymd(__pyx_t_11); + + /* "src/tpm_times.pxi":498 + * if key not in self.valid_keys: + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "j" in kwarg: # <<<<<<<<<<<<<< + * self._ymd = tpm_times.j2ymd(kwarg['j']) + * elif "year" in kwarg: + */ + goto __pyx_L6; } - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":500 + /* "src/tpm_times.pxi":500 * if "j" in kwarg: * self._ymd = tpm_times.j2ymd(kwarg['j']) * elif "year" in kwarg: # <<<<<<<<<<<<<< * self._ymd = tpm_times.y2ymd(kwarg['year']) * elif "ydd" in kwarg: */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__year)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_7 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_year, __pyx_v_kwarg, Py_EQ)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 500, __pyx_L1_error) + __pyx_t_8 = (__pyx_t_7 != 0); + if (__pyx_t_8) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":501 + /* "src/tpm_times.pxi":501 * self._ymd = tpm_times.j2ymd(kwarg['j']) * elif "year" in kwarg: * self._ymd = tpm_times.y2ymd(kwarg['year']) # <<<<<<<<<<<<<< * elif "ydd" in kwarg: * # Must be tuple (integer year, double day) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__year)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwarg, __pyx_n_s_year); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 501, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 501, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd = y2ymd(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_ymd = y2ymd(__pyx_t_11); + + /* "src/tpm_times.pxi":500 + * if "j" in kwarg: + * self._ymd = tpm_times.j2ymd(kwarg['j']) + * elif "year" in kwarg: # <<<<<<<<<<<<<< + * self._ymd = tpm_times.y2ymd(kwarg['year']) + * elif "ydd" in kwarg: + */ + goto __pyx_L6; } - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":502 + /* "src/tpm_times.pxi":502 * elif "year" in kwarg: * self._ymd = tpm_times.y2ymd(kwarg['year']) * elif "ydd" in kwarg: # <<<<<<<<<<<<<< * # Must be tuple (integer year, double day) * y,d = kwarg['ydd'] */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__ydd)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_8 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_ydd, __pyx_v_kwarg, Py_EQ)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 502, __pyx_L1_error) + __pyx_t_7 = (__pyx_t_8 != 0); + if (__pyx_t_7) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":504 + /* "src/tpm_times.pxi":504 * elif "ydd" in kwarg: * # Must be tuple (integer year, double day) * y,d = kwarg['ydd'] # <<<<<<<<<<<<<< * self._ymd = tpm_times.ydd2ymd(y,d) * else: */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__ydd)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwarg, __pyx_n_s_ydd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 504, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyTuple_CheckExact(__pyx_t_1) && likely(PyTuple_GET_SIZE(__pyx_t_1) == 2)) { - PyObject* tuple = __pyx_t_1; - __pyx_t_7 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_7); - __pyx_t_6 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_6); + if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { + PyObject* sequence = __pyx_t_1; + Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); + if (unlikely(size != 2)) { + if (size > 2) __Pyx_RaiseTooManyValuesError(2); + else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); + __PYX_ERR(0, 504, __pyx_L1_error) + } + #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS + if (likely(PyTuple_CheckExact(sequence))) { + __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); + __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); + } else { + __pyx_t_5 = PyList_GET_ITEM(sequence, 0); + __pyx_t_9 = PyList_GET_ITEM(sequence, 1); + } + __Pyx_INCREF(__pyx_t_5); + __Pyx_INCREF(__pyx_t_9); + #else + __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 504, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 504, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_y); - __pyx_v_y = __pyx_t_7; - __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_d); - __pyx_v_d = __pyx_t_6; - __pyx_t_6 = 0; } else { - __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); + Py_ssize_t index = -1; + __pyx_t_10 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 504, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_7 = __Pyx_UnpackItem(__pyx_t_4, 0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = __Pyx_UnpackItem(__pyx_t_4, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_EndUnpack(__pyx_t_4, 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_y); - __pyx_v_y = __pyx_t_7; - __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_d); - __pyx_v_d = __pyx_t_6; - __pyx_t_6 = 0; + __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext; + index = 0; __pyx_t_5 = __pyx_t_12(__pyx_t_10); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; + __Pyx_GOTREF(__pyx_t_5); + index = 1; __pyx_t_9 = __pyx_t_12(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L7_unpacking_failed; + __Pyx_GOTREF(__pyx_t_9); + if (__Pyx_IternextUnpackEndCheck(__pyx_t_12(__pyx_t_10), 2) < 0) __PYX_ERR(0, 504, __pyx_L1_error) + __pyx_t_12 = NULL; + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + goto __pyx_L8_unpacking_done; + __pyx_L7_unpacking_failed:; + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_12 = NULL; + if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); + __PYX_ERR(0, 504, __pyx_L1_error) + __pyx_L8_unpacking_done:; } + __pyx_v_y = __pyx_t_5; + __pyx_t_5 = 0; + __pyx_v_d = __pyx_t_9; + __pyx_t_9 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":505 + /* "src/tpm_times.pxi":505 * # Must be tuple (integer year, double day) * y,d = kwarg['ydd'] * self._ymd = tpm_times.ydd2ymd(y,d) # <<<<<<<<<<<<<< * else: * y = kwarg.get('y', 2000) */ - __pyx_t_9 = __Pyx_PyInt_AsInt(__pyx_v_y); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd = ydd2ymd(__pyx_t_9, __pyx_t_8); - goto __pyx_L8; + __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_v_y); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 505, __pyx_L1_error) + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 505, __pyx_L1_error) + __pyx_v_self->_ymd = ydd2ymd(__pyx_t_4, __pyx_t_11); + + /* "src/tpm_times.pxi":502 + * elif "year" in kwarg: + * self._ymd = tpm_times.y2ymd(kwarg['year']) + * elif "ydd" in kwarg: # <<<<<<<<<<<<<< + * # Must be tuple (integer year, double day) + * y,d = kwarg['ydd'] + */ + goto __pyx_L6; } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":507 + /* "src/tpm_times.pxi":507 * self._ymd = tpm_times.ydd2ymd(y,d) * else: * y = kwarg.get('y', 2000) # <<<<<<<<<<<<<< * assert type(y) == type(1), "Year must be an integer." * self._ymd.y = y */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__y), __pyx_int_2000); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwarg, __pyx_n_s_y, __pyx_int_2000); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 507, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_v_y); __pyx_v_y = __pyx_t_1; __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":508 + /* "src/tpm_times.pxi":508 * else: * y = kwarg.get('y', 2000) * assert type(y) == type(1), "Year must be an integer." # <<<<<<<<<<<<<< @@ -4903,43 +7563,40 @@ static int __pyx_pf_5pytpm_3tpm_3YMD_1__init__(PyObject *__pyx_v_self, PyObject * m = kwarg.get('m', 1) */ #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_y)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_5)) { - PyErr_SetObject(PyExc_AssertionError, ((PyObject *)__pyx_kp_s_6)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!Py_OptimizeFlag)) { + __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_y)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 508, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 508, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_7)) { + PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_Year_must_be_an_integer); + __PYX_ERR(0, 508, __pyx_L1_error) + } } #endif - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":509 + /* "src/tpm_times.pxi":509 * y = kwarg.get('y', 2000) * assert type(y) == type(1), "Year must be an integer." * self._ymd.y = y # <<<<<<<<<<<<<< * m = kwarg.get('m', 1) * assert type(m) == type(1), "Month must be an integer." */ - __pyx_t_9 = __Pyx_PyInt_AsInt(__pyx_v_y); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 509; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.y = __pyx_t_9; + __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_v_y); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 509, __pyx_L1_error) + __pyx_v_self->_ymd.y = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":510 + /* "src/tpm_times.pxi":510 * assert type(y) == type(1), "Year must be an integer." * self._ymd.y = y * m = kwarg.get('m', 1) # <<<<<<<<<<<<<< * assert type(m) == type(1), "Month must be an integer." * self._ymd.m = m */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__m), __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwarg, __pyx_n_s_m, __pyx_int_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_v_m); __pyx_v_m = __pyx_t_1; __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":511 + /* "src/tpm_times.pxi":511 * self._ymd.y = y * m = kwarg.get('m', 1) * assert type(m) == type(1), "Month must be an integer." # <<<<<<<<<<<<<< @@ -4947,121 +7604,109 @@ static int __pyx_pf_5pytpm_3tpm_3YMD_1__init__(PyObject *__pyx_v_self, PyObject * self._ymd.dd = kwarg.get('dd',0) */ #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_m)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_5)) { - PyErr_SetObject(PyExc_AssertionError, ((PyObject *)__pyx_kp_s_7)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!Py_OptimizeFlag)) { + __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_m)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 511, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 511, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_7)) { + PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_Month_must_be_an_integer); + __PYX_ERR(0, 511, __pyx_L1_error) + } } #endif - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":512 + /* "src/tpm_times.pxi":512 * m = kwarg.get('m', 1) * assert type(m) == type(1), "Month must be an integer." * self._ymd.m = m # <<<<<<<<<<<<<< * self._ymd.dd = kwarg.get('dd',0) * self._ymd.hms.hh = kwarg.get('hh',0.0) */ - __pyx_t_9 = __Pyx_PyInt_AsInt(__pyx_v_m); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.m = __pyx_t_9; + __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_v_m); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 512, __pyx_L1_error) + __pyx_v_self->_ymd.m = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":513 + /* "src/tpm_times.pxi":513 * assert type(m) == type(1), "Month must be an integer." * self._ymd.m = m * self._ymd.dd = kwarg.get('dd',0) # <<<<<<<<<<<<<< * self._ymd.hms.hh = kwarg.get('hh',0.0) * self._ymd.hms.mm = kwarg.get('mm',0.0) */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__dd), __pyx_int_0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwarg, __pyx_n_s_dd, __pyx_int_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 513, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.dd = __pyx_t_8; + __pyx_v_self->_ymd.dd = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":514 + /* "src/tpm_times.pxi":514 * self._ymd.m = m * self._ymd.dd = kwarg.get('dd',0) * self._ymd.hms.hh = kwarg.get('hh',0.0) # <<<<<<<<<<<<<< * self._ymd.hms.mm = kwarg.get('mm',0.0) * self._ymd.hms.ss = kwarg.get('ss',0.0) */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwarg, __pyx_n_s_hh, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__hh), __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 514, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.hh = __pyx_t_8; + __pyx_v_self->_ymd.hms.hh = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":515 + /* "src/tpm_times.pxi":515 * self._ymd.dd = kwarg.get('dd',0) * self._ymd.hms.hh = kwarg.get('hh',0.0) * self._ymd.hms.mm = kwarg.get('mm',0.0) # <<<<<<<<<<<<<< * self._ymd.hms.ss = kwarg.get('ss',0.0) * */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__mm), __pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwarg, __pyx_n_s_mm, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 515, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.mm = __pyx_t_8; + __pyx_v_self->_ymd.hms.mm = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":516 + /* "src/tpm_times.pxi":516 * self._ymd.hms.hh = kwarg.get('hh',0.0) * self._ymd.hms.mm = kwarg.get('mm',0.0) * self._ymd.hms.ss = kwarg.get('ss',0.0) # <<<<<<<<<<<<<< * * def __gety(self): */ - if (unlikely(__pyx_v_kwarg == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwarg, __pyx_n_s_ss, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwarg), ((PyObject *)__pyx_n_s__ss), __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 516, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.ss = __pyx_t_8; + __pyx_v_self->_ymd.hms.ss = __pyx_t_11; } - __pyx_L8:; + __pyx_L6:; + /* "src/tpm_times.pxi":494 + * self._ymd.hms.ss = 0.0 + * + * def __init__(self,**kwarg): # <<<<<<<<<<<<<< + * for key in kwarg: + * if key not in self.valid_keys: + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("pytpm.tpm.YMD.__init__"); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_10); + __Pyx_AddTraceback("tpm.YMD.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_DECREF(__pyx_v_kwarg); - __Pyx_DECREF(__pyx_v_key); - __Pyx_DECREF(__pyx_v_y); - __Pyx_DECREF(__pyx_v_d); - __Pyx_DECREF(__pyx_v_m); + __Pyx_XDECREF(__pyx_v_key); + __Pyx_XDECREF(__pyx_v_y); + __Pyx_XDECREF(__pyx_v_d); + __Pyx_XDECREF(__pyx_v_m); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":518 +/* "src/tpm_times.pxi":518 * self._ymd.hms.ss = kwarg.get('ss',0.0) * * def __gety(self): # <<<<<<<<<<<<<< @@ -5069,13 +7714,29 @@ static int __pyx_pf_5pytpm_3tpm_3YMD_1__init__(PyObject *__pyx_v_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_2__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_2__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_5__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_5__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gety (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_4__gety(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_4__gety(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gety"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gety", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":519 + /* "src/tpm_times.pxi":519 * * def __gety(self): * return self._ymd.y # <<<<<<<<<<<<<< @@ -5083,17 +7744,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_2__gety(PyObject *__pyx_v_self, CYTHO * def __sety(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyInt_FromLong(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.y); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->_ymd.y); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":518 + * self._ymd.hms.ss = kwarg.get('ss',0.0) + * + * def __gety(self): # <<<<<<<<<<<<<< + * return self._ymd.y + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__gety"); + __Pyx_AddTraceback("tpm.YMD.__gety", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5101,7 +7769,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_2__gety(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":521 +/* "src/tpm_times.pxi":521 * return self._ymd.y * * def __sety(self,value): # <<<<<<<<<<<<<< @@ -5109,15 +7777,31 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_2__gety(PyObject *__pyx_v_self, CYTHO * self._ymd.y = value */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_3__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_3__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_7__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_7__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sety (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_6__sety(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_6__sety(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; int __pyx_t_3; - __Pyx_RefNannySetupContext("__sety"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sety", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":522 + /* "src/tpm_times.pxi":522 * * def __sety(self,value): * assert type(value) == type(1), "Year must be an integer." # <<<<<<<<<<<<<< @@ -5125,31 +7809,41 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_3__sety(PyObject *__pyx_v_self, PyObj * */ #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_value)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetObject(PyExc_AssertionError, ((PyObject *)__pyx_kp_s_6)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!Py_OptimizeFlag)) { + __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_value)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 522, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 522, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_2)) { + PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_Year_must_be_an_integer); + __PYX_ERR(0, 522, __pyx_L1_error) + } } #endif - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":523 + /* "src/tpm_times.pxi":523 * def __sety(self,value): * assert type(value) == type(1), "Year must be an integer." * self._ymd.y = value # <<<<<<<<<<<<<< * * y = property(__gety, __sety,doc="Year as an integer.") */ - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_value); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.y = __pyx_t_3; + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_value); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 523, __pyx_L1_error) + __pyx_v_self->_ymd.y = __pyx_t_3; + + /* "src/tpm_times.pxi":521 + * return self._ymd.y + * + * def __sety(self,value): # <<<<<<<<<<<<<< + * assert type(value) == type(1), "Year must be an integer." + * self._ymd.y = value + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__sety"); + __Pyx_AddTraceback("tpm.YMD.__sety", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5157,7 +7851,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_3__sety(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":527 +/* "src/tpm_times.pxi":527 * y = property(__gety, __sety,doc="Year as an integer.") * * def __getm(self): # <<<<<<<<<<<<<< @@ -5165,13 +7859,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_3__sety(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_4__getm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_4__getm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_9__getm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_9__getm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_8__getm(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_8__getm(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":528 + /* "src/tpm_times.pxi":528 * * def __getm(self): * return self._ymd.m # <<<<<<<<<<<<<< @@ -5179,17 +7889,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_4__getm(PyObject *__pyx_v_self, CYTHO * def __setm(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyInt_FromLong(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.m); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->_ymd.m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":527 + * y = property(__gety, __sety,doc="Year as an integer.") + * + * def __getm(self): # <<<<<<<<<<<<<< + * return self._ymd.m + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__getm"); + __Pyx_AddTraceback("tpm.YMD.__getm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5197,7 +7914,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_4__getm(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":530 +/* "src/tpm_times.pxi":530 * return self._ymd.m * * def __setm(self,value): # <<<<<<<<<<<<<< @@ -5205,15 +7922,31 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_4__getm(PyObject *__pyx_v_self, CYTHO * self._ymd.m = value */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_5__setm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_5__setm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_11__setm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_11__setm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_10__setm(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_10__setm(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; int __pyx_t_3; - __Pyx_RefNannySetupContext("__setm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":531 + /* "src/tpm_times.pxi":531 * * def __setm(self,value): * assert type(value) == type(1), "Month must be an integer." # <<<<<<<<<<<<<< @@ -5221,31 +7954,41 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_5__setm(PyObject *__pyx_v_self, PyObj * */ #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_value)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetObject(PyExc_AssertionError, ((PyObject *)__pyx_kp_s_7)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!Py_OptimizeFlag)) { + __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_value)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 531, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(0, 531, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_2)) { + PyErr_SetObject(PyExc_AssertionError, __pyx_kp_s_Month_must_be_an_integer); + __PYX_ERR(0, 531, __pyx_L1_error) + } } #endif - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":532 + /* "src/tpm_times.pxi":532 * def __setm(self,value): * assert type(value) == type(1), "Month must be an integer." * self._ymd.m = value # <<<<<<<<<<<<<< * * m = property(__getm, __setm,doc="Month as an integer.") */ - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_value); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.m = __pyx_t_3; + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_value); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 532, __pyx_L1_error) + __pyx_v_self->_ymd.m = __pyx_t_3; + + /* "src/tpm_times.pxi":530 + * return self._ymd.m + * + * def __setm(self,value): # <<<<<<<<<<<<<< + * assert type(value) == type(1), "Month must be an integer." + * self._ymd.m = value + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__setm"); + __Pyx_AddTraceback("tpm.YMD.__setm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5253,7 +7996,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_5__setm(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":536 +/* "src/tpm_times.pxi":536 * m = property(__getm, __setm,doc="Month as an integer.") * * def __getdd(self): # <<<<<<<<<<<<<< @@ -5261,13 +8004,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_5__setm(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_6__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_6__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_13__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_13__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_12__getdd(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_12__getdd(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdd"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":537 + /* "src/tpm_times.pxi":537 * * def __getdd(self): * return self._ymd.dd # <<<<<<<<<<<<<< @@ -5275,17 +8034,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_6__getdd(PyObject *__pyx_v_self, CYTH * def __setdd(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_ymd.dd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 537, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; + /* "src/tpm_times.pxi":536 + * m = property(__getm, __setm,doc="Month as an integer.") + * + * def __getdd(self): # <<<<<<<<<<<<<< + * return self._ymd.dd + * + */ + + /* function exit code */ + __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__getdd"); + __Pyx_AddTraceback("tpm.YMD.__getdd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5293,7 +8059,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_6__getdd(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":539 +/* "src/tpm_times.pxi":539 * return self._ymd.dd * * def __setdd(self,value): # <<<<<<<<<<<<<< @@ -5301,26 +8067,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_6__getdd(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_7__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_7__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_15__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_15__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_14__setdd(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_14__setdd(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setdd"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":540 + /* "src/tpm_times.pxi":540 * * def __setdd(self,value): * self._ymd.dd = value # <<<<<<<<<<<<<< * * dd = property(__getdd, __setdd,doc="Day as a float.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.dd = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 540, __pyx_L1_error) + __pyx_v_self->_ymd.dd = __pyx_t_1; + + /* "src/tpm_times.pxi":539 + * return self._ymd.dd + * + * def __setdd(self,value): # <<<<<<<<<<<<<< + * self._ymd.dd = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.YMD.__setdd"); + __Pyx_AddTraceback("tpm.YMD.__setdd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5328,7 +8119,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_7__setdd(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":544 +/* "src/tpm_times.pxi":544 * dd = property(__getdd, __setdd,doc="Day as a float.") * * def __gethh(self): # <<<<<<<<<<<<<< @@ -5336,13 +8127,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_7__setdd(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_8__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_8__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_17__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_17__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gethh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_16__gethh(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_16__gethh(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gethh"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gethh", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":545 + /* "src/tpm_times.pxi":545 * * def __gethh(self): * return self._ymd.hms.hh # <<<<<<<<<<<<<< @@ -5350,17 +8157,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_8__gethh(PyObject *__pyx_v_self, CYTH * def __sethh(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_ymd.hms.hh); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 545, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":544 + * dd = property(__getdd, __setdd,doc="Day as a float.") + * + * def __gethh(self): # <<<<<<<<<<<<<< + * return self._ymd.hms.hh + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__gethh"); + __Pyx_AddTraceback("tpm.YMD.__gethh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5368,7 +8182,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_8__gethh(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":547 +/* "src/tpm_times.pxi":547 * return self._ymd.hms.hh * * def __sethh(self,value): # <<<<<<<<<<<<<< @@ -5376,26 +8190,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_8__gethh(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_9__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_9__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_19__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_19__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sethh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_18__sethh(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_18__sethh(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__sethh"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sethh", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":548 + /* "src/tpm_times.pxi":548 * * def __sethh(self,value): * self._ymd.hms.hh = value # <<<<<<<<<<<<<< * * hh = property(__gethh, __sethh,doc="Hours as a float.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 548; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.hh = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 548, __pyx_L1_error) + __pyx_v_self->_ymd.hms.hh = __pyx_t_1; + + /* "src/tpm_times.pxi":547 + * return self._ymd.hms.hh + * + * def __sethh(self,value): # <<<<<<<<<<<<<< + * self._ymd.hms.hh = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.YMD.__sethh"); + __Pyx_AddTraceback("tpm.YMD.__sethh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5403,7 +8242,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_9__sethh(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":552 +/* "src/tpm_times.pxi":552 * hh = property(__gethh, __sethh,doc="Hours as a float.") * * def __getmm(self): # <<<<<<<<<<<<<< @@ -5411,13 +8250,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_9__sethh(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_10__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_10__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_21__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_21__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_20__getmm(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_20__getmm(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":553 + /* "src/tpm_times.pxi":553 * * def __getmm(self): * return self._ymd.hms.mm # <<<<<<<<<<<<<< @@ -5425,17 +8280,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_10__getmm(PyObject *__pyx_v_self, CYT * def __setmm(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_ymd.hms.mm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":552 + * hh = property(__gethh, __sethh,doc="Hours as a float.") + * + * def __getmm(self): # <<<<<<<<<<<<<< + * return self._ymd.hms.mm + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__getmm"); + __Pyx_AddTraceback("tpm.YMD.__getmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5443,7 +8305,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_10__getmm(PyObject *__pyx_v_self, CYT return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":555 +/* "src/tpm_times.pxi":555 * return self._ymd.hms.mm * * def __setmm(self,value): # <<<<<<<<<<<<<< @@ -5451,26 +8313,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_10__getmm(PyObject *__pyx_v_self, CYT * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_11__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_11__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_23__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_23__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_22__setmm(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_22__setmm(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":556 + /* "src/tpm_times.pxi":556 * * def __setmm(self,value): * self._ymd.hms.mm = value # <<<<<<<<<<<<<< * * mm = property(__getmm, __setmm,doc="Minutes as a float.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.mm = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 556, __pyx_L1_error) + __pyx_v_self->_ymd.hms.mm = __pyx_t_1; + + /* "src/tpm_times.pxi":555 + * return self._ymd.hms.mm + * + * def __setmm(self,value): # <<<<<<<<<<<<<< + * self._ymd.hms.mm = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.YMD.__setmm"); + __Pyx_AddTraceback("tpm.YMD.__setmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5478,7 +8365,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_11__setmm(PyObject *__pyx_v_self, PyO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":560 +/* "src/tpm_times.pxi":560 * mm = property(__getmm, __setmm,doc="Minutes as a float.") * * def __getss(self): # <<<<<<<<<<<<<< @@ -5486,13 +8373,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_11__setmm(PyObject *__pyx_v_self, PyO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_12__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_12__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_25__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_25__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_24__getss(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_24__getss(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":561 + /* "src/tpm_times.pxi":561 * * def __getss(self): * return self._ymd.hms.ss # <<<<<<<<<<<<<< @@ -5500,17 +8403,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_12__getss(PyObject *__pyx_v_self, CYT * def __setss(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 561; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_ymd.hms.ss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":560 + * mm = property(__getmm, __setmm,doc="Minutes as a float.") + * + * def __getss(self): # <<<<<<<<<<<<<< + * return self._ymd.hms.ss + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.__getss"); + __Pyx_AddTraceback("tpm.YMD.__getss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5518,7 +8428,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_12__getss(PyObject *__pyx_v_self, CYT return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":563 +/* "src/tpm_times.pxi":563 * return self._ymd.hms.ss * * def __setss(self,value): # <<<<<<<<<<<<<< @@ -5526,26 +8436,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_12__getss(PyObject *__pyx_v_self, CYT * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_13__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_13__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_27__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_27__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_26__setss(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_26__setss(struct __pyx_obj_3tpm_YMD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":564 + /* "src/tpm_times.pxi":564 * * def __setss(self,value): * self._ymd.hms.ss = value # <<<<<<<<<<<<<< * * ss = property(__getss, __setss,doc="Seconds as a float.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd.hms.ss = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 564, __pyx_L1_error) + __pyx_v_self->_ymd.hms.ss = __pyx_t_1; + + /* "src/tpm_times.pxi":563 + * return self._ymd.hms.ss + * + * def __setss(self,value): # <<<<<<<<<<<<<< + * self._ymd.hms.ss = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.YMD.__setss"); + __Pyx_AddTraceback("tpm.YMD.__setss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5553,7 +8488,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_13__setss(PyObject *__pyx_v_self, PyO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":568 +/* "src/tpm_times.pxi":568 * ss = property(__getss, __setss,doc="Seconds as a float.") * * def __repr__(self): # <<<<<<<<<<<<<< @@ -5561,61 +8496,75 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_13__setss(PyObject *__pyx_v_self, PyO * mm=self.mm, ss=self.ss) */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_14__repr__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_14__repr__(PyObject *__pyx_v_self) { - PyObject *__pyx_v_ymd; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_29__repr__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_29__repr__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_28__repr__(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_28__repr__(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { + PyObject *__pyx_v_ymd = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_v_ymd = ((PyObject*)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__repr__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":569 + /* "src/tpm_times.pxi":569 * * def __repr__(self): * ymd = dict(y=self.y, m=self.m, dd=self.dd, hh=self.hh, # <<<<<<<<<<<<<< * mm=self.mm, ss=self.ss) * return repr(ymd) */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__y); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 569, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_y); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__y), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_y, __pyx_t_2) < 0) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__m); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_m); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__m), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_m, __pyx_t_2) < 0) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_dd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__dd), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dd, __pyx_t_2) < 0) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_hh); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__hh), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_hh, __pyx_t_2) < 0) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":570 + /* "src/tpm_times.pxi":570 * def __repr__(self): * ymd = dict(y=self.y, m=self.m, dd=self.dd, hh=self.hh, * mm=self.mm, ss=self.ss) # <<<<<<<<<<<<<< * return repr(ymd) * */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 570; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 570, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__mm), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_mm, __pyx_t_2) < 0) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 570; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 570, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__ss), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ss, __pyx_t_2) < 0) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_ymd)); - __pyx_v_ymd = __pyx_t_1; + __pyx_v_ymd = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":571 + /* "src/tpm_times.pxi":571 * ymd = dict(y=self.y, m=self.m, dd=self.dd, hh=self.hh, * mm=self.mm, ss=self.ss) * return repr(ymd) # <<<<<<<<<<<<<< @@ -5623,27 +8572,34 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_14__repr__(PyObject *__pyx_v_self) { * def __str__(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_Repr(((PyObject *)__pyx_v_ymd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 571; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyObject_Repr(__pyx_v_ymd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 571, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":568 + * ss = property(__getss, __setss,doc="Seconds as a float.") + * + * def __repr__(self): # <<<<<<<<<<<<<< + * ymd = dict(y=self.y, m=self.m, dd=self.dd, hh=self.hh, + * mm=self.mm, ss=self.ss) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.YMD.__repr__"); + __Pyx_AddTraceback("tpm.YMD.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_ymd); + __Pyx_XDECREF(__pyx_v_ymd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":573 +/* "src/tpm_times.pxi":573 * return repr(ymd) * * def __str__(self): # <<<<<<<<<<<<<< @@ -5651,24 +8607,40 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_14__repr__(PyObject *__pyx_v_self) { * ymd = tpm_times.ymd2ymd(self._ymd) */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_15__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_15__str__(PyObject *__pyx_v_self) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_31__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_31__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_30__str__(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_30__str__(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { YMD __pyx_v_ymd; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":575 + /* "src/tpm_times.pxi":575 * def __str__(self): * cdef tpm_times.YMD ymd * ymd = tpm_times.ymd2ymd(self._ymd) # <<<<<<<<<<<<<< * return tpm_times.fmt_ymd(ymd).decode("utf-8") * */ - __pyx_v_ymd = ymd2ymd(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd); + __pyx_v_ymd = ymd2ymd(__pyx_v_self->_ymd); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":576 + /* "src/tpm_times.pxi":576 * cdef tpm_times.YMD ymd * ymd = tpm_times.ymd2ymd(self._ymd) * return tpm_times.fmt_ymd(ymd).decode("utf-8") # <<<<<<<<<<<<<< @@ -5677,18 +8649,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_15__str__(PyObject *__pyx_v_self) { */ __Pyx_XDECREF(__pyx_r); __pyx_t_1 = fmt_ymd(__pyx_v_ymd); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 576, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":573 + * return repr(ymd) + * + * def __str__(self): # <<<<<<<<<<<<<< + * cdef tpm_times.YMD ymd + * ymd = tpm_times.ymd2ymd(self._ymd) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.YMD.__str__"); + __Pyx_AddTraceback("tpm.YMD.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -5696,7 +8675,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_15__str__(PyObject *__pyx_v_self) { return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":578 +/* "src/tpm_times.pxi":578 * return tpm_times.fmt_ymd(ymd).decode("utf-8") * * def __sub__(self, other): # <<<<<<<<<<<<<< @@ -5704,172 +8683,190 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_15__str__(PyObject *__pyx_v_self) { * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_16__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_16__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_ymd; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_33__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_33__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_32__sub__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_32__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_ymd = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_ymd = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":581 + /* "src/tpm_times.pxi":581 * # Cython does not have __rdd__ and the first parameter may not * # be this object * if isinstance(self, YMD) and isinstance(other, YMD): # <<<<<<<<<<<<<< * # return a new HMS object * ymd = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_YMD)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_YMD); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_YMD)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_YMD); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":583 + /* "src/tpm_times.pxi":583 * if isinstance(self, YMD) and isinstance(other, YMD): * # return a new HMS object * ymd = self.__class__() # <<<<<<<<<<<<<< * ymd.y = self.y - other.y * ymd.m = self.m - other.m */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 583; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 583; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_ymd); - __pyx_v_ymd = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 583, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 583, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_ymd = __pyx_t_4; + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":584 + /* "src/tpm_times.pxi":584 * # return a new HMS object * ymd = self.__class__() * ymd.y = self.y - other.y # <<<<<<<<<<<<<< * ymd.m = self.m - other.m * ymd.dd = self.dd - other.dd */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__y); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__y); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_y); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 584, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_y); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 584, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_ymd, __pyx_n_s__y, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_ymd, __pyx_n_s_y, __pyx_t_6) < 0) __PYX_ERR(0, 584, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":585 + /* "src/tpm_times.pxi":585 * ymd = self.__class__() * ymd.y = self.y - other.y * ymd.m = self.m - other.m # <<<<<<<<<<<<<< * ymd.dd = self.dd - other.dd * ymd.hh = self.hh - other.hh */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__m); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__m); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 585, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 585, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_ymd, __pyx_n_s__m, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_ymd, __pyx_n_s_m, __pyx_t_4) < 0) __PYX_ERR(0, 585, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":586 + /* "src/tpm_times.pxi":586 * ymd.y = self.y - other.y * ymd.m = self.m - other.m * ymd.dd = self.dd - other.dd # <<<<<<<<<<<<<< * ymd.hh = self.hh - other.hh * ymd.mm = self.mm - other.mm */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 586, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dd); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 586, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 586, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_ymd, __pyx_n_s__dd, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_ymd, __pyx_n_s_dd, __pyx_t_6) < 0) __PYX_ERR(0, 586, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":587 + /* "src/tpm_times.pxi":587 * ymd.m = self.m - other.m * ymd.dd = self.dd - other.dd * ymd.hh = self.hh - other.hh # <<<<<<<<<<<<<< * ymd.mm = self.mm - other.mm * ymd.ss = self.ss - other.ss */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_hh); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_hh); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 587, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 587, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_ymd, __pyx_n_s__hh, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_ymd, __pyx_n_s_hh, __pyx_t_4) < 0) __PYX_ERR(0, 587, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":588 + /* "src/tpm_times.pxi":588 * ymd.dd = self.dd - other.dd * ymd.hh = self.hh - other.hh * ymd.mm = self.mm - other.mm # <<<<<<<<<<<<<< * ymd.ss = self.ss - other.ss * return ymd */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 588; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 588; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 588; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 588, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 588, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_ymd, __pyx_n_s__mm, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 588; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_ymd, __pyx_n_s_mm, __pyx_t_6) < 0) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":589 + /* "src/tpm_times.pxi":589 * ymd.hh = self.hh - other.hh * ymd.mm = self.mm - other.mm * ymd.ss = self.ss - other.ss # <<<<<<<<<<<<<< * return ymd * else: */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 589; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 589; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 589; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 589, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 589, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_ymd, __pyx_n_s__ss, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 589; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_ymd, __pyx_n_s_ss, __pyx_t_4) < 0) __PYX_ERR(0, 589, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":590 + /* "src/tpm_times.pxi":590 * ymd.mm = self.mm - other.mm * ymd.ss = self.ss - other.ss * return ymd # <<<<<<<<<<<<<< @@ -5880,38 +8877,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_16__sub__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(__pyx_v_ymd); __pyx_r = __pyx_v_ymd; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":581 + * # Cython does not have __rdd__ and the first parameter may not + * # be this object + * if isinstance(self, YMD) and isinstance(other, YMD): # <<<<<<<<<<<<<< + * # return a new HMS object + * ymd = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":592 + /* "src/tpm_times.pxi":592 * return ymd * else: * raise TypeError, "Can only subtract two YMD values." # <<<<<<<<<<<<<< * * def normalize(self): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_8), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 592; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_subtract_two_YMD_values, 0, 0); + __PYX_ERR(0, 592, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":578 + * return tpm_times.fmt_ymd(ymd).decode("utf-8") + * + * def __sub__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __rdd__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.YMD.__sub__"); + __Pyx_AddTraceback("tpm.YMD.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_ymd); + __Pyx_XDECREF(__pyx_v_ymd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":594 +/* "src/tpm_times.pxi":594 * raise TypeError, "Can only subtract two YMD values." * * def normalize(self): # <<<<<<<<<<<<<< @@ -5919,28 +8929,50 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_16__sub__(PyObject *__pyx_v_self, PyO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_17normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3YMD_17normalize[] = "Normalize YMD.\n\n The components `y`, `m`, `dd`, `hh`, `mm` and `ss` are\n normalized into their proper ranges.\n\n Examples\n --------\n >>> ymd = tpm.YMD(y=2010,m=3,dd=12.5,hh=12.25)\n >>> ymd\n {'mm': 0.0, 'dd': 12.5, 'm': 3, 'ss': 0.0, 'hh': 12.25, 'y': 2010}\n >>> ymd.normalize()\n >>> ymd\n {'mm': 14.0, 'dd': 13.0, 'm': 3, 'ss': 59.999986588954926, 'hh': 0.0, 'y': 2010}\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_17normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_35normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3YMD_34normalize[] = "Normalize YMD.\n\n The components `y`, `m`, `dd`, `hh`, `mm` and `ss` are\n normalized into their proper ranges.\n\n Examples\n --------\n >>> ymd = tpm.YMD(y=2010,m=3,dd=12.5,hh=12.25)\n >>> ymd\n {'mm': 0.0, 'dd': 12.5, 'm': 3, 'ss': 0.0, 'hh': 12.25, 'y': 2010}\n >>> ymd.normalize()\n >>> ymd\n {'mm': 14.0, 'dd': 13.0, 'm': 3, 'ss': 59.999986588954926, 'hh': 0.0, 'y': 2010}\n\n "; +static PyObject *__pyx_pw_3tpm_3YMD_35normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_34normalize(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_34normalize(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("normalize"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":610 + /* "src/tpm_times.pxi":610 * * """ * self._ymd = tpm_times.ymd2ymd(self._ymd) # <<<<<<<<<<<<<< * * def to_jd(self): */ - ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd = ymd2ymd(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd); + __pyx_v_self->_ymd = ymd2ymd(__pyx_v_self->_ymd); + + /* "src/tpm_times.pxi":594 + * raise TypeError, "Can only subtract two YMD values." + * + * def normalize(self): # <<<<<<<<<<<<<< + * """Normalize YMD. + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":612 +/* "src/tpm_times.pxi":612 * self._ymd = tpm_times.ymd2ymd(self._ymd) * * def to_jd(self): # <<<<<<<<<<<<<< @@ -5948,39 +8980,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_17normalize(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_18to_jd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3YMD_18to_jd[] = "Convert into a tpm.JD object.\n\n Returns\n -------\n jd : tpm.JD\n Contains Julian date corresponding to the Calendar date.\n\n Examples\n --------\n >>> j = tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_jd()\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.0, 'hh': 0.0}\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_18to_jd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_37to_jd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3YMD_36to_jd[] = "Convert into a tpm.JD object.\n\n Returns\n -------\n jd : tpm.JD\n Contains Julian date corresponding to the Calendar date.\n\n Examples\n --------\n >>> j = tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_jd()\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.0, 'hh': 0.0}\n\n "; +static PyObject *__pyx_pw_3tpm_3YMD_37to_jd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_jd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_36to_jd(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_36to_jd(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { JD __pyx_v__jd; - struct __pyx_obj_5pytpm_3tpm_JD *__pyx_v_jd; + struct __pyx_obj_3tpm_JD *__pyx_v_jd = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_jd"); - __pyx_v_jd = ((struct __pyx_obj_5pytpm_3tpm_JD *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_jd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":628 + /* "src/tpm_times.pxi":628 * """ * cdef tpm_times.JD _jd * _jd = tpm_times.ymd2jd(self._ymd) # <<<<<<<<<<<<<< * jd = JD() * jd._jd = _jd */ - __pyx_v__jd = ymd2jd(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd); + __pyx_v__jd = ymd2jd(__pyx_v_self->_ymd); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":629 + /* "src/tpm_times.pxi":629 * cdef tpm_times.JD _jd * _jd = tpm_times.ymd2jd(self._ymd) * jd = JD() # <<<<<<<<<<<<<< * jd._jd = _jd * return jd */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_JD)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_JD)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_jd)); - __pyx_v_jd = ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_t_1); + __pyx_v_jd = ((struct __pyx_obj_3tpm_JD *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":630 + /* "src/tpm_times.pxi":630 * _jd = tpm_times.ymd2jd(self._ymd) * jd = JD() * jd._jd = _jd # <<<<<<<<<<<<<< @@ -5989,7 +9035,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_18to_jd(PyObject *__pyx_v_self, CYTHO */ __pyx_v_jd->_jd = __pyx_v__jd; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":631 + /* "src/tpm_times.pxi":631 * jd = JD() * jd._jd = _jd * return jd # <<<<<<<<<<<<<< @@ -6001,20 +9047,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_18to_jd(PyObject *__pyx_v_self, CYTHO __pyx_r = ((PyObject *)__pyx_v_jd); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":612 + * self._ymd = tpm_times.ymd2ymd(self._ymd) + * + * def to_jd(self): # <<<<<<<<<<<<<< + * """Convert into a tpm.JD object. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.to_jd"); + __Pyx_AddTraceback("tpm.YMD.to_jd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_jd); + __Pyx_XDECREF((PyObject *)__pyx_v_jd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":633 +/* "src/tpm_times.pxi":633 * return jd * * def to_j(self): # <<<<<<<<<<<<<< @@ -6022,14 +9075,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_18to_jd(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_19to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3YMD_19to_j[] = "Convert YMD into scalar Julian date.\n\n Returns\n -------\n jd : float\n The Julian date corresponding to the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_j()\n 2451545.0\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_19to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_39to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3YMD_38to_j[] = "Convert YMD into scalar Julian date.\n\n Returns\n -------\n jd : float\n The Julian date corresponding to the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_j()\n 2451545.0\n\n "; +static PyObject *__pyx_pw_3tpm_3YMD_39to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_j (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_38to_j(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_38to_j(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_j"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_j", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":647 + /* "src/tpm_times.pxi":647 * * """ * return tpm_times.ymd2j(self._ymd) # <<<<<<<<<<<<<< @@ -6037,17 +9106,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_19to_j(PyObject *__pyx_v_self, CYTHON * def raw_str(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(ymd2j(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 647; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(ymd2j(__pyx_v_self->_ymd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":633 + * return jd + * + * def to_j(self): # <<<<<<<<<<<<<< + * """Convert YMD into scalar Julian date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.to_j"); + __Pyx_AddTraceback("tpm.YMD.to_j", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6055,7 +9131,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_19to_j(PyObject *__pyx_v_self, CYTHON return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":649 +/* "src/tpm_times.pxi":649 * return tpm_times.ymd2j(self._ymd) * * def raw_str(self): # <<<<<<<<<<<<<< @@ -6063,15 +9139,31 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_19to_j(PyObject *__pyx_v_self, CYTHON * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_20raw_str(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3YMD_20raw_str[] = "A string representation in the 'raw' format.\n\n Returns\n -------\n s : str\n A \"raw\" representation of the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).raw_str()\n '2000 1 1 12 0 0'\n >>> tpm.YMD(y=2000,m=6,dd=1.34,hh=12.0,mm=12.678).raw_str()\n '2000 6 1.34 12 12.678 0'\n\n Printing or converting to str gives a nicely formatted string\n representation.\n\n >>> ymd = tpm.YMD(y=2000,m=1,dd=1,hh=12.0)\n >>> print ymd\n --> print(ymd)\n Sat Jan 1 12:00:00.000 2000\n >>> str(ymd)\n 'Sat Jan 1 12:00:00.000 2000'\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_20raw_str(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_41raw_str(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3YMD_40raw_str[] = "A string representation in the 'raw' format.\n\n Returns\n -------\n s : str\n A \"raw\" representation of the Calendar date-time.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).raw_str()\n '2000 1 1 12 0 0'\n >>> tpm.YMD(y=2000,m=6,dd=1.34,hh=12.0,mm=12.678).raw_str()\n '2000 6 1.34 12 12.678 0'\n\n Printing or converting to str gives a nicely formatted string\n representation.\n\n >>> ymd = tpm.YMD(y=2000,m=1,dd=1,hh=12.0)\n >>> print ymd\n --> print(ymd)\n Sat Jan 1 12:00:00.000 2000\n >>> str(ymd)\n 'Sat Jan 1 12:00:00.000 2000'\n\n "; +static PyObject *__pyx_pw_3tpm_3YMD_41raw_str(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("raw_str (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_40raw_str(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_40raw_str(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("raw_str"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("raw_str", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":675 + /* "src/tpm_times.pxi":675 * * """ * return tpm_times.fmt_ymd_raw(self._ymd).decode("utf-8") # <<<<<<<<<<<<<< @@ -6079,27 +9171,34 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_20raw_str(PyObject *__pyx_v_self, CYT * def doy(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = fmt_ymd_raw(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 675; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_1 = fmt_ymd_raw(__pyx_v_self->_ymd); + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 675, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.YMD.raw_str"); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); + /* "src/tpm_times.pxi":649 + * return tpm_times.ymd2j(self._ymd) + * + * def raw_str(self): # <<<<<<<<<<<<<< + * """A string representation in the 'raw' format. + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_2); + __Pyx_AddTraceback("tpm.YMD.raw_str", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":677 +/* "src/tpm_times.pxi":677 * return tpm_times.fmt_ymd_raw(self._ymd).decode("utf-8") * * def doy(self): # <<<<<<<<<<<<<< @@ -6107,14 +9206,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_20raw_str(PyObject *__pyx_v_self, CYT * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_21doy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3YMD_21doy[] = "Day of the year corresponding to the date-time.\n\n Returns\n -------\n doy : float\n Day of the year.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).doy()\n 1.5\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.5).doy()\n 1.5208333334885538\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_21doy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_43doy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3YMD_42doy[] = "Day of the year corresponding to the date-time.\n\n Returns\n -------\n doy : float\n Day of the year.\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).doy()\n 1.5\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.5).doy()\n 1.5208333334885538\n\n "; +static PyObject *__pyx_pw_3tpm_3YMD_43doy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("doy (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_42doy(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_42doy(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("doy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("doy", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":693 + /* "src/tpm_times.pxi":693 * * """ * return tpm_times.ymd2dd(self._ymd) # <<<<<<<<<<<<<< @@ -6122,17 +9237,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_21doy(PyObject *__pyx_v_self, CYTHON_ * def to_year(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(ymd2dd(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 693; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(ymd2dd(__pyx_v_self->_ymd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 693, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":677 + * return tpm_times.fmt_ymd_raw(self._ymd).decode("utf-8") + * + * def doy(self): # <<<<<<<<<<<<<< + * """Day of the year corresponding to the date-time. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.doy"); + __Pyx_AddTraceback("tpm.YMD.doy", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6140,7 +9262,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_21doy(PyObject *__pyx_v_self, CYTHON_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":695 +/* "src/tpm_times.pxi":695 * return tpm_times.ymd2dd(self._ymd) * * def to_year(self): # <<<<<<<<<<<<<< @@ -6148,14 +9270,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_21doy(PyObject *__pyx_v_self, CYTHON_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_22to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3YMD_22to_year[] = "Convert date-time into a year number.\n\n Returns\n -------\n year : float\n Year number, i.e., year + (day / num. days).\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1).to_year()\n 2000.0027322404371\n >>> 2000+(1/366.0)\n 2000.0027322404371\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_year()\n 2000.0040983606557\n >>> 2000+(1/366.0+12/(24.0*366.0))\n 2000.0040983606557\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_22to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_45to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3YMD_44to_year[] = "Convert date-time into a year number.\n\n Returns\n -------\n year : float\n Year number, i.e., year + (day / num. days).\n\n Examples\n --------\n >>> tpm.YMD(y=2000,m=1,dd=1).to_year()\n 2000.0027322404371\n >>> 2000+(1/366.0)\n 2000.0027322404371\n >>> tpm.YMD(y=2000,m=1,dd=1,hh=12.0).to_year()\n 2000.0040983606557\n >>> 2000+(1/366.0+12/(24.0*366.0))\n 2000.0040983606557\n\n "; +static PyObject *__pyx_pw_3tpm_3YMD_45to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_year (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_44to_year(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_44to_year(struct __pyx_obj_3tpm_YMD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_year"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_year", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":715 + /* "src/tpm_times.pxi":715 * * """ * return tpm_times.ymd2y(self._ymd) # <<<<<<<<<<<<<< @@ -6163,17 +9301,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_22to_year(PyObject *__pyx_v_self, CYT * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(ymd2y(((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_v_self)->_ymd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 715; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(ymd2y(__pyx_v_self->_ymd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":695 + * return tpm_times.ymd2dd(self._ymd) + * + * def to_year(self): # <<<<<<<<<<<<<< + * """Convert date-time into a year number. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.YMD.to_year"); + __Pyx_AddTraceback("tpm.YMD.to_year", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6181,7 +9326,120 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_22to_year(PyObject *__pyx_v_self, CYT return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":758 +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_47__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_47__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_46__reduce_cython__(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_46__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_YMD *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.YMD.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3YMD_49__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_3YMD_49__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3YMD_48__setstate_cython__(((struct __pyx_obj_3tpm_YMD *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3YMD_48__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_YMD *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.YMD.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_times.pxi":758 * valid_keys = ('j', 'year', 'dd', 'hh', 'mm', 'ss') * cdef tpm_times.JD _jd * def __cinit__(self): # <<<<<<<<<<<<<< @@ -6189,56 +9447,78 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3YMD_22to_year(PyObject *__pyx_v_self, CYT * self._jd.hms.hh = 0.0 */ -static int __pyx_pf_5pytpm_3tpm_2JD___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2JD___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2JD_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2JD_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_2JD___cinit__(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":759 + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2JD___cinit__(struct __pyx_obj_3tpm_JD *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__", 0); + + /* "src/tpm_times.pxi":759 * cdef tpm_times.JD _jd * def __cinit__(self): * self._jd.dd = 2451545.5 # <<<<<<<<<<<<<< * self._jd.hms.hh = 0.0 * self._jd.hms.mm = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.dd = 2451545.5; + __pyx_v_self->_jd.dd = 2451545.5; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":760 + /* "src/tpm_times.pxi":760 * def __cinit__(self): * self._jd.dd = 2451545.5 * self._jd.hms.hh = 0.0 # <<<<<<<<<<<<<< * self._jd.hms.mm = 0.0 * self._jd.hms.ss = 0.0 */ - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.hh = 0.0; + __pyx_v_self->_jd.hms.hh = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":761 + /* "src/tpm_times.pxi":761 * self._jd.dd = 2451545.5 * self._jd.hms.hh = 0.0 * self._jd.hms.mm = 0.0 # <<<<<<<<<<<<<< * self._jd.hms.ss = 0.0 * */ - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.mm = 0.0; + __pyx_v_self->_jd.hms.mm = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":762 + /* "src/tpm_times.pxi":762 * self._jd.hms.hh = 0.0 * self._jd.hms.mm = 0.0 * self._jd.hms.ss = 0.0 # <<<<<<<<<<<<<< * * def __init__(self, **kwargs): */ - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.ss = 0.0; + __pyx_v_self->_jd.hms.ss = 0.0; + + /* "src/tpm_times.pxi":758 + * valid_keys = ('j', 'year', 'dd', 'hh', 'mm', 'ss') + * cdef tpm_times.JD _jd + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._jd.dd = 2451545.5 + * self._jd.hms.hh = 0.0 + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":764 +/* "src/tpm_times.pxi":764 * self._jd.hms.ss = 0.0 * * def __init__(self, **kwargs): # <<<<<<<<<<<<<< @@ -6246,237 +9526,268 @@ static int __pyx_pf_5pytpm_3tpm_2JD___cinit__(PyObject *__pyx_v_self, PyObject * * if key not in self.valid_keys: */ -static int __pyx_pf_5pytpm_3tpm_2JD_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2JD_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2JD_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2JD_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_kwargs = 0; - PyObject *__pyx_v_key; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - void *__pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - double __pyx_t_8; - __Pyx_RefNannySetupContext("__init__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (__pyx_kwds && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 1))) return -1; - __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); - if (unlikely(!__pyx_v_kwargs)) return -1; + __pyx_v_kwargs = (__pyx_kwds) ? PyDict_Copy(__pyx_kwds) : PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return -1; __Pyx_GOTREF(__pyx_v_kwargs); - __pyx_v_key = Py_None; __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_2JD_2__init__(((struct __pyx_obj_3tpm_JD *)__pyx_v_self), __pyx_v_kwargs); + + /* function exit code */ + __Pyx_XDECREF(__pyx_v_kwargs); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2JD_2__init__(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_kwargs) { + PyObject *__pyx_v_key = NULL; + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + Py_ssize_t __pyx_t_2; + Py_ssize_t __pyx_t_3; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + int __pyx_t_6; + int __pyx_t_7; + int __pyx_t_8; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; + double __pyx_t_11; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":765 + /* "src/tpm_times.pxi":765 * * def __init__(self, **kwargs): * for key in kwargs: # <<<<<<<<<<<<<< * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) */ - __Pyx_INCREF(((PyObject *)__pyx_v_kwargs)); - __Pyx_XDECREF(__pyx_t_1); - __pyx_t_1 = ((PyObject *)__pyx_v_kwargs); __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_dict_iterator(__pyx_v_kwargs, 1, ((PyObject *)NULL), (&__pyx_t_3), (&__pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 765, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_1); + __pyx_t_1 = __pyx_t_5; + __pyx_t_5 = 0; while (1) { - if (!PyDict_Next(__pyx_t_1, (&__pyx_t_2), ((PyObject **)(&__pyx_t_3)), NULL)) break; - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_v_key); - __pyx_v_key = ((PyObject *)__pyx_t_3); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":766 + __pyx_t_6 = __Pyx_dict_iter_next(__pyx_t_1, __pyx_t_3, &__pyx_t_2, &__pyx_t_5, NULL, NULL, __pyx_t_4); + if (unlikely(__pyx_t_6 == 0)) break; + if (unlikely(__pyx_t_6 == -1)) __PYX_ERR(0, 765, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_XDECREF_SET(__pyx_v_key, __pyx_t_5); + __pyx_t_5 = 0; + + /* "src/tpm_times.pxi":766 * def __init__(self, **kwargs): * for key in kwargs: * if key not in self.valid_keys: # <<<<<<<<<<<<<< * raise TypeError, "Invalid keyword: {0}".format(key) * if "j" in kwargs: */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__valid_keys); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 766; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_4, __pyx_v_key))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 766; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_valid_keys); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 766, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_7 = (__Pyx_PySequence_ContainsTF(__pyx_v_key, __pyx_t_5, Py_NE)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 766, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_t_8 = (__pyx_t_7 != 0); + if (unlikely(__pyx_t_8)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":767 + /* "src/tpm_times.pxi":767 * for key in kwargs: * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) # <<<<<<<<<<<<<< * if "j" in kwargs: * self._jd = tpm_times.j2jd(kwargs['j']) */ - __pyx_t_4 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_1), __pyx_n_s__format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_key); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_key); - __Pyx_GIVEREF(__pyx_v_key); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_7, 0); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L7; + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_Invalid_keyword_0, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 767, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_10 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_9))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_9); + if (likely(__pyx_t_10)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_9, function); + } + } + __pyx_t_5 = (__pyx_t_10) ? __Pyx_PyObject_Call2Args(__pyx_t_9, __pyx_t_10, __pyx_v_key) : __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_v_key); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 767, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_t_5, 0, 0); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __PYX_ERR(0, 767, __pyx_L1_error) + + /* "src/tpm_times.pxi":766 + * def __init__(self, **kwargs): + * for key in kwargs: + * if key not in self.valid_keys: # <<<<<<<<<<<<<< + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "j" in kwargs: + */ } - __pyx_L7:; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":768 + /* "src/tpm_times.pxi":768 * if key not in self.valid_keys: * raise TypeError, "Invalid keyword: {0}".format(key) * if "j" in kwargs: # <<<<<<<<<<<<<< * self._jd = tpm_times.j2jd(kwargs['j']) * elif "year" in kwargs: */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 768; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__j)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 768; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_8 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_j, __pyx_v_kwargs, Py_EQ)); if (unlikely(__pyx_t_8 < 0)) __PYX_ERR(0, 768, __pyx_L1_error) + __pyx_t_7 = (__pyx_t_8 != 0); + if (__pyx_t_7) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":769 + /* "src/tpm_times.pxi":769 * raise TypeError, "Invalid keyword: {0}".format(key) * if "j" in kwargs: * self._jd = tpm_times.j2jd(kwargs['j']) # <<<<<<<<<<<<<< * elif "year" in kwargs: * self._jd = tpm_times.y2jd(kwargs['year']) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__j)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_n_s_j); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 769, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd = j2jd(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_jd = j2jd(__pyx_t_11); + + /* "src/tpm_times.pxi":768 + * if key not in self.valid_keys: + * raise TypeError, "Invalid keyword: {0}".format(key) + * if "j" in kwargs: # <<<<<<<<<<<<<< + * self._jd = tpm_times.j2jd(kwargs['j']) + * elif "year" in kwargs: + */ + goto __pyx_L6; } - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":770 + /* "src/tpm_times.pxi":770 * if "j" in kwargs: * self._jd = tpm_times.j2jd(kwargs['j']) * elif "year" in kwargs: # <<<<<<<<<<<<<< * self._jd = tpm_times.y2jd(kwargs['year']) * else: */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 770; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = ((PyDict_Contains(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__year)))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 770; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_5) { + __pyx_t_7 = (__Pyx_PyDict_ContainsTF(__pyx_n_s_year, __pyx_v_kwargs, Py_EQ)); if (unlikely(__pyx_t_7 < 0)) __PYX_ERR(0, 770, __pyx_L1_error) + __pyx_t_8 = (__pyx_t_7 != 0); + if (__pyx_t_8) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":771 + /* "src/tpm_times.pxi":771 * self._jd = tpm_times.j2jd(kwargs['j']) * elif "year" in kwargs: * self._jd = tpm_times.y2jd(kwargs['year']) # <<<<<<<<<<<<<< * else: * self._jd.dd = kwargs.get('dd',0.0) */ - __pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__year)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItem(__pyx_v_kwargs, __pyx_n_s_year); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd = y2jd(__pyx_t_8); - goto __pyx_L8; + __pyx_v_self->_jd = y2jd(__pyx_t_11); + + /* "src/tpm_times.pxi":770 + * if "j" in kwargs: + * self._jd = tpm_times.j2jd(kwargs['j']) + * elif "year" in kwargs: # <<<<<<<<<<<<<< + * self._jd = tpm_times.y2jd(kwargs['year']) + * else: + */ + goto __pyx_L6; } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":773 + /* "src/tpm_times.pxi":773 * self._jd = tpm_times.y2jd(kwargs['year']) * else: * self._jd.dd = kwargs.get('dd',0.0) # <<<<<<<<<<<<<< * self._jd.hms.hh = kwargs.get('hh', 0.0) * self._jd.hms.mm = kwargs.get('mm', 0.0) */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_dd, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__dd), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 773, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.dd = __pyx_t_8; + __pyx_v_self->_jd.dd = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":774 + /* "src/tpm_times.pxi":774 * else: * self._jd.dd = kwargs.get('dd',0.0) * self._jd.hms.hh = kwargs.get('hh', 0.0) # <<<<<<<<<<<<<< * self._jd.hms.mm = kwargs.get('mm', 0.0) * self._jd.hms.ss = kwargs.get('ss', 0.0) */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__hh), __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_hh, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 774, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.hh = __pyx_t_8; + __pyx_v_self->_jd.hms.hh = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":775 + /* "src/tpm_times.pxi":775 * self._jd.dd = kwargs.get('dd',0.0) * self._jd.hms.hh = kwargs.get('hh', 0.0) * self._jd.hms.mm = kwargs.get('mm', 0.0) # <<<<<<<<<<<<<< * self._jd.hms.ss = kwargs.get('ss', 0.0) * */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_mm, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__mm), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 775, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.mm = __pyx_t_8; + __pyx_v_self->_jd.hms.mm = __pyx_t_11; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":776 + /* "src/tpm_times.pxi":776 * self._jd.hms.hh = kwargs.get('hh', 0.0) * self._jd.hms.mm = kwargs.get('mm', 0.0) * self._jd.hms.ss = kwargs.get('ss', 0.0) # <<<<<<<<<<<<<< * * def __getdd(self): */ - if (unlikely(__pyx_v_kwargs == Py_None)) { - PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'get'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_PyDict_GetItemDefault(((PyObject *)__pyx_v_kwargs), ((PyObject *)__pyx_n_s__ss), __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_GetItemDefault(__pyx_v_kwargs, __pyx_n_s_ss, __pyx_float_0_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_11 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_11 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 776, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.ss = __pyx_t_8; + __pyx_v_self->_jd.hms.ss = __pyx_t_11; } - __pyx_L8:; + __pyx_L6:; + /* "src/tpm_times.pxi":764 + * self._jd.hms.ss = 0.0 + * + * def __init__(self, **kwargs): # <<<<<<<<<<<<<< + * for key in kwargs: + * if key not in self.valid_keys: + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("pytpm.tpm.JD.__init__"); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_10); + __Pyx_AddTraceback("tpm.JD.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; - __Pyx_DECREF(__pyx_v_kwargs); - __Pyx_DECREF(__pyx_v_key); + __Pyx_XDECREF(__pyx_v_key); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":778 +/* "src/tpm_times.pxi":778 * self._jd.hms.ss = kwargs.get('ss', 0.0) * * def __getdd(self): # <<<<<<<<<<<<<< @@ -6484,13 +9795,29 @@ static int __pyx_pf_5pytpm_3tpm_2JD_1__init__(PyObject *__pyx_v_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_2__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_2__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_5__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_5__getdd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_4__getdd(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_4__getdd(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdd"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":779 + /* "src/tpm_times.pxi":779 * * def __getdd(self): * return self._jd.dd # <<<<<<<<<<<<<< @@ -6498,17 +9825,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_2__getdd(PyObject *__pyx_v_self, CYTHO * def __setdd(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_jd.dd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 779, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":778 + * self._jd.hms.ss = kwargs.get('ss', 0.0) + * + * def __getdd(self): # <<<<<<<<<<<<<< + * return self._jd.dd + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.__getdd"); + __Pyx_AddTraceback("tpm.JD.__getdd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6516,7 +9850,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_2__getdd(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":781 +/* "src/tpm_times.pxi":781 * return self._jd.dd * * def __setdd(self,value): # <<<<<<<<<<<<<< @@ -6524,26 +9858,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_2__getdd(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_3__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_3__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_7__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_7__setdd(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_6__setdd(((struct __pyx_obj_3tpm_JD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_6__setdd(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setdd"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":782 + /* "src/tpm_times.pxi":782 * * def __setdd(self,value): * self._jd.dd = value # <<<<<<<<<<<<<< * * dd = property(__getdd, __setdd,doc="Day as a float.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.dd = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 782, __pyx_L1_error) + __pyx_v_self->_jd.dd = __pyx_t_1; + + /* "src/tpm_times.pxi":781 + * return self._jd.dd + * + * def __setdd(self,value): # <<<<<<<<<<<<<< + * self._jd.dd = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.JD.__setdd"); + __Pyx_AddTraceback("tpm.JD.__setdd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6551,7 +9910,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_3__setdd(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":786 +/* "src/tpm_times.pxi":786 * dd = property(__getdd, __setdd,doc="Day as a float.") * * def __gethh(self): # <<<<<<<<<<<<<< @@ -6559,13 +9918,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_3__setdd(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_4__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_4__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_9__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_9__gethh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gethh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_8__gethh(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_8__gethh(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gethh"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gethh", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":787 + /* "src/tpm_times.pxi":787 * * def __gethh(self): * return self._jd.hms.hh # <<<<<<<<<<<<<< @@ -6573,17 +9948,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_4__gethh(PyObject *__pyx_v_self, CYTHO * def __sethh(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_jd.hms.hh); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":786 + * dd = property(__getdd, __setdd,doc="Day as a float.") + * + * def __gethh(self): # <<<<<<<<<<<<<< + * return self._jd.hms.hh + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.__gethh"); + __Pyx_AddTraceback("tpm.JD.__gethh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6591,7 +9973,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_4__gethh(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":789 +/* "src/tpm_times.pxi":789 * return self._jd.hms.hh * * def __sethh(self,value): # <<<<<<<<<<<<<< @@ -6599,26 +9981,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_4__gethh(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_5__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_5__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_11__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_11__sethh(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sethh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_10__sethh(((struct __pyx_obj_3tpm_JD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_10__sethh(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__sethh"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sethh", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":790 + /* "src/tpm_times.pxi":790 * * def __sethh(self,value): * self._jd.hms.hh = value # <<<<<<<<<<<<<< * * hh = property(__gethh, __sethh,doc="Hours.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 790; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.hh = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 790, __pyx_L1_error) + __pyx_v_self->_jd.hms.hh = __pyx_t_1; + + /* "src/tpm_times.pxi":789 + * return self._jd.hms.hh + * + * def __sethh(self,value): # <<<<<<<<<<<<<< + * self._jd.hms.hh = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.JD.__sethh"); + __Pyx_AddTraceback("tpm.JD.__sethh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6626,7 +10033,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_5__sethh(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":794 +/* "src/tpm_times.pxi":794 * hh = property(__gethh, __sethh,doc="Hours.") * * def __getmm(self): # <<<<<<<<<<<<<< @@ -6634,13 +10041,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_5__sethh(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_6__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_6__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_13__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_13__getmm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_12__getmm(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_12__getmm(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":795 + /* "src/tpm_times.pxi":795 * * def __getmm(self): * return self._jd.hms.mm # <<<<<<<<<<<<<< @@ -6648,17 +10071,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_6__getmm(PyObject *__pyx_v_self, CYTHO * def __setmm(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 795; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_jd.hms.mm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":794 + * hh = property(__gethh, __sethh,doc="Hours.") + * + * def __getmm(self): # <<<<<<<<<<<<<< + * return self._jd.hms.mm + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.__getmm"); + __Pyx_AddTraceback("tpm.JD.__getmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6666,7 +10096,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_6__getmm(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":797 +/* "src/tpm_times.pxi":797 * return self._jd.hms.mm * * def __setmm(self,value): # <<<<<<<<<<<<<< @@ -6674,26 +10104,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_6__getmm(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_7__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_7__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_15__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_15__setmm(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setmm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_14__setmm(((struct __pyx_obj_3tpm_JD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_14__setmm(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setmm"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setmm", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":798 + /* "src/tpm_times.pxi":798 * * def __setmm(self,value): * self._jd.hms.mm = value # <<<<<<<<<<<<<< * * mm = property(__getmm, __setmm,doc="Minutes.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.mm = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 798, __pyx_L1_error) + __pyx_v_self->_jd.hms.mm = __pyx_t_1; + + /* "src/tpm_times.pxi":797 + * return self._jd.hms.mm + * + * def __setmm(self,value): # <<<<<<<<<<<<<< + * self._jd.hms.mm = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.JD.__setmm"); + __Pyx_AddTraceback("tpm.JD.__setmm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6701,7 +10156,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_7__setmm(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":802 +/* "src/tpm_times.pxi":802 * mm = property(__getmm, __setmm,doc="Minutes.") * * def __getss(self): # <<<<<<<<<<<<<< @@ -6709,13 +10164,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_7__setmm(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_8__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_8__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_17__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_17__getss(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_16__getss(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_16__getss(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":803 + /* "src/tpm_times.pxi":803 * * def __getss(self): * return self._jd.hms.ss # <<<<<<<<<<<<<< @@ -6723,17 +10194,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_8__getss(PyObject *__pyx_v_self, CYTHO * def __setss(self,value): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 803; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_jd.hms.ss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 803, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":802 + * mm = property(__getmm, __setmm,doc="Minutes.") + * + * def __getss(self): # <<<<<<<<<<<<<< + * return self._jd.hms.ss + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.__getss"); + __Pyx_AddTraceback("tpm.JD.__getss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6741,7 +10219,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_8__getss(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":805 +/* "src/tpm_times.pxi":805 * return self._jd.hms.ss * * def __setss(self,value): # <<<<<<<<<<<<<< @@ -6749,26 +10227,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_8__getss(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_9__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_9__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_19__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_19__setss(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setss (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_18__setss(((struct __pyx_obj_3tpm_JD *)__pyx_v_self), ((PyObject *)__pyx_v_value)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_18__setss(struct __pyx_obj_3tpm_JD *__pyx_v_self, PyObject *__pyx_v_value) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setss"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setss", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":806 + /* "src/tpm_times.pxi":806 * * def __setss(self,value): * self._jd.hms.ss = value # <<<<<<<<<<<<<< * * ss = property(__getss, __setss,doc="Seconds.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 806; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd.hms.ss = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_value); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 806, __pyx_L1_error) + __pyx_v_self->_jd.hms.ss = __pyx_t_1; + + /* "src/tpm_times.pxi":805 + * return self._jd.hms.ss + * + * def __setss(self,value): # <<<<<<<<<<<<<< + * self._jd.hms.ss = value + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.JD.__setss"); + __Pyx_AddTraceback("tpm.JD.__setss", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6776,7 +10279,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_9__setss(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":810 +/* "src/tpm_times.pxi":810 * ss = property(__getss, __setss,doc="Seconds.") * * def __repr__(self): # <<<<<<<<<<<<<< @@ -6784,45 +10287,59 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_9__setss(PyObject *__pyx_v_self, PyObj * return repr(d) */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_10__repr__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_10__repr__(PyObject *__pyx_v_self) { - PyObject *__pyx_v_d; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_21__repr__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_21__repr__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_20__repr__(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_20__repr__(struct __pyx_obj_3tpm_JD *__pyx_v_self) { + PyObject *__pyx_v_d = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_v_d = ((PyObject*)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__repr__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":811 + /* "src/tpm_times.pxi":811 * * def __repr__(self): * d = dict(dd=self.dd, hh=self.hh, mm=self.mm, ss=self.ss) # <<<<<<<<<<<<<< * return repr(d) * */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 811, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_dd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__dd), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dd, __pyx_t_2) < 0) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_hh); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__hh), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_hh, __pyx_t_2) < 0) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_mm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__mm), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_mm, __pyx_t_2) < 0) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__ss), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ss, __pyx_t_2) < 0) __PYX_ERR(0, 811, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_d)); - __pyx_v_d = __pyx_t_1; + __pyx_v_d = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":812 + /* "src/tpm_times.pxi":812 * def __repr__(self): * d = dict(dd=self.dd, hh=self.hh, mm=self.mm, ss=self.ss) * return repr(d) # <<<<<<<<<<<<<< @@ -6830,27 +10347,34 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_10__repr__(PyObject *__pyx_v_self) { * def __str__(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_Repr(((PyObject *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 812; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyObject_Repr(__pyx_v_d); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 812, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":810 + * ss = property(__getss, __setss,doc="Seconds.") + * + * def __repr__(self): # <<<<<<<<<<<<<< + * d = dict(dd=self.dd, hh=self.hh, mm=self.mm, ss=self.ss) + * return repr(d) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.JD.__repr__"); + __Pyx_AddTraceback("tpm.JD.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_d); + __Pyx_XDECREF(__pyx_v_d); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":814 +/* "src/tpm_times.pxi":814 * return repr(d) * * def __str__(self): # <<<<<<<<<<<<<< @@ -6858,24 +10382,40 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_10__repr__(PyObject *__pyx_v_self) { * jd = tpm_times.jd2jd(self._jd) */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_11__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_11__str__(PyObject *__pyx_v_self) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_23__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_23__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_22__str__(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_22__str__(struct __pyx_obj_3tpm_JD *__pyx_v_self) { JD __pyx_v_jd; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":816 + /* "src/tpm_times.pxi":816 * def __str__(self): * cdef tpm_times.JD jd * jd = tpm_times.jd2jd(self._jd) # <<<<<<<<<<<<<< * return tpm_times.fmt_jd(jd).decode("utf-8") * */ - __pyx_v_jd = jd2jd(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd); + __pyx_v_jd = jd2jd(__pyx_v_self->_jd); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":817 + /* "src/tpm_times.pxi":817 * cdef tpm_times.JD jd * jd = tpm_times.jd2jd(self._jd) * return tpm_times.fmt_jd(jd).decode("utf-8") # <<<<<<<<<<<<<< @@ -6884,18 +10424,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_11__str__(PyObject *__pyx_v_self) { */ __Pyx_XDECREF(__pyx_r); __pyx_t_1 = fmt_jd(__pyx_v_jd); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 817; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 817, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":814 + * return repr(d) + * + * def __str__(self): # <<<<<<<<<<<<<< + * cdef tpm_times.JD jd + * jd = tpm_times.jd2jd(self._jd) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.JD.__str__"); + __Pyx_AddTraceback("tpm.JD.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -6903,7 +10450,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_11__str__(PyObject *__pyx_v_self) { return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":819 +/* "src/tpm_times.pxi":819 * return tpm_times.fmt_jd(jd).decode("utf-8") * * def __add__(self, other): # <<<<<<<<<<<<<< @@ -6911,136 +10458,154 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_11__str__(PyObject *__pyx_v_self) { * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_12__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_12__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_jd; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_25__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_25__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_24__add__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_24__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_jd = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_jd = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":822 + /* "src/tpm_times.pxi":822 * # Cython does not have __rdd__ and the first parameter may not * # be this object * if isinstance(self, JD) and isinstance(other, JD): # <<<<<<<<<<<<<< * # return a new JD object * jd = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_JD)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_JD); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_JD)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_JD); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":824 + /* "src/tpm_times.pxi":824 * if isinstance(self, JD) and isinstance(other, JD): * # return a new JD object * jd = self.__class__() # <<<<<<<<<<<<<< * jd.dd = self.dd + other.dd * jd.hh = self.hh + other.hh */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 824; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 824; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_jd); - __pyx_v_jd = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 824, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 824, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_jd = __pyx_t_4; + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":825 + /* "src/tpm_times.pxi":825 * # return a new JD object * jd = self.__class__() * jd.dd = self.dd + other.dd # <<<<<<<<<<<<<< * jd.hh = self.hh + other.hh * jd.mm = self.mm + other.mm */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 825, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dd); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 825, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 825, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__dd, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_dd, __pyx_t_6) < 0) __PYX_ERR(0, 825, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":826 + /* "src/tpm_times.pxi":826 * jd = self.__class__() * jd.dd = self.dd + other.dd * jd.hh = self.hh + other.hh # <<<<<<<<<<<<<< * jd.mm = self.mm + other.mm * jd.ss = self.ss + other.ss */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_hh); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 826, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_hh); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 826, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 826, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__hh, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_hh, __pyx_t_4) < 0) __PYX_ERR(0, 826, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":827 + /* "src/tpm_times.pxi":827 * jd.dd = self.dd + other.dd * jd.hh = self.hh + other.hh * jd.mm = self.mm + other.mm # <<<<<<<<<<<<<< * jd.ss = self.ss + other.ss * return jd */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 827, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 827, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Add(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 827, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__mm, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_mm, __pyx_t_6) < 0) __PYX_ERR(0, 827, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":828 + /* "src/tpm_times.pxi":828 * jd.hh = self.hh + other.hh * jd.mm = self.mm + other.mm * jd.ss = self.ss + other.ss # <<<<<<<<<<<<<< * return jd * else: */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 828, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 828, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__ss, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_ss, __pyx_t_4) < 0) __PYX_ERR(0, 828, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":829 + /* "src/tpm_times.pxi":829 * jd.mm = self.mm + other.mm * jd.ss = self.ss + other.ss * return jd # <<<<<<<<<<<<<< @@ -7051,38 +10616,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_12__add__(PyObject *__pyx_v_self, PyOb __Pyx_INCREF(__pyx_v_jd); __pyx_r = __pyx_v_jd; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":822 + * # Cython does not have __rdd__ and the first parameter may not + * # be this object + * if isinstance(self, JD) and isinstance(other, JD): # <<<<<<<<<<<<<< + * # return a new JD object + * jd = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":831 + /* "src/tpm_times.pxi":831 * return jd * else: * raise TypeError, "Can only add two JD values." # <<<<<<<<<<<<<< * * def __sub__(self, other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_9), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_JD_values, 0, 0); + __PYX_ERR(0, 831, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":819 + * return tpm_times.fmt_jd(jd).decode("utf-8") + * + * def __add__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __rdd__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.JD.__add__"); + __Pyx_AddTraceback("tpm.JD.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_jd); + __Pyx_XDECREF(__pyx_v_jd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":833 +/* "src/tpm_times.pxi":833 * raise TypeError, "Can only add two JD values." * * def __sub__(self, other): # <<<<<<<<<<<<<< @@ -7090,136 +10668,154 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_12__add__(PyObject *__pyx_v_self, PyOb * # be this object */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_13__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_13__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - PyObject *__pyx_v_jd; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_27__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_27__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_26__sub__(((PyObject *)__pyx_v_self), ((PyObject *)__pyx_v_other)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_26__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + PyObject *__pyx_v_jd = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_jd = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":836 + /* "src/tpm_times.pxi":836 * # Cython does not have __rsub__ and the first parameter may not * # be this object * if isinstance(self, JD) and isinstance(other, JD): # <<<<<<<<<<<<<< * # return a new JD object * jd = self.__class__() */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_JD)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_self, __pyx_ptype_3tpm_JD); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_JD)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_other, __pyx_ptype_3tpm_JD); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":838 + /* "src/tpm_times.pxi":838 * if isinstance(self, JD) and isinstance(other, JD): * # return a new JD object * jd = self.__class__() # <<<<<<<<<<<<<< * jd.dd = self.dd - other.dd * jd.hh = self.hh - other.hh */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 838; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 838; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_jd); - __pyx_v_jd = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 838, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 838, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_v_jd = __pyx_t_4; + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":839 + /* "src/tpm_times.pxi":839 * # return a new JD object * jd = self.__class__() * jd.dd = self.dd - other.dd # <<<<<<<<<<<<<< * jd.hh = self.hh - other.hh * jd.mm = self.mm - other.mm */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__dd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dd); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 839, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dd); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 839, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__dd, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_dd, __pyx_t_6) < 0) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":840 + /* "src/tpm_times.pxi":840 * jd = self.__class__() * jd.dd = self.dd - other.dd * jd.hh = self.hh - other.hh # <<<<<<<<<<<<<< * jd.mm = self.mm - other.mm * jd.ss = self.ss - other.ss */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__hh); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_hh); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 840, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__hh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_hh); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 840, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 840, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__hh, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_hh, __pyx_t_4) < 0) __PYX_ERR(0, 840, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":841 + /* "src/tpm_times.pxi":841 * jd.dd = self.dd - other.dd * jd.hh = self.hh - other.hh * jd.mm = self.mm - other.mm # <<<<<<<<<<<<<< * jd.ss = self.ss - other.ss * return jd */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__mm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__mm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Subtract(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_mm); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 841, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_mm); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 841, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 841, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__mm, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_mm, __pyx_t_6) < 0) __PYX_ERR(0, 841, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":842 + /* "src/tpm_times.pxi":842 * jd.hh = self.hh - other.hh * jd.mm = self.mm - other.mm * jd.ss = self.ss - other.ss # <<<<<<<<<<<<<< * return jd * else: */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ss); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ss); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 842, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_other, __pyx_n_s__ss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Subtract(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ss); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 842, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_4 = PyNumber_Subtract(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 842, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_jd, __pyx_n_s__ss, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (__Pyx_PyObject_SetAttrStr(__pyx_v_jd, __pyx_n_s_ss, __pyx_t_4) < 0) __PYX_ERR(0, 842, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":843 + /* "src/tpm_times.pxi":843 * jd.mm = self.mm - other.mm * jd.ss = self.ss - other.ss * return jd # <<<<<<<<<<<<<< @@ -7230,38 +10826,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_13__sub__(PyObject *__pyx_v_self, PyOb __Pyx_INCREF(__pyx_v_jd); __pyx_r = __pyx_v_jd; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_times.pxi":836 + * # Cython does not have __rsub__ and the first parameter may not + * # be this object + * if isinstance(self, JD) and isinstance(other, JD): # <<<<<<<<<<<<<< + * # return a new JD object + * jd = self.__class__() + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":845 + /* "src/tpm_times.pxi":845 * return jd * else: * raise TypeError, "Can only add two JD values." # <<<<<<<<<<<<<< * * def normalize(self): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_9), 0); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_JD_values, 0, 0); + __PYX_ERR(0, 845, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":833 + * raise TypeError, "Can only add two JD values." + * + * def __sub__(self, other): # <<<<<<<<<<<<<< + * # Cython does not have __rsub__ and the first parameter may not + * # be this object + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("pytpm.tpm.JD.__sub__"); + __Pyx_AddTraceback("tpm.JD.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_jd); + __Pyx_XDECREF(__pyx_v_jd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":847 +/* "src/tpm_times.pxi":847 * raise TypeError, "Can only add two JD values." * * def normalize(self): # <<<<<<<<<<<<<< @@ -7269,28 +10878,50 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_13__sub__(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_14normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2JD_14normalize[] = "Normalize the JD structure.\n\n Normalize the components into their proper ranges and carry the\n fractional part of the date into seconds.\n\n Examples\n --------\n >>> j = tpm.JD(j=2451545.1234467)\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.1234467002, 'hh': 0.0}\n >>> j.normalize()\n >>> j\n {'mm': 57.0, 'ss': 45.794894099235535, 'dd': 2451545.0, 'hh': 2.0}\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_14normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_29normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_2JD_28normalize[] = "Normalize the JD structure.\n\n Normalize the components into their proper ranges and carry the\n fractional part of the date into seconds.\n\n Examples\n --------\n >>> j = tpm.JD(j=2451545.1234467)\n >>> j\n {'mm': 0.0, 'ss': 0.0, 'dd': 2451545.1234467002, 'hh': 0.0}\n >>> j.normalize()\n >>> j\n {'mm': 57.0, 'ss': 45.794894099235535, 'dd': 2451545.0, 'hh': 2.0}\n\n "; +static PyObject *__pyx_pw_3tpm_2JD_29normalize(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_28normalize(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_28normalize(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("normalize"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("normalize", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":863 + /* "src/tpm_times.pxi":863 * * """ * self._jd = tpm_times.jd2jd(self._jd) # <<<<<<<<<<<<<< * * def to_ymd(self): */ - ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd = jd2jd(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd); + __pyx_v_self->_jd = jd2jd(__pyx_v_self->_jd); + + /* "src/tpm_times.pxi":847 + * raise TypeError, "Can only add two JD values." + * + * def normalize(self): # <<<<<<<<<<<<<< + * """Normalize the JD structure. + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":865 +/* "src/tpm_times.pxi":865 * self._jd = tpm_times.jd2jd(self._jd) * * def to_ymd(self): # <<<<<<<<<<<<<< @@ -7298,39 +10929,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_14normalize(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_15to_ymd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2JD_15to_ymd[] = "Convert to YMD (Gregorian calendar).\n\n Returns\n -------\n ymd : tpm.YMD\n The Julian date is converted into Gregorian calendar date\n and returned as a tpm.YMD object.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> ymd = jd.to_ymd()\n >>> ymd\n {'mm': 0.0, 'dd': 1.5, 'm': 1, 'ss': 0.0, 'hh': 12.0, 'y': 2000}\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_15to_ymd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_31to_ymd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_2JD_30to_ymd[] = "Convert to YMD (Gregorian calendar).\n\n Returns\n -------\n ymd : tpm.YMD\n The Julian date is converted into Gregorian calendar date\n and returned as a tpm.YMD object.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> ymd = jd.to_ymd()\n >>> ymd\n {'mm': 0.0, 'dd': 1.5, 'm': 1, 'ss': 0.0, 'hh': 12.0, 'y': 2000}\n\n "; +static PyObject *__pyx_pw_3tpm_2JD_31to_ymd(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_ymd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_30to_ymd(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_30to_ymd(struct __pyx_obj_3tpm_JD *__pyx_v_self) { YMD __pyx_v__ymd; - struct __pyx_obj_5pytpm_3tpm_YMD *__pyx_v_ymd; + struct __pyx_obj_3tpm_YMD *__pyx_v_ymd = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_ymd"); - __pyx_v_ymd = ((struct __pyx_obj_5pytpm_3tpm_YMD *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_ymd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":883 + /* "src/tpm_times.pxi":883 * """ * cdef tpm_times.YMD _ymd * _ymd = tpm_times.jd2ymd(self._jd) # <<<<<<<<<<<<<< * ymd = YMD() * ymd._ymd = _ymd */ - __pyx_v__ymd = jd2ymd(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd); + __pyx_v__ymd = jd2ymd(__pyx_v_self->_jd); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":884 + /* "src/tpm_times.pxi":884 * cdef tpm_times.YMD _ymd * _ymd = tpm_times.jd2ymd(self._jd) * ymd = YMD() # <<<<<<<<<<<<<< * ymd._ymd = _ymd * return ymd */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_YMD)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 884; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_YMD)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 884, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_ymd)); - __pyx_v_ymd = ((struct __pyx_obj_5pytpm_3tpm_YMD *)__pyx_t_1); + __pyx_v_ymd = ((struct __pyx_obj_3tpm_YMD *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":885 + /* "src/tpm_times.pxi":885 * _ymd = tpm_times.jd2ymd(self._jd) * ymd = YMD() * ymd._ymd = _ymd # <<<<<<<<<<<<<< @@ -7339,7 +10984,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_15to_ymd(PyObject *__pyx_v_self, CYTHO */ __pyx_v_ymd->_ymd = __pyx_v__ymd; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":886 + /* "src/tpm_times.pxi":886 * ymd = YMD() * ymd._ymd = _ymd * return ymd # <<<<<<<<<<<<<< @@ -7351,20 +10996,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_15to_ymd(PyObject *__pyx_v_self, CYTHO __pyx_r = ((PyObject *)__pyx_v_ymd); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":865 + * self._jd = tpm_times.jd2jd(self._jd) + * + * def to_ymd(self): # <<<<<<<<<<<<<< + * """Convert to YMD (Gregorian calendar). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.to_ymd"); + __Pyx_AddTraceback("tpm.JD.to_ymd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_ymd); + __Pyx_XDECREF((PyObject *)__pyx_v_ymd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":888 +/* "src/tpm_times.pxi":888 * return ymd * * def to_j(self): # <<<<<<<<<<<<<< @@ -7372,14 +11024,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_15to_ymd(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_16to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2JD_16to_j[] = "Convert JD to a scalar Julian date.\n\n Returns\n -------\n j : float\n The scalar Julian date.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_j()\n 2451545.5\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_16to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_33to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_2JD_32to_j[] = "Convert JD to a scalar Julian date.\n\n Returns\n -------\n j : float\n The scalar Julian date.\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_j()\n 2451545.5\n\n "; +static PyObject *__pyx_pw_3tpm_2JD_33to_j(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_j (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_32to_j(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_32to_j(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_j"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_j", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":903 + /* "src/tpm_times.pxi":903 * * """ * return tpm_times.jd2j(self._jd) # <<<<<<<<<<<<<< @@ -7387,17 +11055,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_16to_j(PyObject *__pyx_v_self, CYTHON_ * def to_year(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(jd2j(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 903; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(jd2j(__pyx_v_self->_jd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 903, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":888 + * return ymd + * + * def to_j(self): # <<<<<<<<<<<<<< + * """Convert JD to a scalar Julian date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.to_j"); + __Pyx_AddTraceback("tpm.JD.to_j", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7405,7 +11080,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_16to_j(PyObject *__pyx_v_self, CYTHON_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":905 +/* "src/tpm_times.pxi":905 * return tpm_times.jd2j(self._jd) * * def to_year(self): # <<<<<<<<<<<<<< @@ -7413,14 +11088,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_16to_j(PyObject *__pyx_v_self, CYTHON_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_17to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2JD_17to_year[] = "Convert JD into year (Gregorian calendar).\n\n Returns\n -------\n y : float\n Year with fractional part. This is just\n (integer_year + day/num_of_days).\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_year()\n 2000.0054644808743\n >>> 2000+(2/366.0)\n 2000.0054644808743\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2JD_17to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_35to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_2JD_34to_year[] = "Convert JD into year (Gregorian calendar).\n\n Returns\n -------\n y : float\n Year with fractional part. This is just\n (integer_year + day/num_of_days).\n\n Examples\n --------\n >>> jd = tpm.JD(dd=2451545.0, hh=12.0)\n >>> jd.to_year()\n 2000.0054644808743\n >>> 2000+(2/366.0)\n 2000.0054644808743\n\n "; +static PyObject *__pyx_pw_3tpm_2JD_35to_year(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("to_year (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_34to_year(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_34to_year(struct __pyx_obj_3tpm_JD *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("to_year"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("to_year", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":923 + /* "src/tpm_times.pxi":923 * * """ * return tpm_times.jd2y(self._jd) # <<<<<<<<<<<<<< @@ -7428,17 +11119,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_17to_year(PyObject *__pyx_v_self, CYTH * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(jd2y(((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_v_self)->_jd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(jd2y(__pyx_v_self->_jd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 923, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":905 + * return tpm_times.jd2j(self._jd) + * + * def to_year(self): # <<<<<<<<<<<<<< + * """Convert JD into year (Gregorian calendar). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.JD.to_year"); + __Pyx_AddTraceback("tpm.JD.to_year", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7446,52 +11144,187 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2JD_17to_year(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":927 - * - * - * def byear2jd(byear): # <<<<<<<<<<<<<< - * """Convert Besselian year into a Julian date. - * +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): */ -static PyObject *__pyx_pf_5pytpm_3tpm_byear2jd(PyObject *__pyx_self, PyObject *__pyx_v_byear); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_byear2jd[] = "Convert Besselian year into a Julian date.\n\n Parameters\n ----------\n byear: float\n Besselian year.\n\n Returns\n -------\n j : float\n Julian date corresponding to the given Besselian year.\n\n Examples\n --------\n >>> tpm.byear2jd(1950.0)\n 2433282.4234590498\n >>> tpm.byear2jd(2000.0)\n 2451544.5333981365\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_byear2jd = {__Pyx_NAMESTR("byear2jd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_byear2jd, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_byear2jd)}; -static PyObject *__pyx_pf_5pytpm_3tpm_byear2jd(PyObject *__pyx_self, PyObject *__pyx_v_byear) { - PyObject *__pyx_r = NULL; - double __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("byear2jd"); - __pyx_self = __pyx_self; - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":948 - * - * """ - * return tpm_times.BYEAR2JD(byear) # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_byear); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 948; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(BYEAR2JD(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 948; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_37__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_37__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_36__reduce_cython__(((struct __pyx_obj_3tpm_JD *)__pyx_v_self)); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.byear2jd"); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); + /* function exit code */ __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":951 +static PyObject *__pyx_pf_3tpm_2JD_36__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_JD *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.JD.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2JD_39__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_2JD_39__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2JD_38__setstate_cython__(((struct __pyx_obj_3tpm_JD *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2JD_38__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_JD *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.JD.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_times.pxi":927 + * + * + * def byear2jd(byear): # <<<<<<<<<<<<<< + * """Convert Besselian year into a Julian date. + * + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_1byear2jd(PyObject *__pyx_self, PyObject *__pyx_v_byear); /*proto*/ +static char __pyx_doc_3tpm_byear2jd[] = "Convert Besselian year into a Julian date.\n\n Parameters\n ----------\n byear: float\n Besselian year.\n\n Returns\n -------\n j : float\n Julian date corresponding to the given Besselian year.\n\n Examples\n --------\n >>> tpm.byear2jd(1950.0)\n 2433282.4234590498\n >>> tpm.byear2jd(2000.0)\n 2451544.5333981365\n\n "; +static PyMethodDef __pyx_mdef_3tpm_1byear2jd = {"byear2jd", (PyCFunction)__pyx_pw_3tpm_1byear2jd, METH_O, __pyx_doc_3tpm_byear2jd}; +static PyObject *__pyx_pw_3tpm_1byear2jd(PyObject *__pyx_self, PyObject *__pyx_v_byear) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("byear2jd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_byear2jd(__pyx_self, ((PyObject *)__pyx_v_byear)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_byear2jd(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_byear) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + PyObject *__pyx_t_2 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("byear2jd", 0); + + /* "src/tpm_times.pxi":948 + * + * """ + * return tpm_times.BYEAR2JD(byear) # <<<<<<<<<<<<<< + * + * + */ + __Pyx_XDECREF(__pyx_r); + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_byear); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 948, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(BYEAR2JD(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 948, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __pyx_t_2 = 0; + goto __pyx_L0; + + /* "src/tpm_times.pxi":927 + * + * + * def byear2jd(byear): # <<<<<<<<<<<<<< + * """Convert Besselian year into a Julian date. + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_2); + __Pyx_AddTraceback("tpm.byear2jd", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_times.pxi":951 * * * def jd2byear(jd): # <<<<<<<<<<<<<< @@ -7499,17 +11332,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_byear2jd(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_1jd2byear(PyObject *__pyx_self, PyObject *__pyx_v_jd); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_1jd2byear[] = "Convert Julian date into a Besselian year.\n\n Parameters\n ----------\n jd: float\n Julian date.\n\n Returns\n -------\n byear : float\n Besselian year corresponding to the given Julian date.\n\n Examples\n --------\n >>> tpm.jd2byear(tpm.B1950)\n 1950.0\n >>> tpm.jd2byear(tpm.J2000)\n 2000.0012775135656\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_1jd2byear = {__Pyx_NAMESTR("jd2byear"), (PyCFunction)__pyx_pf_5pytpm_3tpm_1jd2byear, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_1jd2byear)}; -static PyObject *__pyx_pf_5pytpm_3tpm_1jd2byear(PyObject *__pyx_self, PyObject *__pyx_v_jd) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3jd2byear(PyObject *__pyx_self, PyObject *__pyx_v_jd); /*proto*/ +static char __pyx_doc_3tpm_2jd2byear[] = "Convert Julian date into a Besselian year.\n\n Parameters\n ----------\n jd: float\n Julian date.\n\n Returns\n -------\n byear : float\n Besselian year corresponding to the given Julian date.\n\n Examples\n --------\n >>> tpm.jd2byear(tpm.B1950)\n 1950.0\n >>> tpm.jd2byear(tpm.J2000)\n 2000.0012775135656\n\n "; +static PyMethodDef __pyx_mdef_3tpm_3jd2byear = {"jd2byear", (PyCFunction)__pyx_pw_3tpm_3jd2byear, METH_O, __pyx_doc_3tpm_2jd2byear}; +static PyObject *__pyx_pw_3tpm_3jd2byear(PyObject *__pyx_self, PyObject *__pyx_v_jd) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("jd2byear (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2jd2byear(__pyx_self, ((PyObject *)__pyx_v_jd)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2jd2byear(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_jd) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("jd2byear"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("jd2byear", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":972 + /* "src/tpm_times.pxi":972 * * """ * return tpm_times.JD2BYEAR(jd) # <<<<<<<<<<<<<< @@ -7517,18 +11365,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_1jd2byear(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_jd); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 972; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(JD2BYEAR(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 972; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_jd); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 972, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(JD2BYEAR(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 972, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":951 + * + * + * def jd2byear(jd): # <<<<<<<<<<<<<< + * """Convert Julian date into a Besselian year. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.jd2byear"); + __Pyx_AddTraceback("tpm.jd2byear", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7536,7 +11391,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_1jd2byear(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":975 +/* "src/tpm_times.pxi":975 * * * def jyear2jd(jyear): # <<<<<<<<<<<<<< @@ -7544,17 +11399,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_1jd2byear(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2jyear2jd(PyObject *__pyx_self, PyObject *__pyx_v_jyear); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2jyear2jd[] = "Convert Julian year into a Julian date.\n\n Parameters\n ----------\n jyear : float\n Julian year.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given Julian year.\n\n Examples\n --------\n >>> tpm.jyear2jd(2000.0)\n 2451545.0\n >>> tpm.jyear2jd(1950.0)\n 2433282.5\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_2jyear2jd = {__Pyx_NAMESTR("jyear2jd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2jyear2jd, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2jyear2jd)}; -static PyObject *__pyx_pf_5pytpm_3tpm_2jyear2jd(PyObject *__pyx_self, PyObject *__pyx_v_jyear) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_5jyear2jd(PyObject *__pyx_self, PyObject *__pyx_v_jyear); /*proto*/ +static char __pyx_doc_3tpm_4jyear2jd[] = "Convert Julian year into a Julian date.\n\n Parameters\n ----------\n jyear : float\n Julian year.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given Julian year.\n\n Examples\n --------\n >>> tpm.jyear2jd(2000.0)\n 2451545.0\n >>> tpm.jyear2jd(1950.0)\n 2433282.5\n\n "; +static PyMethodDef __pyx_mdef_3tpm_5jyear2jd = {"jyear2jd", (PyCFunction)__pyx_pw_3tpm_5jyear2jd, METH_O, __pyx_doc_3tpm_4jyear2jd}; +static PyObject *__pyx_pw_3tpm_5jyear2jd(PyObject *__pyx_self, PyObject *__pyx_v_jyear) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("jyear2jd (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4jyear2jd(__pyx_self, ((PyObject *)__pyx_v_jyear)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4jyear2jd(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_jyear) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("jyear2jd"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("jyear2jd", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":996 + /* "src/tpm_times.pxi":996 * * """ * return tpm_times.JYEAR2JD(jyear) # <<<<<<<<<<<<<< @@ -7562,18 +11432,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2jyear2jd(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_jyear); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 996; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(JYEAR2JD(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 996; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_jyear); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 996, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(JYEAR2JD(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 996, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":975 + * + * + * def jyear2jd(jyear): # <<<<<<<<<<<<<< + * """Convert Julian year into a Julian date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.jyear2jd"); + __Pyx_AddTraceback("tpm.jyear2jd", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7581,7 +11458,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2jyear2jd(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":999 +/* "src/tpm_times.pxi":999 * * * def jd2jyear(jd): # <<<<<<<<<<<<<< @@ -7589,17 +11466,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2jyear2jd(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3jd2jyear(PyObject *__pyx_self, PyObject *__pyx_v_jd); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3jd2jyear[] = "Convert Julian date into Julian year.\n\n Parameters\n ----------\n jd : float\n Julian date.\n\n Returns\n -------\n jyear : float\n Julian year corresponding to the given Juilan date.\n\n Examples\n --------\n >>> tpm.jd2jyear(tpm.J2000)\n 2000.0\n >>> tpm.jd2jyear(tpm.B1950)\n 1949.9997904422992\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_3jd2jyear = {__Pyx_NAMESTR("jd2jyear"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3jd2jyear, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3jd2jyear)}; -static PyObject *__pyx_pf_5pytpm_3tpm_3jd2jyear(PyObject *__pyx_self, PyObject *__pyx_v_jd) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_7jd2jyear(PyObject *__pyx_self, PyObject *__pyx_v_jd); /*proto*/ +static char __pyx_doc_3tpm_6jd2jyear[] = "Convert Julian date into Julian year.\n\n Parameters\n ----------\n jd : float\n Julian date.\n\n Returns\n -------\n jyear : float\n Julian year corresponding to the given Juilan date.\n\n Examples\n --------\n >>> tpm.jd2jyear(tpm.J2000)\n 2000.0\n >>> tpm.jd2jyear(tpm.B1950)\n 1949.9997904422992\n\n "; +static PyMethodDef __pyx_mdef_3tpm_7jd2jyear = {"jd2jyear", (PyCFunction)__pyx_pw_3tpm_7jd2jyear, METH_O, __pyx_doc_3tpm_6jd2jyear}; +static PyObject *__pyx_pw_3tpm_7jd2jyear(PyObject *__pyx_self, PyObject *__pyx_v_jd) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("jd2jyear (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6jd2jyear(__pyx_self, ((PyObject *)__pyx_v_jd)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6jd2jyear(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_jd) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("jd2jyear"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("jd2jyear", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1020 + /* "src/tpm_times.pxi":1020 * * """ * return tpm_times.JD2JYEAR(jd) # <<<<<<<<<<<<<< @@ -7607,18 +11499,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3jd2jyear(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_jd); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1020; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(JD2JYEAR(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1020; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_jd); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1020, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(JD2JYEAR(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":999 + * + * + * def jd2jyear(jd): # <<<<<<<<<<<<<< + * """Convert Julian date into Julian year. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.jd2jyear"); + __Pyx_AddTraceback("tpm.jd2jyear", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7626,7 +11525,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3jd2jyear(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1023 +/* "src/tpm_times.pxi":1023 * * * def jd_now(): # <<<<<<<<<<<<<< @@ -7634,31 +11533,44 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3jd2jyear(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4jd_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4jd_now[] = "Return current Julian date as a JD object.\n\n This function is only accurate to the nearest second.\n\n Returns\n -------\n jd : tpm.JD\n Julian date as a ``JD`` object.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_4jd_now = {__Pyx_NAMESTR("jd_now"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4jd_now, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4jd_now)}; -static PyObject *__pyx_pf_5pytpm_3tpm_4jd_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_JD *__pyx_v_jd; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_9jd_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_8jd_now[] = "Return current Julian date as a JD object.\n\n This function is only accurate to the nearest second.\n\n Returns\n -------\n jd : tpm.JD\n Julian date as a ``JD`` object.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_9jd_now = {"jd_now", (PyCFunction)__pyx_pw_3tpm_9jd_now, METH_NOARGS, __pyx_doc_3tpm_8jd_now}; +static PyObject *__pyx_pw_3tpm_9jd_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("jd_now (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_8jd_now(__pyx_self); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_8jd_now(CYTHON_UNUSED PyObject *__pyx_self) { + struct __pyx_obj_3tpm_JD *__pyx_v_jd = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("jd_now"); - __pyx_self = __pyx_self; - __pyx_v_jd = ((struct __pyx_obj_5pytpm_3tpm_JD *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("jd_now", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1034 + /* "src/tpm_times.pxi":1034 * * """ * jd = JD() # <<<<<<<<<<<<<< * jd._jd = tpm_times.jd_now() * return jd */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_JD)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1034; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_JD)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1034, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_jd)); - __pyx_v_jd = ((struct __pyx_obj_5pytpm_3tpm_JD *)__pyx_t_1); + __pyx_v_jd = ((struct __pyx_obj_3tpm_JD *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1035 + /* "src/tpm_times.pxi":1035 * """ * jd = JD() * jd._jd = tpm_times.jd_now() # <<<<<<<<<<<<<< @@ -7667,7 +11579,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4jd_now(PyObject *__pyx_self, CYTHON_UNUSE */ __pyx_v_jd->_jd = jd_now(); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1036 + /* "src/tpm_times.pxi":1036 * jd = JD() * jd._jd = tpm_times.jd_now() * return jd # <<<<<<<<<<<<<< @@ -7679,20 +11591,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4jd_now(PyObject *__pyx_self, CYTHON_UNUSE __pyx_r = ((PyObject *)__pyx_v_jd); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1023 + * + * + * def jd_now(): # <<<<<<<<<<<<<< + * """Return current Julian date as a JD object. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.jd_now"); + __Pyx_AddTraceback("tpm.jd_now", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_jd); + __Pyx_XDECREF((PyObject *)__pyx_v_jd); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1039 +/* "src/tpm_times.pxi":1039 * * * def utc_now(): # <<<<<<<<<<<<<< @@ -7700,16 +11619,31 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4jd_now(PyObject *__pyx_self, CYTHON_UNUSE * */ -static PyObject *__pyx_pf_5pytpm_3tpm_5utc_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_5utc_now[] = "Current UTC as a Julian date.\n\n This function is only accurate to the nearest second.\n\n Returns\n -------\n jd : float\n Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_5utc_now = {__Pyx_NAMESTR("utc_now"), (PyCFunction)__pyx_pf_5pytpm_3tpm_5utc_now, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_5utc_now)}; -static PyObject *__pyx_pf_5pytpm_3tpm_5utc_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_11utc_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_10utc_now[] = "Current UTC as a Julian date.\n\n This function is only accurate to the nearest second.\n\n Returns\n -------\n jd : float\n Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_11utc_now = {"utc_now", (PyCFunction)__pyx_pw_3tpm_11utc_now, METH_NOARGS, __pyx_doc_3tpm_10utc_now}; +static PyObject *__pyx_pw_3tpm_11utc_now(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("utc_now (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_10utc_now(__pyx_self); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_10utc_now(CYTHON_UNUSED PyObject *__pyx_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("utc_now"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("utc_now", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1050 + /* "src/tpm_times.pxi":1050 * * """ * return tpm_times.utc_now() # <<<<<<<<<<<<<< @@ -7717,17 +11651,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_5utc_now(PyObject *__pyx_self, CYTHON_UNUS * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(utc_now()); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1050; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(utc_now()); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1050, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1039 + * + * + * def utc_now(): # <<<<<<<<<<<<<< + * """Current UTC as a Julian date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.utc_now"); + __Pyx_AddTraceback("tpm.utc_now", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7735,7 +11676,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_5utc_now(PyObject *__pyx_self, CYTHON_UNUS return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1053 +/* "src/tpm_times.pxi":1053 * * * def gcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< @@ -7743,69 +11684,93 @@ static PyObject *__pyx_pf_5pytpm_3tpm_5utc_now(PyObject *__pyx_self, CYTHON_UNUS * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6gcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_6gcal2j[] = "Return Julian day number for the Gregorian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n m : int\n Month in the Gregorian calendar.\n dd : int\n Day in the Gregorian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.gcal2j(2000,1,1)\n 2451545.0\n >>> tpm.gcal2j(2010,1,1)\n 2455198.0\n >>> tpm.gcal2j(1950,1,1)\n 2433283.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_6gcal2j = {__Pyx_NAMESTR("gcal2j"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6gcal2j, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_6gcal2j)}; -static PyObject *__pyx_pf_5pytpm_3tpm_6gcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_13gcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_12gcal2j[] = "Return Julian day number for the Gregorian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n m : int\n Month in the Gregorian calendar.\n dd : int\n Day in the Gregorian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.gcal2j(2000,1,1)\n 2451545.0\n >>> tpm.gcal2j(2010,1,1)\n 2455198.0\n >>> tpm.gcal2j(1950,1,1)\n 2433283.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_13gcal2j = {"gcal2j", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_13gcal2j, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_12gcal2j}; +static PyObject *__pyx_pw_3tpm_13gcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_v_y; int __pyx_v_m; int __pyx_v_dd; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__y,&__pyx_n_s__m,&__pyx_n_s__dd,0}; - __Pyx_RefNannySetupContext("gcal2j"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("gcal2j (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_y,&__pyx_n_s_m,&__pyx_n_s_dd,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__m); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("gcal2j", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_m)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("gcal2j", 1, 3, 3, 1); __PYX_ERR(0, 1053, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_dd)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("gcal2j", 1, 3, 3, 2); __PYX_ERR(0, 1053, __pyx_L3_error) + } } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__dd); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("gcal2j", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "gcal2j") < 0)) __PYX_ERR(0, 1053, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "gcal2j") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_y = __Pyx_PyInt_AsInt(values[0]); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_m = __Pyx_PyInt_AsInt(values[1]); if (unlikely((__pyx_v_m == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_dd = __Pyx_PyInt_AsInt(values[2]); if (unlikely((__pyx_v_dd == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_y = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 0)); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_m = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_m == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_dd = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 2)); if (unlikely((__pyx_v_dd == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_y = __Pyx_PyInt_As_int(values[0]); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1053, __pyx_L3_error) + __pyx_v_m = __Pyx_PyInt_As_int(values[1]); if (unlikely((__pyx_v_m == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1053, __pyx_L3_error) + __pyx_v_dd = __Pyx_PyInt_As_int(values[2]); if (unlikely((__pyx_v_dd == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1053, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("gcal2j", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("gcal2j", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1053, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.gcal2j"); + __Pyx_AddTraceback("tpm.gcal2j", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_12gcal2j(__pyx_self, __pyx_v_y, __pyx_v_m, __pyx_v_dd); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_12gcal2j(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_y, int __pyx_v_m, int __pyx_v_dd) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("gcal2j", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1082 + /* "src/tpm_times.pxi":1082 * * """ * return tpm_times.gcal2j(y, m, dd) # <<<<<<<<<<<<<< @@ -7813,17 +11778,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6gcal2j(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(gcal2j(__pyx_v_y, __pyx_v_m, __pyx_v_dd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1082; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(gcal2j(__pyx_v_y, __pyx_v_m, __pyx_v_dd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1053 + * + * + * def gcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< + * """Return Julian day number for the Gregorian calendar date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.gcal2j"); + __Pyx_AddTraceback("tpm.gcal2j", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7831,7 +11803,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6gcal2j(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1085 +/* "src/tpm_times.pxi":1085 * * * def jcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< @@ -7839,69 +11811,93 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6gcal2j(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_7jcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_7jcal2j[] = "Return Julian day number for the Julian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Julian calendar.\n m : int\n Month in the Julian calendar.\n dd : int\n Day in the Julian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n >>> tpm.jcal2j(2000,1,1)\n 2451558.0\n >>> tpm.jcal2j(2010,1,1)\n 2455211.0\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_7jcal2j = {__Pyx_NAMESTR("jcal2j"), (PyCFunction)__pyx_pf_5pytpm_3tpm_7jcal2j, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_7jcal2j)}; -static PyObject *__pyx_pf_5pytpm_3tpm_7jcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_15jcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_14jcal2j[] = "Return Julian day number for the Julian calendar date.\n\n Returns the Julian date for mid-night of the given date.\n\n Parameters\n ----------\n y : int\n Year in the Julian calendar.\n m : int\n Month in the Julian calendar.\n dd : int\n Day in the Julian calendar.\n\n Returns\n -------\n jd : float\n Julian date corresponding to the given date.\n\n Examples\n --------\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n >>> tpm.jcal2j(2000,1,1)\n 2451558.0\n >>> tpm.jcal2j(2010,1,1)\n 2455211.0\n >>> tpm.jcal2j(1950,1,1)\n 2433296.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_15jcal2j = {"jcal2j", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_15jcal2j, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_14jcal2j}; +static PyObject *__pyx_pw_3tpm_15jcal2j(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_v_y; int __pyx_v_m; int __pyx_v_dd; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__y,&__pyx_n_s__m,&__pyx_n_s__dd,0}; - __Pyx_RefNannySetupContext("jcal2j"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("jcal2j (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_y,&__pyx_n_s_m,&__pyx_n_s_dd,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__m); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("jcal2j", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__dd); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("jcal2j", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_m)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("jcal2j", 1, 3, 3, 1); __PYX_ERR(0, 1085, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_dd)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("jcal2j", 1, 3, 3, 2); __PYX_ERR(0, 1085, __pyx_L3_error) + } } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "jcal2j") < 0)) __PYX_ERR(0, 1085, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "jcal2j") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_y = __Pyx_PyInt_AsInt(values[0]); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_m = __Pyx_PyInt_AsInt(values[1]); if (unlikely((__pyx_v_m == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_dd = __Pyx_PyInt_AsInt(values[2]); if (unlikely((__pyx_v_dd == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_y = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 0)); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_m = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_m == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_dd = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 2)); if (unlikely((__pyx_v_dd == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_y = __Pyx_PyInt_As_int(values[0]); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1085, __pyx_L3_error) + __pyx_v_m = __Pyx_PyInt_As_int(values[1]); if (unlikely((__pyx_v_m == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1085, __pyx_L3_error) + __pyx_v_dd = __Pyx_PyInt_As_int(values[2]); if (unlikely((__pyx_v_dd == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1085, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("jcal2j", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("jcal2j", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 1085, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.jcal2j"); + __Pyx_AddTraceback("tpm.jcal2j", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_14jcal2j(__pyx_self, __pyx_v_y, __pyx_v_m, __pyx_v_dd); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_14jcal2j(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_y, int __pyx_v_m, int __pyx_v_dd) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("jcal2j", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1116 + /* "src/tpm_times.pxi":1116 * * """ * return tpm_times.jcal2j(y, m, dd) # <<<<<<<<<<<<<< @@ -7909,17 +11905,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_7jcal2j(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(jcal2j(__pyx_v_y, __pyx_v_m, __pyx_v_dd)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(jcal2j(__pyx_v_y, __pyx_v_m, __pyx_v_dd)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1085 + * + * + * def jcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< + * """Return Julian day number for the Julian calendar date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.jcal2j"); + __Pyx_AddTraceback("tpm.jcal2j", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -7927,7 +11930,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_7jcal2j(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1119 +/* "src/tpm_times.pxi":1119 * * * def j2gcal(double j): # <<<<<<<<<<<<<< @@ -7935,30 +11938,48 @@ static PyObject *__pyx_pf_5pytpm_3tpm_7jcal2j(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__pyx_arg_j); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_8j2gcal[] = "Convert Julian date into Gregorian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Gregorian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2gcal(tpm.J2000)\n {'dd': 1, 'm': 1, 'y': 2000}\n >>> tpm.j2gcal(tpm.B1950)\n {'dd': 31, 'm': 12, 'y': 1949}\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_8j2gcal = {__Pyx_NAMESTR("j2gcal"), (PyCFunction)__pyx_pf_5pytpm_3tpm_8j2gcal, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_8j2gcal)}; -static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__pyx_arg_j) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_17j2gcal(PyObject *__pyx_self, PyObject *__pyx_arg_j); /*proto*/ +static char __pyx_doc_3tpm_16j2gcal[] = "Convert Julian date into Gregorian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Gregorian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2gcal(tpm.J2000)\n {'dd': 1, 'm': 1, 'y': 2000}\n >>> tpm.j2gcal(tpm.B1950)\n {'dd': 31, 'm': 12, 'y': 1949}\n\n "; +static PyMethodDef __pyx_mdef_3tpm_17j2gcal = {"j2gcal", (PyCFunction)__pyx_pw_3tpm_17j2gcal, METH_O, __pyx_doc_3tpm_16j2gcal}; +static PyObject *__pyx_pw_3tpm_17j2gcal(PyObject *__pyx_self, PyObject *__pyx_arg_j) { double __pyx_v_j; - int __pyx_v_y; - int __pyx_v_m; - int __pyx_v_d; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("j2gcal"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("j2gcal (wrapper)", 0); assert(__pyx_arg_j); { - __pyx_v_j = __pyx_PyFloat_AsDouble(__pyx_arg_j); if (unlikely((__pyx_v_j == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1119; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_j = __pyx_PyFloat_AsDouble(__pyx_arg_j); if (unlikely((__pyx_v_j == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1119, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.j2gcal"); + __Pyx_AddTraceback("tpm.j2gcal", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_16j2gcal(__pyx_self, ((double)__pyx_v_j)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_16j2gcal(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_j) { + int __pyx_v_y; + int __pyx_v_m; + int __pyx_v_d; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("j2gcal", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1144 + /* "src/tpm_times.pxi":1144 * """ * cdef int y, m, d * y = m = d = 0; # <<<<<<<<<<<<<< @@ -7969,7 +11990,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__ __pyx_v_m = 0; __pyx_v_d = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1145 + /* "src/tpm_times.pxi":1145 * cdef int y, m, d * y = m = d = 0; * tpm_times.j2gcal(&y, &m, &d, j) # <<<<<<<<<<<<<< @@ -7978,7 +11999,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__ */ j2gcal((&__pyx_v_y), (&__pyx_v_m), (&__pyx_v_d), __pyx_v_j); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1146 + /* "src/tpm_times.pxi":1146 * y = m = d = 0; * tpm_times.j2gcal(&y, &m, &d, j) * return dict(y=y, m=m, dd=d) # <<<<<<<<<<<<<< @@ -7986,30 +12007,37 @@ static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyInt_FromLong(__pyx_v_y); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1146, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_y); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__y), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_y, __pyx_t_2) < 0) __PYX_ERR(0, 1146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromLong(__pyx_v_m); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_m); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__m), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_m, __pyx_t_2) < 0) __PYX_ERR(0, 1146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromLong(__pyx_v_d); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_d); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__dd), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dd, __pyx_t_2) < 0) __PYX_ERR(0, 1146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1119 + * + * + * def j2gcal(double j): # <<<<<<<<<<<<<< + * """Convert Julian date into Gregorian calendar date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.j2gcal"); + __Pyx_AddTraceback("tpm.j2gcal", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8017,7 +12045,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1149 +/* "src/tpm_times.pxi":1149 * * * def j2jcal(double j): # <<<<<<<<<<<<<< @@ -8025,30 +12053,48 @@ static PyObject *__pyx_pf_5pytpm_3tpm_8j2gcal(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__pyx_arg_j); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_9j2jcal[] = "Convert Julian date into Julian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Julian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2jcal(tpm.J2000)\n {'dd': 19, 'm': 12, 'y': 1999}\n >>> tpm.j2jcal(tpm.B1950)\n {'dd': 18, 'm': 12, 'y': 1949}\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_9j2jcal = {__Pyx_NAMESTR("j2jcal"), (PyCFunction)__pyx_pf_5pytpm_3tpm_9j2jcal, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_9j2jcal)}; -static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__pyx_arg_j) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_19j2jcal(PyObject *__pyx_self, PyObject *__pyx_arg_j); /*proto*/ +static char __pyx_doc_3tpm_18j2jcal[] = "Convert Julian date into Julian calendar date.\n\n Returns the year, month and day.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n d : dict\n A dictionary for the date in the Julian calendar. The\n keys in the dictionary are: 'y'=year, 'm'=month, 'dd'=day.\n\n Examples\n --------\n >>> tpm.j2jcal(tpm.J2000)\n {'dd': 19, 'm': 12, 'y': 1999}\n >>> tpm.j2jcal(tpm.B1950)\n {'dd': 18, 'm': 12, 'y': 1949}\n\n "; +static PyMethodDef __pyx_mdef_3tpm_19j2jcal = {"j2jcal", (PyCFunction)__pyx_pw_3tpm_19j2jcal, METH_O, __pyx_doc_3tpm_18j2jcal}; +static PyObject *__pyx_pw_3tpm_19j2jcal(PyObject *__pyx_self, PyObject *__pyx_arg_j) { double __pyx_v_j; - int __pyx_v_y; - int __pyx_v_m; - int __pyx_v_d; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("j2jcal"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("j2jcal (wrapper)", 0); assert(__pyx_arg_j); { - __pyx_v_j = __pyx_PyFloat_AsDouble(__pyx_arg_j); if (unlikely((__pyx_v_j == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1149; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_j = __pyx_PyFloat_AsDouble(__pyx_arg_j); if (unlikely((__pyx_v_j == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1149, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.j2jcal"); + __Pyx_AddTraceback("tpm.j2jcal", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_18j2jcal(__pyx_self, ((double)__pyx_v_j)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_18j2jcal(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_j) { + int __pyx_v_y; + int __pyx_v_m; + int __pyx_v_d; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("j2jcal", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1174 + /* "src/tpm_times.pxi":1174 * """ * cdef int y, m, d * y = m = d = 0; # <<<<<<<<<<<<<< @@ -8059,7 +12105,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__ __pyx_v_m = 0; __pyx_v_d = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1175 + /* "src/tpm_times.pxi":1175 * cdef int y, m, d * y = m = d = 0; * tpm_times.j2jcal(&y, &m, &d, j) # <<<<<<<<<<<<<< @@ -8068,7 +12114,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__ */ j2jcal((&__pyx_v_y), (&__pyx_v_m), (&__pyx_v_d), __pyx_v_j); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1176 + /* "src/tpm_times.pxi":1176 * y = m = d = 0; * tpm_times.j2jcal(&y, &m, &d, j) * return dict(y=y, m=m, dd=d) # <<<<<<<<<<<<<< @@ -8076,30 +12122,37 @@ static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyInt_FromLong(__pyx_v_y); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1176, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_y); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__y), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_y, __pyx_t_2) < 0) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromLong(__pyx_v_m); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_m); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__m), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_m, __pyx_t_2) < 0) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromLong(__pyx_v_d); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_d); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__dd), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dd, __pyx_t_2) < 0) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = ((PyObject *)__pyx_t_1); + __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1149 + * + * + * def j2jcal(double j): # <<<<<<<<<<<<<< + * """Convert Julian date into Julian calendar date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.j2jcal"); + __Pyx_AddTraceback("tpm.j2jcal", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8107,7 +12160,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1179 +/* "src/tpm_times.pxi":1179 * * * def j2y(j): # <<<<<<<<<<<<<< @@ -8115,17 +12168,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_9j2jcal(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_10j2y(PyObject *__pyx_self, PyObject *__pyx_v_j); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_10j2y[] = "Convert Julian date into Gregorian calendar year with fractional part.\n\n Parameters\n ----------\n j : float\n Julian date\n\n Returns\n -------\n year : float\n Year, including fractional part, in the Gregorian\n calendar. This is just (integer_year + day / num_of_days.)\n\n Examples\n --------\n >>> tpm.j2y(tpm.J2000)\n 2000.0040983606557\n >>> 2000+(1.5/366)\n 2000.0040983606557\n >>> tpm.j2y(tpm.J2000+366)\n 2001.004109589041\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_10j2y = {__Pyx_NAMESTR("j2y"), (PyCFunction)__pyx_pf_5pytpm_3tpm_10j2y, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_10j2y)}; -static PyObject *__pyx_pf_5pytpm_3tpm_10j2y(PyObject *__pyx_self, PyObject *__pyx_v_j) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_21j2y(PyObject *__pyx_self, PyObject *__pyx_v_j); /*proto*/ +static char __pyx_doc_3tpm_20j2y[] = "Convert Julian date into Gregorian calendar year with fractional part.\n\n Parameters\n ----------\n j : float\n Julian date\n\n Returns\n -------\n year : float\n Year, including fractional part, in the Gregorian\n calendar. This is just (integer_year + day / num_of_days.)\n\n Examples\n --------\n >>> tpm.j2y(tpm.J2000)\n 2000.0040983606557\n >>> 2000+(1.5/366)\n 2000.0040983606557\n >>> tpm.j2y(tpm.J2000+366)\n 2001.004109589041\n\n "; +static PyMethodDef __pyx_mdef_3tpm_21j2y = {"j2y", (PyCFunction)__pyx_pw_3tpm_21j2y, METH_O, __pyx_doc_3tpm_20j2y}; +static PyObject *__pyx_pw_3tpm_21j2y(PyObject *__pyx_self, PyObject *__pyx_v_j) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("j2y (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_20j2y(__pyx_self, ((PyObject *)__pyx_v_j)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_20j2y(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_j) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("j2y"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("j2y", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1203 + /* "src/tpm_times.pxi":1203 * * """ * return tpm_times.j2y(j) # <<<<<<<<<<<<<< @@ -8133,18 +12201,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_10j2y(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_j); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(j2y(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_j); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1203, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(j2y(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1179 + * + * + * def j2y(j): # <<<<<<<<<<<<<< + * """Convert Julian date into Gregorian calendar year with fractional part. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.j2y"); + __Pyx_AddTraceback("tpm.j2y", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8152,7 +12227,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_10j2y(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1206 +/* "src/tpm_times.pxi":1206 * * * def y2j(y): # <<<<<<<<<<<<<< @@ -8160,17 +12235,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_10j2y(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_11y2j(PyObject *__pyx_self, PyObject *__pyx_v_y); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_11y2j[] = "Convert Gregorian calendar year with fractional part into Julian date.\n\n Parameters\n ----------\n y : float\n Gregorian calendar year with fractional part.\n\n Returns\n -------\n j : float\n Julian date.\n\n Examples\n --------\n >>> tpm.y2j(2000.0040983606557)\n 2451545.0\n >>> tpm.y2j(2001.004109589041)\n 2451911.0\n >>> tpm.j2gcal(tpm.y2j(2001.004109589041))\n {'dd': 1, 'm': 1, 'y': 2001}\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_11y2j = {__Pyx_NAMESTR("y2j"), (PyCFunction)__pyx_pf_5pytpm_3tpm_11y2j, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_11y2j)}; -static PyObject *__pyx_pf_5pytpm_3tpm_11y2j(PyObject *__pyx_self, PyObject *__pyx_v_y) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_23y2j(PyObject *__pyx_self, PyObject *__pyx_v_y); /*proto*/ +static char __pyx_doc_3tpm_22y2j[] = "Convert Gregorian calendar year with fractional part into Julian date.\n\n Parameters\n ----------\n y : float\n Gregorian calendar year with fractional part.\n\n Returns\n -------\n j : float\n Julian date.\n\n Examples\n --------\n >>> tpm.y2j(2000.0040983606557)\n 2451545.0\n >>> tpm.y2j(2001.004109589041)\n 2451911.0\n >>> tpm.j2gcal(tpm.y2j(2001.004109589041))\n {'dd': 1, 'm': 1, 'y': 2001}\n\n "; +static PyMethodDef __pyx_mdef_3tpm_23y2j = {"y2j", (PyCFunction)__pyx_pw_3tpm_23y2j, METH_O, __pyx_doc_3tpm_22y2j}; +static PyObject *__pyx_pw_3tpm_23y2j(PyObject *__pyx_self, PyObject *__pyx_v_y) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("y2j (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_22y2j(__pyx_self, ((PyObject *)__pyx_v_y)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_22y2j(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_y) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("y2j"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("y2j", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1229 + /* "src/tpm_times.pxi":1229 * * """ * return tpm_times.y2j(y) # <<<<<<<<<<<<<< @@ -8178,18 +12268,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_11y2j(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(y2j(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1229, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(y2j(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1206 + * + * + * def y2j(y): # <<<<<<<<<<<<<< + * """Convert Gregorian calendar year with fractional part into Julian date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.y2j"); + __Pyx_AddTraceback("tpm.y2j", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8197,7 +12294,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_11y2j(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1232 +/* "src/tpm_times.pxi":1232 * * * def j2dow(j): # <<<<<<<<<<<<<< @@ -8205,17 +12302,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_11y2j(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_12j2dow(PyObject *__pyx_self, PyObject *__pyx_v_j); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_12j2dow[] = "Return day of week for the given Julian date.\n\n Parameters\n ----------\n j : float\n Julian date (Gregorian calendar).\n\n Returns\n -------\n dow : int\n Day of the week: 0 - Sunday, 6 - Saturday.\n\n Examples\n --------\n >>> j = tpm.gcal2j(2010,1,1)\n >>> tpm.fmt_y(tpm.j2y(j))\n 'Fri Jan 1 12:00:00.000 2010'\n >>> tpm.j2dow(j)\n 5\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_12j2dow = {__Pyx_NAMESTR("j2dow"), (PyCFunction)__pyx_pf_5pytpm_3tpm_12j2dow, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_12j2dow)}; -static PyObject *__pyx_pf_5pytpm_3tpm_12j2dow(PyObject *__pyx_self, PyObject *__pyx_v_j) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_25j2dow(PyObject *__pyx_self, PyObject *__pyx_v_j); /*proto*/ +static char __pyx_doc_3tpm_24j2dow[] = "Return day of week for the given Julian date.\n\n Parameters\n ----------\n j : float\n Julian date (Gregorian calendar).\n\n Returns\n -------\n dow : int\n Day of the week: 0 - Sunday, 6 - Saturday.\n\n Examples\n --------\n >>> j = tpm.gcal2j(2010,1,1)\n >>> tpm.fmt_y(tpm.j2y(j))\n 'Fri Jan 1 12:00:00.000 2010'\n >>> tpm.j2dow(j)\n 5\n\n "; +static PyMethodDef __pyx_mdef_3tpm_25j2dow = {"j2dow", (PyCFunction)__pyx_pw_3tpm_25j2dow, METH_O, __pyx_doc_3tpm_24j2dow}; +static PyObject *__pyx_pw_3tpm_25j2dow(PyObject *__pyx_self, PyObject *__pyx_v_j) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("j2dow (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_24j2dow(__pyx_self, ((PyObject *)__pyx_v_j)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_24j2dow(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_j) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("j2dow"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("j2dow", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1254 + /* "src/tpm_times.pxi":1254 * * """ * return tpm_times.j2dow(j) # <<<<<<<<<<<<<< @@ -8223,18 +12335,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_12j2dow(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_j); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyInt_FromLong(j2dow(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_j); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1254, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyInt_From_int(j2dow(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1232 + * + * + * def j2dow(j): # <<<<<<<<<<<<<< + * """Return day of week for the given Julian date. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.j2dow"); + __Pyx_AddTraceback("tpm.j2dow", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8242,7 +12361,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_12j2dow(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1257 +/* "src/tpm_times.pxi":1257 * * * def y2doy(int y): # <<<<<<<<<<<<<< @@ -8250,26 +12369,44 @@ static PyObject *__pyx_pf_5pytpm_3tpm_12j2dow(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_13y2doy(PyObject *__pyx_self, PyObject *__pyx_arg_y); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_13y2doy[] = "Return number of days in the given Gregorian calendar year.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n\n Returns\n -------\n doy : int\n Number of days in the year.\n\n Examples\n --------\n >>> tpm.y2doy(2000)\n 366\n >>> tpm.y2doy(2001)\n 365\n >>> tpm.y2doy(2002)\n 365\n >>> tpm.y2doy(2003)\n 365\n >>> tpm.y2doy(2004)\n 366\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_13y2doy = {__Pyx_NAMESTR("y2doy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_13y2doy, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_13y2doy)}; -static PyObject *__pyx_pf_5pytpm_3tpm_13y2doy(PyObject *__pyx_self, PyObject *__pyx_arg_y) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_27y2doy(PyObject *__pyx_self, PyObject *__pyx_arg_y); /*proto*/ +static char __pyx_doc_3tpm_26y2doy[] = "Return number of days in the given Gregorian calendar year.\n\n Parameters\n ----------\n y : int\n Year in the Gregorian calendar.\n\n Returns\n -------\n doy : int\n Number of days in the year.\n\n Examples\n --------\n >>> tpm.y2doy(2000)\n 366\n >>> tpm.y2doy(2001)\n 365\n >>> tpm.y2doy(2002)\n 365\n >>> tpm.y2doy(2003)\n 365\n >>> tpm.y2doy(2004)\n 366\n\n "; +static PyMethodDef __pyx_mdef_3tpm_27y2doy = {"y2doy", (PyCFunction)__pyx_pw_3tpm_27y2doy, METH_O, __pyx_doc_3tpm_26y2doy}; +static PyObject *__pyx_pw_3tpm_27y2doy(PyObject *__pyx_self, PyObject *__pyx_arg_y) { int __pyx_v_y; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("y2doy"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("y2doy (wrapper)", 0); assert(__pyx_arg_y); { - __pyx_v_y = __Pyx_PyInt_AsInt(__pyx_arg_y); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1257; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_y = __Pyx_PyInt_As_int(__pyx_arg_y); if (unlikely((__pyx_v_y == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1257, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.y2doy"); + __Pyx_AddTraceback("tpm.y2doy", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_26y2doy(__pyx_self, ((int)__pyx_v_y)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_26y2doy(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_y) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("y2doy", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1284 + /* "src/tpm_times.pxi":1284 * * """ * return tpm_times.y2doy(y) # <<<<<<<<<<<<<< @@ -8277,17 +12414,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_13y2doy(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyInt_FromLong(y2doy(__pyx_v_y)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(y2doy(__pyx_v_y)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1257 + * + * + * def y2doy(int y): # <<<<<<<<<<<<<< + * """Return number of days in the given Gregorian calendar year. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.y2doy"); + __Pyx_AddTraceback("tpm.y2doy", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8295,7 +12439,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_13y2doy(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1287 +/* "src/tpm_times.pxi":1287 * * * def fmt_alpha(alpha): # <<<<<<<<<<<<<< @@ -8303,18 +12447,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_13y2doy(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_14fmt_alpha(PyObject *__pyx_self, PyObject *__pyx_v_alpha); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_14fmt_alpha[] = "Normalize and format angle in radians into a str: ' ##H ##M ##.###S'.\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form ' ##H ##M ##.###S'.\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [0,360) and then converts it into a string that represents\n angle/time in the 24-hour format. The angle is properly divided\n into hours, minutes and seconds.\n\n This is useful for formatting \"longitudinal\" angles, such as right\n ascension.\n\n Examples\n --------\n >>> tpm.fmt_alpha(tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI)\n ' 00H 00M 00.000S'\n >>> tpm.fmt_alpha(tpm.M_PI/2.0)\n ' 06H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI/2.0)\n ' 18H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI+(tpm.M_PI/12.0))\n ' 00H 59M 59.999S'\n >>> tpm.fmt_alpha(-(2*tpm.M_PI+(tpm.M_PI/12.0)))\n ' 23H 00M 00.000S'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_14fmt_alpha = {__Pyx_NAMESTR("fmt_alpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_14fmt_alpha, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_14fmt_alpha)}; -static PyObject *__pyx_pf_5pytpm_3tpm_14fmt_alpha(PyObject *__pyx_self, PyObject *__pyx_v_alpha) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_29fmt_alpha(PyObject *__pyx_self, PyObject *__pyx_v_alpha); /*proto*/ +static char __pyx_doc_3tpm_28fmt_alpha[] = "Normalize and format angle in radians into a str: ' ##H ##M ##.###S'.\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form ' ##H ##M ##.###S'.\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [0,360) and then converts it into a string that represents\n angle/time in the 24-hour format. The angle is properly divided\n into hours, minutes and seconds.\n\n This is useful for formatting \"longitudinal\" angles, such as right\n ascension.\n\n Examples\n --------\n >>> tpm.fmt_alpha(tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI)\n ' 12H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI)\n ' 00H 00M 00.000S'\n >>> tpm.fmt_alpha(tpm.M_PI/2.0)\n ' 06H 00M 00.000S'\n >>> tpm.fmt_alpha(-tpm.M_PI/2.0)\n ' 18H 00M 00.000S'\n >>> tpm.fmt_alpha(2*tpm.M_PI+(tpm.M_PI/12.0))\n ' 00H 59M 59.999S'\n >>> tpm.fmt_alpha(-(2*tpm.M_PI+(tpm.M_PI/12.0)))\n ' 23H 00M 00.000S'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_29fmt_alpha = {"fmt_alpha", (PyCFunction)__pyx_pw_3tpm_29fmt_alpha, METH_O, __pyx_doc_3tpm_28fmt_alpha}; +static PyObject *__pyx_pw_3tpm_29fmt_alpha(PyObject *__pyx_self, PyObject *__pyx_v_alpha) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_alpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_28fmt_alpha(__pyx_self, ((PyObject *)__pyx_v_alpha)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_28fmt_alpha(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_alpha"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_alpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1328 + /* "src/tpm_times.pxi":1328 * * """ * return tpm_times.fmt_alpha(alpha).decode("utf-8") # <<<<<<<<<<<<<< @@ -8322,20 +12481,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_14fmt_alpha(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1328, __pyx_L1_error) __pyx_t_2 = fmt_alpha(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1328, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1287 + * + * + * def fmt_alpha(alpha): # <<<<<<<<<<<<<< + * """Normalize and format angle in radians into a str: ' ##H ##M ##.###S'. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_alpha"); + __Pyx_AddTraceback("tpm.fmt_alpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8343,7 +12509,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_14fmt_alpha(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1331 +/* "src/tpm_times.pxi":1331 * * * def fmt_delta(delta): # <<<<<<<<<<<<<< @@ -8351,18 +12517,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_14fmt_alpha(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_15fmt_delta(PyObject *__pyx_self, PyObject *__pyx_v_delta); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_15fmt_delta[] = "Normalize and format angle in radians into a str: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Return\n ------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [-\317\200/2, \317\200/2] and then formats it into a string of the form\n \302\261###D ##' ##.###\", where each part of the string corresponds to\n degrees, arc-minutes and arc-seconds.\n\n This is useful for formatted output of \"latitudinal\" angles, such\n as declination.\n\n Examples\n --------\n >>> tpm.fmt_delta(tpm.M_PI/2.0)\n '+90D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI/2.0)\n '-90D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI/4.0)\n '+45D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI)\n '+00D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI)\n '+00D 00' 00.000\"'\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_15fmt_delta = {__Pyx_NAMESTR("fmt_delta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_15fmt_delta, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_15fmt_delta)}; -static PyObject *__pyx_pf_5pytpm_3tpm_15fmt_delta(PyObject *__pyx_self, PyObject *__pyx_v_delta) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_31fmt_delta(PyObject *__pyx_self, PyObject *__pyx_v_delta); /*proto*/ +static char __pyx_doc_3tpm_30fmt_delta[] = "Normalize and format angle in radians into a str: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n alpha : float\n Angle in radians.\n\n Return\n ------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function normalizes the given angle in radians into the range\n [-\317\200/2, \317\200/2] and then formats it into a string of the form\n \302\261###D ##' ##.###\", where each part of the string corresponds to\n degrees, arc-minutes and arc-seconds.\n\n This is useful for formatted output of \"latitudinal\" angles, such\n as declination.\n\n Examples\n --------\n >>> tpm.fmt_delta(tpm.M_PI/2.0)\n '+90D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI/2.0)\n '-90D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI/4.0)\n '+45D 00' 00.000\"'\n >>> tpm.fmt_delta(tpm.M_PI)\n '+00D 00' 00.000\"'\n >>> tpm.fmt_delta(-tpm.M_PI)\n '+00D 00' 00.000\"'\n "; +static PyMethodDef __pyx_mdef_3tpm_31fmt_delta = {"fmt_delta", (PyCFunction)__pyx_pw_3tpm_31fmt_delta, METH_O, __pyx_doc_3tpm_30fmt_delta}; +static PyObject *__pyx_pw_3tpm_31fmt_delta(PyObject *__pyx_self, PyObject *__pyx_v_delta) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_delta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_30fmt_delta(__pyx_self, ((PyObject *)__pyx_v_delta)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_30fmt_delta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_delta) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_delta"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_delta", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1367 + /* "src/tpm_times.pxi":1367 * '+00D 00\' 00.000"' * """ * return tpm_times.fmt_delta(delta).decode("utf-8") # <<<<<<<<<<<<<< @@ -8370,20 +12551,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_15fmt_delta(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1367; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1367, __pyx_L1_error) __pyx_t_2 = fmt_delta(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1367; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1367, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1331 + * + * + * def fmt_delta(delta): # <<<<<<<<<<<<<< + * """Normalize and format angle in radians into a str: ###D ##' ##.###". + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_delta"); + __Pyx_AddTraceback("tpm.fmt_delta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8391,7 +12579,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_15fmt_delta(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1370 +/* "src/tpm_times.pxi":1370 * * * def fmt_d(d): # <<<<<<<<<<<<<< @@ -8399,18 +12587,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_15fmt_delta(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_16fmt_d(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_16fmt_d[] = "Format angle in degrees into a string: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function will format the given angle in degrees, into a string\n containing degrees, arc-minutes and arc-seconds. The angle is not\n normalized into any range, but is used as such.\n\n The degrees part can be two or three digits long.\n\n Examples\n --------\n >>> tpm.fmt_d(1.234567)\n '+01D 14' 04.441\"'\n >>> tpm.fmt_d(256.9)\n '+256D 53' 59.999\"'\n >>> tpm.fmt_d(-256.9)\n '-256D 53' 59.999\"'\n >>> tpm.fmt_d(6.9)\n '+06D 54' 00.000\"'\n >>> tpm.fmt_d(-361)\n '-361D 00' 00.000\"'\n >>> tpm.fmt_d(720)\n '+720D 00' 00.000\"'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_16fmt_d = {__Pyx_NAMESTR("fmt_d"), (PyCFunction)__pyx_pf_5pytpm_3tpm_16fmt_d, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_16fmt_d)}; -static PyObject *__pyx_pf_5pytpm_3tpm_16fmt_d(PyObject *__pyx_self, PyObject *__pyx_v_d) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_33fmt_d(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ +static char __pyx_doc_3tpm_32fmt_d[] = "Format angle in degrees into a string: \302\261###D ##' ##.###\".\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n fmts : str\n String of the form \302\261###D ##' ##.###\".\n\n Notes\n -----\n This function will format the given angle in degrees, into a string\n containing degrees, arc-minutes and arc-seconds. The angle is not\n normalized into any range, but is used as such.\n\n The degrees part can be two or three digits long.\n\n Examples\n --------\n >>> tpm.fmt_d(1.234567)\n '+01D 14' 04.441\"'\n >>> tpm.fmt_d(256.9)\n '+256D 53' 59.999\"'\n >>> tpm.fmt_d(-256.9)\n '-256D 53' 59.999\"'\n >>> tpm.fmt_d(6.9)\n '+06D 54' 00.000\"'\n >>> tpm.fmt_d(-361)\n '-361D 00' 00.000\"'\n >>> tpm.fmt_d(720)\n '+720D 00' 00.000\"'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_33fmt_d = {"fmt_d", (PyCFunction)__pyx_pw_3tpm_33fmt_d, METH_O, __pyx_doc_3tpm_32fmt_d}; +static PyObject *__pyx_pw_3tpm_33fmt_d(PyObject *__pyx_self, PyObject *__pyx_v_d) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_d (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_32fmt_d(__pyx_self, ((PyObject *)__pyx_v_d)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_32fmt_d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_d"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_d", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1407 + /* "src/tpm_times.pxi":1407 * * """ * return tpm_times.fmt_d(d).decode("utf-8") # <<<<<<<<<<<<<< @@ -8418,20 +12621,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_16fmt_d(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1407, __pyx_L1_error) __pyx_t_2 = fmt_d(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1407, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1370 + * + * + * def fmt_d(d): # <<<<<<<<<<<<<< + * """Format angle in degrees into a string: ###D ##' ##.###". + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_d"); + __Pyx_AddTraceback("tpm.fmt_d", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8439,7 +12649,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_16fmt_d(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1410 +/* "src/tpm_times.pxi":1410 * * * def fmt_h(h): # <<<<<<<<<<<<<< @@ -8447,18 +12657,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_16fmt_d(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_17fmt_h(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_17fmt_h[] = "Format hours into a string: \302\261##H ##M ##.###S\".\n\n Parameters\n ----------\n d : float\n Angle in hours.\n\n Returns\n -------\n fmts : str\n String of the form \302\261##H ##M ##.###S.\n\n Notes\n -----\n This function will format the given angle in hours, into a string\n containing hours, minutes and seconds. The angle is not normalized\n into any range, but is used as such.\n\n Examples\n --------\n >>> tpm.fmt_h(1.23456)\n ' 01H 14M 04.416S'\n >>> tpm.fmt_h(13.456)\n ' 13H 27M 21.599S'\n >>> tpm.fmt_h(-13.456)\n '-13H 27M 21.599S'\n >>> tpm.fmt_h(-133.456)\n '-133H 27M 21.599S'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_17fmt_h = {__Pyx_NAMESTR("fmt_h"), (PyCFunction)__pyx_pf_5pytpm_3tpm_17fmt_h, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_17fmt_h)}; -static PyObject *__pyx_pf_5pytpm_3tpm_17fmt_h(PyObject *__pyx_self, PyObject *__pyx_v_h) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_35fmt_h(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ +static char __pyx_doc_3tpm_34fmt_h[] = "Format hours into a string: \302\261##H ##M ##.###S\".\n\n Parameters\n ----------\n d : float\n Angle in hours.\n\n Returns\n -------\n fmts : str\n String of the form \302\261##H ##M ##.###S.\n\n Notes\n -----\n This function will format the given angle in hours, into a string\n containing hours, minutes and seconds. The angle is not normalized\n into any range, but is used as such.\n\n Examples\n --------\n >>> tpm.fmt_h(1.23456)\n ' 01H 14M 04.416S'\n >>> tpm.fmt_h(13.456)\n ' 13H 27M 21.599S'\n >>> tpm.fmt_h(-13.456)\n '-13H 27M 21.599S'\n >>> tpm.fmt_h(-133.456)\n '-133H 27M 21.599S'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_35fmt_h = {"fmt_h", (PyCFunction)__pyx_pw_3tpm_35fmt_h, METH_O, __pyx_doc_3tpm_34fmt_h}; +static PyObject *__pyx_pw_3tpm_35fmt_h(PyObject *__pyx_self, PyObject *__pyx_v_h) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_h (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_34fmt_h(__pyx_self, ((PyObject *)__pyx_v_h)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_34fmt_h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_h"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_h", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1441 + /* "src/tpm_times.pxi":1441 * * """ * return tpm_times.fmt_h(h).decode("utf-8") # <<<<<<<<<<<<<< @@ -8466,20 +12691,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_17fmt_h(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1441; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1441, __pyx_L1_error) __pyx_t_2 = fmt_h(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1441; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1441, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1410 + * + * + * def fmt_h(h): # <<<<<<<<<<<<<< + * """Format hours into a string: ##H ##M ##.###S". + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_h"); + __Pyx_AddTraceback("tpm.fmt_h", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8487,7 +12719,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_17fmt_h(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1444 +/* "src/tpm_times.pxi":1444 * * * def fmt_j(j): # <<<<<<<<<<<<<< @@ -8495,18 +12727,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_17fmt_h(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_18fmt_j(PyObject *__pyx_self, PyObject *__pyx_v_j); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_18fmt_j[] = "Format Julian date into a string.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n fmts : str\n String of the form: JD ##H ##M ##.###S.\n\n Notes\n -----\n This function takes a Julian date and returns a string that has a\n whole number Julian date and the fraction of the day expressed as\n hours, minutes and seconds in the 24-hour format.\n\n Examples\n --------\n >>> tpm.fmt_j(tpm.J2000)\n ' 2451545 00H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.5)\n ' 2451545 12H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.75)\n ' 2451545 18H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.7)\n ' 2451545 16H 48M 00.000S'\n >>> tpm.fmt_j(tpm.J2000-0.7)\n ' 2451544 07H 11M 59.999S'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_18fmt_j = {__Pyx_NAMESTR("fmt_j"), (PyCFunction)__pyx_pf_5pytpm_3tpm_18fmt_j, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_18fmt_j)}; -static PyObject *__pyx_pf_5pytpm_3tpm_18fmt_j(PyObject *__pyx_self, PyObject *__pyx_v_j) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_37fmt_j(PyObject *__pyx_self, PyObject *__pyx_v_j); /*proto*/ +static char __pyx_doc_3tpm_36fmt_j[] = "Format Julian date into a string.\n\n Parameters\n ----------\n j : float\n Julian date.\n\n Returns\n -------\n fmts : str\n String of the form: JD ##H ##M ##.###S.\n\n Notes\n -----\n This function takes a Julian date and returns a string that has a\n whole number Julian date and the fraction of the day expressed as\n hours, minutes and seconds in the 24-hour format.\n\n Examples\n --------\n >>> tpm.fmt_j(tpm.J2000)\n ' 2451545 00H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.5)\n ' 2451545 12H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.75)\n ' 2451545 18H 00M 00.000S'\n >>> tpm.fmt_j(tpm.J2000+0.7)\n ' 2451545 16H 48M 00.000S'\n >>> tpm.fmt_j(tpm.J2000-0.7)\n ' 2451544 07H 11M 59.999S'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_37fmt_j = {"fmt_j", (PyCFunction)__pyx_pw_3tpm_37fmt_j, METH_O, __pyx_doc_3tpm_36fmt_j}; +static PyObject *__pyx_pw_3tpm_37fmt_j(PyObject *__pyx_self, PyObject *__pyx_v_j) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_j (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_36fmt_j(__pyx_self, ((PyObject *)__pyx_v_j)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_36fmt_j(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_j) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_j"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_j", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1477 + /* "src/tpm_times.pxi":1477 * * """ * return tpm_times.fmt_j(j).decode("utf-8") # <<<<<<<<<<<<<< @@ -8514,20 +12761,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_18fmt_j(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_j); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_j); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1477, __pyx_L1_error) __pyx_t_2 = fmt_j(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1477, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1444 + * + * + * def fmt_j(j): # <<<<<<<<<<<<<< + * """Format Julian date into a string. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_j"); + __Pyx_AddTraceback("tpm.fmt_j", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8535,7 +12789,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_18fmt_j(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1480 +/* "src/tpm_times.pxi":1480 * * * def fmt_r(r): # <<<<<<<<<<<<<< @@ -8543,18 +12797,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_18fmt_j(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_19fmt_r(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_19fmt_r[] = "Format radians into a string with angle expressed as degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form: \302\261###D ##' ##.###\".\n\n Notes\n -----\n The function converts the angle given in radians into degrees and\n then return a string of the format \302\261###D ##' ##.###\". The\n fractional part of the angle is converted into arc-minutes and\n arc-seconds, but otherwise no normalization is done.\n\n Examples\n --------\n >>> tpm.fmt_r(1.0)\n '+57D 17' 44.806\"'\n >>> tpm.fmt_r(1.2345)\n '+70D 43' 53.903\"'\n >>> tpm.fmt_r(-2*tpm.M_PI)\n '-360D 00' 00.000\"'\n >>> tpm.fmt_r(-3*tpm.M_PI)\n '-540D 00' 00.000\"'\n >>> tpm.fmt_r(3*tpm.M_PI)\n '+540D 00' 00.000\"'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_19fmt_r = {__Pyx_NAMESTR("fmt_r"), (PyCFunction)__pyx_pf_5pytpm_3tpm_19fmt_r, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_19fmt_r)}; -static PyObject *__pyx_pf_5pytpm_3tpm_19fmt_r(PyObject *__pyx_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_39fmt_r(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ +static char __pyx_doc_3tpm_38fmt_r[] = "Format radians into a string with angle expressed as degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n fmts : str\n String of the form: \302\261###D ##' ##.###\".\n\n Notes\n -----\n The function converts the angle given in radians into degrees and\n then return a string of the format \302\261###D ##' ##.###\". The\n fractional part of the angle is converted into arc-minutes and\n arc-seconds, but otherwise no normalization is done.\n\n Examples\n --------\n >>> tpm.fmt_r(1.0)\n '+57D 17' 44.806\"'\n >>> tpm.fmt_r(1.2345)\n '+70D 43' 53.903\"'\n >>> tpm.fmt_r(-2*tpm.M_PI)\n '-360D 00' 00.000\"'\n >>> tpm.fmt_r(-3*tpm.M_PI)\n '-540D 00' 00.000\"'\n >>> tpm.fmt_r(3*tpm.M_PI)\n '+540D 00' 00.000\"'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_39fmt_r = {"fmt_r", (PyCFunction)__pyx_pw_3tpm_39fmt_r, METH_O, __pyx_doc_3tpm_38fmt_r}; +static PyObject *__pyx_pw_3tpm_39fmt_r(PyObject *__pyx_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_r (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_38fmt_r(__pyx_self, ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_38fmt_r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_r"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_r", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1514 + /* "src/tpm_times.pxi":1514 * * """ * return tpm_times.fmt_r(r).decode("utf-8") # <<<<<<<<<<<<<< @@ -8562,20 +12831,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_19fmt_r(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1514, __pyx_L1_error) __pyx_t_2 = fmt_r(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1514, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1480 + * + * + * def fmt_r(r): # <<<<<<<<<<<<<< + * """Format radians into a string with angle expressed as degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_r"); + __Pyx_AddTraceback("tpm.fmt_r", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8583,7 +12859,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_19fmt_r(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1517 +/* "src/tpm_times.pxi":1517 * * * def fmt_y(y): # <<<<<<<<<<<<<< @@ -8591,18 +12867,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_19fmt_r(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_20fmt_y(PyObject *__pyx_self, PyObject *__pyx_v_y); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_20fmt_y[] = "Format years, including fractional part, into a string.\n\n Parameters\n ----------\n y : float\n Year, including fractional part.\n\n Returns\n -------\n fmts : str\n String of the form: AAA BBB DD HH:MM:SS.SSS YYYY, where AAA is\n the week day, BBB is the month and then the numbers that follow\n are indicate the day, the time in 24-hour format and the year.\n\n Examples\n --------\n >>> tpm.fmt_y(2000.0)\n 'Fri Dec 31 00:00:00.000 1999'\n >>> tpm.fmt_y(2000.0+1.0/366)\n 'Sat Jan 1 00:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.25/366)\n 'Sat Jan 1 06:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.7/366)\n 'Sat Jan 1 16:48:00.000 2000'\n >>> tpm.fmt_y(2001.0+32/365.0)\n 'Thu Feb 1 00:00:00.000 2001'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_20fmt_y = {__Pyx_NAMESTR("fmt_y"), (PyCFunction)__pyx_pf_5pytpm_3tpm_20fmt_y, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_20fmt_y)}; -static PyObject *__pyx_pf_5pytpm_3tpm_20fmt_y(PyObject *__pyx_self, PyObject *__pyx_v_y) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_41fmt_y(PyObject *__pyx_self, PyObject *__pyx_v_y); /*proto*/ +static char __pyx_doc_3tpm_40fmt_y[] = "Format years, including fractional part, into a string.\n\n Parameters\n ----------\n y : float\n Year, including fractional part.\n\n Returns\n -------\n fmts : str\n String of the form: AAA BBB DD HH:MM:SS.SSS YYYY, where AAA is\n the week day, BBB is the month and then the numbers that follow\n are indicate the day, the time in 24-hour format and the year.\n\n Examples\n --------\n >>> tpm.fmt_y(2000.0)\n 'Fri Dec 31 00:00:00.000 1999'\n >>> tpm.fmt_y(2000.0+1.0/366)\n 'Sat Jan 1 00:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.25/366)\n 'Sat Jan 1 06:00:00.000 2000'\n >>> tpm.fmt_y(2000.0+1.7/366)\n 'Sat Jan 1 16:48:00.000 2000'\n >>> tpm.fmt_y(2001.0+32/365.0)\n 'Thu Feb 1 00:00:00.000 2001'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_41fmt_y = {"fmt_y", (PyCFunction)__pyx_pw_3tpm_41fmt_y, METH_O, __pyx_doc_3tpm_40fmt_y}; +static PyObject *__pyx_pw_3tpm_41fmt_y(PyObject *__pyx_self, PyObject *__pyx_v_y) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fmt_y (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_40fmt_y(__pyx_self, ((PyObject *)__pyx_v_y)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_40fmt_y(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_y) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("fmt_y"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fmt_y", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1546 + /* "src/tpm_times.pxi":1546 * * """ * return tpm_times.fmt_y(y).decode("utf-8") # <<<<<<<<<<<<<< @@ -8610,20 +12901,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_20fmt_y(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1546, __pyx_L1_error) __pyx_t_2 = fmt_y(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1546, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1517 + * + * + * def fmt_y(y): # <<<<<<<<<<<<<< + * """Format years, including fractional part, into a string. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.fmt_y"); + __Pyx_AddTraceback("tpm.fmt_y", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8631,7 +12929,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_20fmt_y(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1549 +/* "src/tpm_times.pxi":1549 * * * def d2d(d): # <<<<<<<<<<<<<< @@ -8639,17 +12937,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_20fmt_y(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_21d2d(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_21d2d[] = "Normalize angle in degrees into (-360, 360).\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in degrees normalized into (-360, 360).\n\n Examples\n --------\n >>> tpm.d2d(0.0)\n 0.0\n >>> tpm.d2d(-360.0)\n 0.0\n >>> tpm.d2d(360.0)\n 0.0\n >>> tpm.d2d(361.0)\n 1.0\n >>> tpm.d2d(-361.0)\n 359.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_21d2d = {__Pyx_NAMESTR("d2d"), (PyCFunction)__pyx_pf_5pytpm_3tpm_21d2d, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_21d2d)}; -static PyObject *__pyx_pf_5pytpm_3tpm_21d2d(PyObject *__pyx_self, PyObject *__pyx_v_d) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_43d2d(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ +static char __pyx_doc_3tpm_42d2d[] = "Normalize angle in degrees into (-360, 360).\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in degrees normalized into (-360, 360).\n\n Examples\n --------\n >>> tpm.d2d(0.0)\n 0.0\n >>> tpm.d2d(-360.0)\n 0.0\n >>> tpm.d2d(360.0)\n 0.0\n >>> tpm.d2d(361.0)\n 1.0\n >>> tpm.d2d(-361.0)\n 359.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_43d2d = {"d2d", (PyCFunction)__pyx_pw_3tpm_43d2d, METH_O, __pyx_doc_3tpm_42d2d}; +static PyObject *__pyx_pw_3tpm_43d2d(PyObject *__pyx_self, PyObject *__pyx_v_d) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("d2d (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_42d2d(__pyx_self, ((PyObject *)__pyx_v_d)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_42d2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("d2d"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("d2d", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1576 + /* "src/tpm_times.pxi":1576 * * """ * return tpm_times.d2d(d) # <<<<<<<<<<<<<< @@ -8657,18 +12970,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_21d2d(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(d2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1576, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(d2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1549 + * + * + * def d2d(d): # <<<<<<<<<<<<<< + * """Normalize angle in degrees into (-360, 360). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.d2d"); + __Pyx_AddTraceback("tpm.d2d", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8676,7 +12996,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_21d2d(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1579 +/* "src/tpm_times.pxi":1579 * * * def h2h(h): # <<<<<<<<<<<<<< @@ -8684,17 +13004,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_21d2d(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_22h2h(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_22h2h[] = "Normalize angle in hours into [0, 24).\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n h : float\n Angle in hours normalized into [0, 24).\n\n Examples\n --------\n >>> tpm.h2h(0.0)\n 0.0\n >>> tpm.h2h(24.0)\n 0.0\n >>> tpm.h2h(25.0)\n 1.0\n >>> tpm.h2h(-25.0)\n 23.0\n >>> tpm.h2h(-1)\n 23.0\n >>> tpm.h2h(1)\n 1.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_22h2h = {__Pyx_NAMESTR("h2h"), (PyCFunction)__pyx_pf_5pytpm_3tpm_22h2h, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_22h2h)}; -static PyObject *__pyx_pf_5pytpm_3tpm_22h2h(PyObject *__pyx_self, PyObject *__pyx_v_h) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_45h2h(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ +static char __pyx_doc_3tpm_44h2h[] = "Normalize angle in hours into [0, 24).\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n h : float\n Angle in hours normalized into [0, 24).\n\n Examples\n --------\n >>> tpm.h2h(0.0)\n 0.0\n >>> tpm.h2h(24.0)\n 0.0\n >>> tpm.h2h(25.0)\n 1.0\n >>> tpm.h2h(-25.0)\n 23.0\n >>> tpm.h2h(-1)\n 23.0\n >>> tpm.h2h(1)\n 1.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_45h2h = {"h2h", (PyCFunction)__pyx_pw_3tpm_45h2h, METH_O, __pyx_doc_3tpm_44h2h}; +static PyObject *__pyx_pw_3tpm_45h2h(PyObject *__pyx_self, PyObject *__pyx_v_h) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("h2h (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_44h2h(__pyx_self, ((PyObject *)__pyx_v_h)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_44h2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("h2h"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("h2h", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1608 + /* "src/tpm_times.pxi":1608 * * """ * return tpm_times.h2h(h) # <<<<<<<<<<<<<< @@ -8702,18 +13037,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_22h2h(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1608; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(h2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1608; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1608, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(h2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1579 + * + * + * def h2h(h): # <<<<<<<<<<<<<< + * """Normalize angle in hours into [0, 24). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.h2h"); + __Pyx_AddTraceback("tpm.h2h", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8721,7 +13063,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_22h2h(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1611 +/* "src/tpm_times.pxi":1611 * * * def r2r(r): # <<<<<<<<<<<<<< @@ -8729,17 +13071,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_22h2h(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_23r2r(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_23r2r[] = "Normalize angle in radians into [0, 2\317\200).\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n r : float\n Angle in radians normalized into [0, 2\317\200).\n\n Examples\n --------\n >>> tpm.r2r(0.0)\n 0.0\n >>> tpm.r2r(2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(-tpm.M_PI/2.0)\n 4.7123889803846897\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_23r2r = {__Pyx_NAMESTR("r2r"), (PyCFunction)__pyx_pf_5pytpm_3tpm_23r2r, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_23r2r)}; -static PyObject *__pyx_pf_5pytpm_3tpm_23r2r(PyObject *__pyx_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_47r2r(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ +static char __pyx_doc_3tpm_46r2r[] = "Normalize angle in radians into [0, 2\317\200).\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n r : float\n Angle in radians normalized into [0, 2\317\200).\n\n Examples\n --------\n >>> tpm.r2r(0.0)\n 0.0\n >>> tpm.r2r(2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-tpm.M_PI)\n 3.1415926535897931\n >>> tpm.r2r(-2*tpm.M_PI)\n 0.0\n >>> tpm.r2r(-tpm.M_PI/2.0)\n 4.7123889803846897\n\n "; +static PyMethodDef __pyx_mdef_3tpm_47r2r = {"r2r", (PyCFunction)__pyx_pw_3tpm_47r2r, METH_O, __pyx_doc_3tpm_46r2r}; +static PyObject *__pyx_pw_3tpm_47r2r(PyObject *__pyx_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("r2r (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_46r2r(__pyx_self, ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_46r2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("r2r"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("r2r", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1640 + /* "src/tpm_times.pxi":1640 * * """ * return tpm_times.r2r(r) # <<<<<<<<<<<<<< @@ -8747,18 +13104,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_23r2r(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1640; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(r2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1640; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1640, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(r2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1611 + * + * + * def r2r(r): # <<<<<<<<<<<<<< + * """Normalize angle in radians into [0, 2). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.r2r"); + __Pyx_AddTraceback("tpm.r2r", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8766,7 +13130,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_23r2r(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1646 +/* "src/tpm_times.pxi":1646 * # times.h. I am including all of these in tpm_times for * # convenience. * def d2h(d): # <<<<<<<<<<<<<< @@ -8774,17 +13138,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_23r2r(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_24d2h(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_24d2h[] = "Convert angle in degrees into hours.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.d2h(180.0)\n 12.0\n >>> tpm.d2h(-180.0)\n -12.0\n >>> tpm.d2h(12.3456)\n 0.82303999999999999\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_24d2h = {__Pyx_NAMESTR("d2h"), (PyCFunction)__pyx_pf_5pytpm_3tpm_24d2h, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_24d2h)}; -static PyObject *__pyx_pf_5pytpm_3tpm_24d2h(PyObject *__pyx_self, PyObject *__pyx_v_d) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_49d2h(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ +static char __pyx_doc_3tpm_48d2h[] = "Convert angle in degrees into hours.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.d2h(180.0)\n 12.0\n >>> tpm.d2h(-180.0)\n -12.0\n >>> tpm.d2h(12.3456)\n 0.82303999999999999\n\n "; +static PyMethodDef __pyx_mdef_3tpm_49d2h = {"d2h", (PyCFunction)__pyx_pw_3tpm_49d2h, METH_O, __pyx_doc_3tpm_48d2h}; +static PyObject *__pyx_pw_3tpm_49d2h(PyObject *__pyx_self, PyObject *__pyx_v_d) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("d2h (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_48d2h(__pyx_self, ((PyObject *)__pyx_v_d)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_48d2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("d2h"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("d2h", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1669 + /* "src/tpm_times.pxi":1669 * * """ * return tpm_times.d2h(d) # <<<<<<<<<<<<<< @@ -8792,18 +13171,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_24d2h(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1669; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(d2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1669; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1669, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(d2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1669, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1646 + * # times.h. I am including all of these in tpm_times for + * # convenience. + * def d2h(d): # <<<<<<<<<<<<<< + * """Convert angle in degrees into hours. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.d2h"); + __Pyx_AddTraceback("tpm.d2h", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8811,7 +13197,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_24d2h(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1672 +/* "src/tpm_times.pxi":1672 * * * def h2d(h): # <<<<<<<<<<<<<< @@ -8819,17 +13205,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_24d2h(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_25h2d(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_25h2d[] = "Convert angle in hours into degrees.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.h2d(12.0)\n 180.0\n >>> tpm.h2d(-12.0)\n -180.0\n >>> tpm.h2d(-25)\n -375.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_25h2d = {__Pyx_NAMESTR("h2d"), (PyCFunction)__pyx_pf_5pytpm_3tpm_25h2d, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_25h2d)}; -static PyObject *__pyx_pf_5pytpm_3tpm_25h2d(PyObject *__pyx_self, PyObject *__pyx_v_h) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_51h2d(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ +static char __pyx_doc_3tpm_50h2d[] = "Convert angle in hours into degrees.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.h2d(12.0)\n 180.0\n >>> tpm.h2d(-12.0)\n -180.0\n >>> tpm.h2d(-25)\n -375.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_51h2d = {"h2d", (PyCFunction)__pyx_pw_3tpm_51h2d, METH_O, __pyx_doc_3tpm_50h2d}; +static PyObject *__pyx_pw_3tpm_51h2d(PyObject *__pyx_self, PyObject *__pyx_v_h) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("h2d (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_50h2d(__pyx_self, ((PyObject *)__pyx_v_h)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_50h2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("h2d"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("h2d", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1695 + /* "src/tpm_times.pxi":1695 * * """ * return tpm_times.h2d(h) # <<<<<<<<<<<<<< @@ -8837,18 +13238,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_25h2d(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(h2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1695, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(h2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1695, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1672 + * + * + * def h2d(h): # <<<<<<<<<<<<<< + * """Convert angle in hours into degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.h2d"); + __Pyx_AddTraceback("tpm.h2d", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8856,7 +13264,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_25h2d(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1698 +/* "src/tpm_times.pxi":1698 * * * def d2r(d): # <<<<<<<<<<<<<< @@ -8864,17 +13272,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_25h2d(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_26d2r(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_26d2r[] = "Convert angle in degrees into degrees.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.d2r(180.0)\n 3.1415926535897931\n >>> tpm.d2r(-180.0)\n -3.1415926535897931\n >>> tpm.d2r(361.0)\n 6.3006385996995293\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_26d2r = {__Pyx_NAMESTR("d2r"), (PyCFunction)__pyx_pf_5pytpm_3tpm_26d2r, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_26d2r)}; -static PyObject *__pyx_pf_5pytpm_3tpm_26d2r(PyObject *__pyx_self, PyObject *__pyx_v_d) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_53d2r(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ +static char __pyx_doc_3tpm_52d2r[] = "Convert angle in degrees into degrees.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n d : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.d2r(180.0)\n 3.1415926535897931\n >>> tpm.d2r(-180.0)\n -3.1415926535897931\n >>> tpm.d2r(361.0)\n 6.3006385996995293\n\n "; +static PyMethodDef __pyx_mdef_3tpm_53d2r = {"d2r", (PyCFunction)__pyx_pw_3tpm_53d2r, METH_O, __pyx_doc_3tpm_52d2r}; +static PyObject *__pyx_pw_3tpm_53d2r(PyObject *__pyx_self, PyObject *__pyx_v_d) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("d2r (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_52d2r(__pyx_self, ((PyObject *)__pyx_v_d)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_52d2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("d2r"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("d2r", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1721 + /* "src/tpm_times.pxi":1721 * * """ * return tpm_times.d2r(d) # <<<<<<<<<<<<<< @@ -8882,18 +13305,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_26d2r(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1721; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(d2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1721; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1721, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(d2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1721, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1698 + * + * + * def d2r(d): # <<<<<<<<<<<<<< + * """Convert angle in degrees into degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.d2r"); + __Pyx_AddTraceback("tpm.d2r", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8901,7 +13331,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_26d2r(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1724 +/* "src/tpm_times.pxi":1724 * * * def r2d(r): # <<<<<<<<<<<<<< @@ -8909,17 +13339,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_26d2r(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_27r2d(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_27r2d[] = "Convert angle in radians into degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.r2d(tpm.M_PI)\n 180.0\n >>> tpm.r2d(tpm.M_PI/4.0)\n 45.0\n >>> tpm.r2d(-tpm.M_PI/4.0)\n -45.0\n >>> tpm.r2d(-2*tpm.M_PI)\n -360.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_27r2d = {__Pyx_NAMESTR("r2d"), (PyCFunction)__pyx_pf_5pytpm_3tpm_27r2d, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_27r2d)}; -static PyObject *__pyx_pf_5pytpm_3tpm_27r2d(PyObject *__pyx_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_55r2d(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ +static char __pyx_doc_3tpm_54r2d[] = "Convert angle in radians into degrees.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.r2d(tpm.M_PI)\n 180.0\n >>> tpm.r2d(tpm.M_PI/4.0)\n 45.0\n >>> tpm.r2d(-tpm.M_PI/4.0)\n -45.0\n >>> tpm.r2d(-2*tpm.M_PI)\n -360.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_55r2d = {"r2d", (PyCFunction)__pyx_pw_3tpm_55r2d, METH_O, __pyx_doc_3tpm_54r2d}; +static PyObject *__pyx_pw_3tpm_55r2d(PyObject *__pyx_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("r2d (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_54r2d(__pyx_self, ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_54r2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("r2d"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("r2d", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1749 + /* "src/tpm_times.pxi":1749 * * """ * return tpm_times.r2d(r) # <<<<<<<<<<<<<< @@ -8927,18 +13372,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_27r2d(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1749; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(r2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1749; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1749, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(r2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1749, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1724 + * + * + * def r2d(r): # <<<<<<<<<<<<<< + * """Convert angle in radians into degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.r2d"); + __Pyx_AddTraceback("tpm.r2d", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8946,7 +13398,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_27r2d(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1752 +/* "src/tpm_times.pxi":1752 * * * def h2r(h): # <<<<<<<<<<<<<< @@ -8954,17 +13406,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_27r2d(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_28h2r(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_28h2r[] = "Convert angle in hours into radians.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.h2r(12.0)\n 3.1415926535897931\n >>> tpm.h2r(-12.0)\n -3.1415926535897931\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_28h2r = {__Pyx_NAMESTR("h2r"), (PyCFunction)__pyx_pf_5pytpm_3tpm_28h2r, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_28h2r)}; -static PyObject *__pyx_pf_5pytpm_3tpm_28h2r(PyObject *__pyx_self, PyObject *__pyx_v_h) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_57h2r(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ +static char __pyx_doc_3tpm_56h2r[] = "Convert angle in hours into radians.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.h2r(12.0)\n 3.1415926535897931\n >>> tpm.h2r(-12.0)\n -3.1415926535897931\n\n "; +static PyMethodDef __pyx_mdef_3tpm_57h2r = {"h2r", (PyCFunction)__pyx_pw_3tpm_57h2r, METH_O, __pyx_doc_3tpm_56h2r}; +static PyObject *__pyx_pw_3tpm_57h2r(PyObject *__pyx_self, PyObject *__pyx_v_h) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("h2r (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_56h2r(__pyx_self, ((PyObject *)__pyx_v_h)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_56h2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("h2r"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("h2r", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1773 + /* "src/tpm_times.pxi":1773 * * """ * return tpm_times.h2r(h) # <<<<<<<<<<<<<< @@ -8972,18 +13439,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_28h2r(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(h2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1773, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(h2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1752 + * + * + * def h2r(h): # <<<<<<<<<<<<<< + * """Convert angle in hours into radians. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.h2r"); + __Pyx_AddTraceback("tpm.h2r", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -8991,7 +13465,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_28h2r(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1776 +/* "src/tpm_times.pxi":1776 * * * def r2h(r): # <<<<<<<<<<<<<< @@ -8999,17 +13473,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_28h2r(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_29r2h(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_29r2h[] = "Convert angle in radians into hours.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.r2h(tpm.M_PI)\n 12.0\n >>> tpm.r2h(-tpm.M_PI)\n -12.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_29r2h = {__Pyx_NAMESTR("r2h"), (PyCFunction)__pyx_pf_5pytpm_3tpm_29r2h, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_29r2h)}; -static PyObject *__pyx_pf_5pytpm_3tpm_29r2h(PyObject *__pyx_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_59r2h(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ +static char __pyx_doc_3tpm_58r2h[] = "Convert angle in radians into hours.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.r2h(tpm.M_PI)\n 12.0\n >>> tpm.r2h(-tpm.M_PI)\n -12.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_59r2h = {"r2h", (PyCFunction)__pyx_pw_3tpm_59r2h, METH_O, __pyx_doc_3tpm_58r2h}; +static PyObject *__pyx_pw_3tpm_59r2h(PyObject *__pyx_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("r2h (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_58r2h(__pyx_self, ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_58r2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("r2h"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("r2h", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1797 + /* "src/tpm_times.pxi":1797 * * """ * return tpm_times.r2h(r) # <<<<<<<<<<<<<< @@ -9017,18 +13506,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_29r2h(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(r2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1797, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(r2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1797, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1776 + * + * + * def r2h(r): # <<<<<<<<<<<<<< + * """Convert angle in radians into hours. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.r2h"); + __Pyx_AddTraceback("tpm.r2h", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9036,7 +13532,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_29r2h(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1800 +/* "src/tpm_times.pxi":1800 * * * def d2as(d): # <<<<<<<<<<<<<< @@ -9044,17 +13540,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_29r2h(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_30d2as(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_30d2as[] = "Convert angle in degrees into arc-seconds.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.d2as(1.0)\n 3600.0\n >>> tpm.d2as(-1.0)\n -3600.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_30d2as = {__Pyx_NAMESTR("d2as"), (PyCFunction)__pyx_pf_5pytpm_3tpm_30d2as, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_30d2as)}; -static PyObject *__pyx_pf_5pytpm_3tpm_30d2as(PyObject *__pyx_self, PyObject *__pyx_v_d) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_61d2as(PyObject *__pyx_self, PyObject *__pyx_v_d); /*proto*/ +static char __pyx_doc_3tpm_60d2as[] = "Convert angle in degrees into arc-seconds.\n\n Parameters\n ----------\n d : float\n Angle in degrees.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.d2as(1.0)\n 3600.0\n >>> tpm.d2as(-1.0)\n -3600.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_61d2as = {"d2as", (PyCFunction)__pyx_pw_3tpm_61d2as, METH_O, __pyx_doc_3tpm_60d2as}; +static PyObject *__pyx_pw_3tpm_61d2as(PyObject *__pyx_self, PyObject *__pyx_v_d) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("d2as (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_60d2as(__pyx_self, ((PyObject *)__pyx_v_d)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_60d2as(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_d) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("d2as"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("d2as", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1821 + /* "src/tpm_times.pxi":1821 * * """ * return tpm_times.d2as(d) # <<<<<<<<<<<<<< @@ -9062,18 +13573,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_30d2as(PyObject *__pyx_self, PyObject *__p * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1821; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(d2as(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1821; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_d); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1821, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(d2as(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1821, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1800 + * + * + * def d2as(d): # <<<<<<<<<<<<<< + * """Convert angle in degrees into arc-seconds. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.d2as"); + __Pyx_AddTraceback("tpm.d2as", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9081,7 +13599,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_30d2as(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1824 +/* "src/tpm_times.pxi":1824 * * * def as2d(arcs): # <<<<<<<<<<<<<< @@ -9089,17 +13607,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_30d2as(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_31as2d(PyObject *__pyx_self, PyObject *__pyx_v_arcs); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_31as2d[] = "Convert angle in arc-seconds into degrees.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.as2d(3600.0)\n 1.0\n >>> tpm.as2d(-3600.0)\n -1.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_31as2d = {__Pyx_NAMESTR("as2d"), (PyCFunction)__pyx_pf_5pytpm_3tpm_31as2d, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_31as2d)}; -static PyObject *__pyx_pf_5pytpm_3tpm_31as2d(PyObject *__pyx_self, PyObject *__pyx_v_arcs) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_63as2d(PyObject *__pyx_self, PyObject *__pyx_v_arcs); /*proto*/ +static char __pyx_doc_3tpm_62as2d[] = "Convert angle in arc-seconds into degrees.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n d : float\n Angle in degrees.\n\n Examples\n --------\n >>> tpm.as2d(3600.0)\n 1.0\n >>> tpm.as2d(-3600.0)\n -1.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_63as2d = {"as2d", (PyCFunction)__pyx_pw_3tpm_63as2d, METH_O, __pyx_doc_3tpm_62as2d}; +static PyObject *__pyx_pw_3tpm_63as2d(PyObject *__pyx_self, PyObject *__pyx_v_arcs) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("as2d (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_62as2d(__pyx_self, ((PyObject *)__pyx_v_arcs)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_62as2d(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arcs) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("as2d"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("as2d", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1845 + /* "src/tpm_times.pxi":1845 * * """ * return tpm_times.as2d(arcs) # <<<<<<<<<<<<<< @@ -9107,18 +13640,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_31as2d(PyObject *__pyx_self, PyObject *__p * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_arcs); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(as2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_arcs); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1845, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(as2d(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1845, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1824 + * + * + * def as2d(arcs): # <<<<<<<<<<<<<< + * """Convert angle in arc-seconds into degrees. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.as2d"); + __Pyx_AddTraceback("tpm.as2d", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9126,7 +13666,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_31as2d(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1848 +/* "src/tpm_times.pxi":1848 * * * def as2h(arcs): # <<<<<<<<<<<<<< @@ -9134,17 +13674,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_31as2d(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_32as2h(PyObject *__pyx_self, PyObject *__pyx_v_arcs); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_32as2h[] = "Convert angle in arc-seconds into hours.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.as2h(3600.0*180.0)\n 12.0\n >>> tpm.as2h(-3600.0*180.0)\n -12.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_32as2h = {__Pyx_NAMESTR("as2h"), (PyCFunction)__pyx_pf_5pytpm_3tpm_32as2h, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_32as2h)}; -static PyObject *__pyx_pf_5pytpm_3tpm_32as2h(PyObject *__pyx_self, PyObject *__pyx_v_arcs) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_65as2h(PyObject *__pyx_self, PyObject *__pyx_v_arcs); /*proto*/ +static char __pyx_doc_3tpm_64as2h[] = "Convert angle in arc-seconds into hours.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n h : float\n Angle in hours.\n\n Examples\n --------\n >>> tpm.as2h(3600.0*180.0)\n 12.0\n >>> tpm.as2h(-3600.0*180.0)\n -12.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_65as2h = {"as2h", (PyCFunction)__pyx_pw_3tpm_65as2h, METH_O, __pyx_doc_3tpm_64as2h}; +static PyObject *__pyx_pw_3tpm_65as2h(PyObject *__pyx_self, PyObject *__pyx_v_arcs) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("as2h (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_64as2h(__pyx_self, ((PyObject *)__pyx_v_arcs)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_64as2h(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arcs) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("as2h"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("as2h", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1869 + /* "src/tpm_times.pxi":1869 * * """ * return tpm_times.as2h(arcs) # <<<<<<<<<<<<<< @@ -9152,18 +13707,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_32as2h(PyObject *__pyx_self, PyObject *__p * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_arcs); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(as2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_arcs); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1869, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(as2h(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1869, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1848 + * + * + * def as2h(arcs): # <<<<<<<<<<<<<< + * """Convert angle in arc-seconds into hours. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.as2h"); + __Pyx_AddTraceback("tpm.as2h", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9171,7 +13733,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_32as2h(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1872 +/* "src/tpm_times.pxi":1872 * * * def h2as(h): # <<<<<<<<<<<<<< @@ -9179,17 +13741,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_32as2h(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_33h2as(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_33h2as[] = "Convert angle in hours into arc-seconds.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.h2as(12.0)\n 648000.0\n >>> tpm.h2as(-12.0)\n -648000.0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_33h2as = {__Pyx_NAMESTR("h2as"), (PyCFunction)__pyx_pf_5pytpm_3tpm_33h2as, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_33h2as)}; -static PyObject *__pyx_pf_5pytpm_3tpm_33h2as(PyObject *__pyx_self, PyObject *__pyx_v_h) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_67h2as(PyObject *__pyx_self, PyObject *__pyx_v_h); /*proto*/ +static char __pyx_doc_3tpm_66h2as[] = "Convert angle in hours into arc-seconds.\n\n Parameters\n ----------\n h : float\n Angle in hours.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.h2as(12.0)\n 648000.0\n >>> tpm.h2as(-12.0)\n -648000.0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_67h2as = {"h2as", (PyCFunction)__pyx_pw_3tpm_67h2as, METH_O, __pyx_doc_3tpm_66h2as}; +static PyObject *__pyx_pw_3tpm_67h2as(PyObject *__pyx_self, PyObject *__pyx_v_h) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("h2as (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_66h2as(__pyx_self, ((PyObject *)__pyx_v_h)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_66h2as(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_h) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("h2as"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("h2as", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1893 + /* "src/tpm_times.pxi":1893 * * """ * return tpm_times.h2as(h) # <<<<<<<<<<<<<< @@ -9197,18 +13774,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_33h2as(PyObject *__pyx_self, PyObject *__p * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1893; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(h2as(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1893; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_h); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1893, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(h2as(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1872 + * + * + * def h2as(h): # <<<<<<<<<<<<<< + * """Convert angle in hours into arc-seconds. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.h2as"); + __Pyx_AddTraceback("tpm.h2as", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9216,7 +13800,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_33h2as(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1896 +/* "src/tpm_times.pxi":1896 * * * def r2as(r): # <<<<<<<<<<<<<< @@ -9224,17 +13808,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_33h2as(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_34r2as(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_34r2as[] = "Convert angle in radians into arc-seconds.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.r2as(tpm.M_PI)\n 648000.0\n >>> tpm.r2as(-tpm.M_PI)\n -648000.0\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_34r2as = {__Pyx_NAMESTR("r2as"), (PyCFunction)__pyx_pf_5pytpm_3tpm_34r2as, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_34r2as)}; -static PyObject *__pyx_pf_5pytpm_3tpm_34r2as(PyObject *__pyx_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_69r2as(PyObject *__pyx_self, PyObject *__pyx_v_r); /*proto*/ +static char __pyx_doc_3tpm_68r2as[] = "Convert angle in radians into arc-seconds.\n\n Parameters\n ----------\n r : float\n Angle in radians.\n\n Returns\n -------\n arcs : float\n Angle in arc-seconds.\n\n Examples\n --------\n >>> tpm.r2as(tpm.M_PI)\n 648000.0\n >>> tpm.r2as(-tpm.M_PI)\n -648000.0\n "; +static PyMethodDef __pyx_mdef_3tpm_69r2as = {"r2as", (PyCFunction)__pyx_pw_3tpm_69r2as, METH_O, __pyx_doc_3tpm_68r2as}; +static PyObject *__pyx_pw_3tpm_69r2as(PyObject *__pyx_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("r2as (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_68r2as(__pyx_self, ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_68r2as(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("r2as"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("r2as", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1916 + /* "src/tpm_times.pxi":1916 * -648000.0 * """ * return tpm_times.r2as(r) # <<<<<<<<<<<<<< @@ -9242,18 +13841,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_34r2as(PyObject *__pyx_self, PyObject *__p * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1916; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(r2as(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1916; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1916, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(r2as(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1916, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1896 + * + * + * def r2as(r): # <<<<<<<<<<<<<< + * """Convert angle in radians into arc-seconds. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.r2as"); + __Pyx_AddTraceback("tpm.r2as", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9261,7 +13867,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_34r2as(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_times.pxi":1919 +/* "src/tpm_times.pxi":1919 * * * def as2r(arcs): # <<<<<<<<<<<<<< @@ -9269,34 +13875,56 @@ static PyObject *__pyx_pf_5pytpm_3tpm_34r2as(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_35as2r(PyObject *__pyx_self, PyObject *__pyx_v_arcs); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_35as2r[] = "Convert angle in arc-seconds into radians.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.as2r(3600.0*180.0)\n 3.1415926535897931\n >>> tpm.as2r(-3600.0*180.0)\n -3.1415926535897931\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_35as2r = {__Pyx_NAMESTR("as2r"), (PyCFunction)__pyx_pf_5pytpm_3tpm_35as2r, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_35as2r)}; -static PyObject *__pyx_pf_5pytpm_3tpm_35as2r(PyObject *__pyx_self, PyObject *__pyx_v_arcs) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_71as2r(PyObject *__pyx_self, PyObject *__pyx_v_arcs); /*proto*/ +static char __pyx_doc_3tpm_70as2r[] = "Convert angle in arc-seconds into radians.\n\n Parameters\n ----------\n arcs : float\n Angle in arc-seconds.\n\n Returns\n -------\n r : float\n Angle in radians.\n\n Examples\n --------\n >>> tpm.as2r(3600.0*180.0)\n 3.1415926535897931\n >>> tpm.as2r(-3600.0*180.0)\n -3.1415926535897931\n\n "; +static PyMethodDef __pyx_mdef_3tpm_71as2r = {"as2r", (PyCFunction)__pyx_pw_3tpm_71as2r, METH_O, __pyx_doc_3tpm_70as2r}; +static PyObject *__pyx_pw_3tpm_71as2r(PyObject *__pyx_self, PyObject *__pyx_v_arcs) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("as2r (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_70as2r(__pyx_self, ((PyObject *)__pyx_v_arcs)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_70as2r(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arcs) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("as2r"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("as2r", 0); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1940 + /* "src/tpm_times.pxi":1940 * * """ * return tpm_times.as2r(arcs) # <<<<<<<<<<<<<< */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_arcs); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1940; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(as2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1940; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_arcs); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1940, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(as2r(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_times.pxi":1919 + * + * + * def as2r(arcs): # <<<<<<<<<<<<<< + * """Convert angle in arc-seconds into radians. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.as2r"); + __Pyx_AddTraceback("tpm.as2r", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9304,7 +13932,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_35as2r(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":15 +/* "src/tpm_vec.pxi":15 * cdef tpm_vec.V3 _v3 * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -9312,68 +13940,93 @@ static PyObject *__pyx_pf_5pytpm_3tpm_35as2r(PyObject *__pyx_self, PyObject *__p * self._v3.v[0] = 0.0 */ -static int __pyx_pf_5pytpm_3tpm_2V3___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2V3___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2V3_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2V3_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_2V3___cinit__(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2V3___cinit__(struct __pyx_obj_3tpm_V3 *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":16 + /* "src/tpm_vec.pxi":16 * * def __cinit__(self): * self._v3.type = CARTESIAN # <<<<<<<<<<<<<< * self._v3.v[0] = 0.0 * self._v3.v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.type = __pyx_t_2; + __pyx_v_self->_v3.type = __pyx_t_2; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":17 + /* "src/tpm_vec.pxi":17 * def __cinit__(self): * self._v3.type = CARTESIAN * self._v3.v[0] = 0.0 # <<<<<<<<<<<<<< * self._v3.v[1] = 0.0 * self._v3.v[2] = 0.0 */ - (((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.v[0]) = 0.0; + (__pyx_v_self->_v3.v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":18 + /* "src/tpm_vec.pxi":18 * self._v3.type = CARTESIAN * self._v3.v[0] = 0.0 * self._v3.v[1] = 0.0 # <<<<<<<<<<<<<< * self._v3.v[2] = 0.0 * */ - (((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.v[1]) = 0.0; + (__pyx_v_self->_v3.v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":19 + /* "src/tpm_vec.pxi":19 * self._v3.v[0] = 0.0 * self._v3.v[1] = 0.0 * self._v3.v[2] = 0.0 # <<<<<<<<<<<<<< * * def __init__(self, ctype=CARTESIAN, X=0.0, Y=0.0, Z=0.0): */ - (((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.v[2]) = 0.0; + (__pyx_v_self->_v3.v[2]) = 0.0; + + /* "src/tpm_vec.pxi":15 + * cdef tpm_vec.V3 _v3 + * + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._v3.type = CARTESIAN + * self._v3.v[0] = 0.0 + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3.__cinit__"); + __Pyx_AddTraceback("tpm.V3.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":21 +/* "src/tpm_vec.pxi":21 * self._v3.v[2] = 0.0 * * def __init__(self, ctype=CARTESIAN, X=0.0, Y=0.0, Z=0.0): # <<<<<<<<<<<<<< @@ -9381,135 +14034,174 @@ static int __pyx_pf_5pytpm_3tpm_2V3___cinit__(PyObject *__pyx_v_self, PyObject * * self._v3.v[0] = X */ -static int __pyx_pf_5pytpm_3tpm_2V3_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2V3_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2V3_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2V3_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_ctype = 0; PyObject *__pyx_v_X = 0; PyObject *__pyx_v_Y = 0; PyObject *__pyx_v_Z = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - int __pyx_t_1; - double __pyx_t_2; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__ctype,&__pyx_n_s__X,&__pyx_n_s__Y,&__pyx_n_s__Z,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_ctype,&__pyx_n_s_X,&__pyx_n_s_Y,&__pyx_n_s_Z,0}; PyObject* values[4] = {0,0,0,0}; - values[0] = __pyx_k_10; - values[1] = __pyx_k_11; - values[2] = __pyx_k_12; - values[3] = __pyx_k_13; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ctype); - if (value) { values[0] = value; kw_args--; } + values[0] = __pyx_k__9; + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + values[3] = ((PyObject *)__pyx_float_0_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__X); - if (value) { values[1] = value; kw_args--; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ctype); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_X); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Y); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_Z); + if (value) { values[3] = value; kw_args--; } + } } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__Y); - if (value) { values[2] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 21, __pyx_L3_error) } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__Z); - if (value) { values[3] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_ctype = values[0]; __pyx_v_X = values[1]; __pyx_v_Y = values[2]; __pyx_v_Z = values[3]; - } else { - __pyx_v_ctype = __pyx_k_10; - __pyx_v_X = __pyx_k_11; - __pyx_v_Y = __pyx_k_12; - __pyx_v_Z = __pyx_k_13; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: __pyx_v_Z = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_Y = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_X = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_ctype = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 21, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V3.__init__"); + __Pyx_AddTraceback("tpm.V3.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2V3_2__init__(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_v_ctype, __pyx_v_X, __pyx_v_Y, __pyx_v_Z); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2V3_2__init__(struct __pyx_obj_3tpm_V3 *__pyx_v_self, PyObject *__pyx_v_ctype, PyObject *__pyx_v_X, PyObject *__pyx_v_Y, PyObject *__pyx_v_Z) { + int __pyx_r; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + double __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":22 + /* "src/tpm_vec.pxi":22 * * def __init__(self, ctype=CARTESIAN, X=0.0, Y=0.0, Z=0.0): * self._v3.type = ctype # <<<<<<<<<<<<<< * self._v3.v[0] = X * self._v3.v[1] = Y */ - __pyx_t_1 = __Pyx_PyInt_AsInt(__pyx_v_ctype); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.type = __pyx_t_1; + __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_ctype); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 22, __pyx_L1_error) + __pyx_v_self->_v3.type = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":23 + /* "src/tpm_vec.pxi":23 * def __init__(self, ctype=CARTESIAN, X=0.0, Y=0.0, Z=0.0): * self._v3.type = ctype * self._v3.v[0] = X # <<<<<<<<<<<<<< * self._v3.v[1] = Y * self._v3.v[2] = Z */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_X); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - (((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.v[0]) = __pyx_t_2; + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_X); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 23, __pyx_L1_error) + (__pyx_v_self->_v3.v[0]) = __pyx_t_2; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":24 + /* "src/tpm_vec.pxi":24 * self._v3.type = ctype * self._v3.v[0] = X * self._v3.v[1] = Y # <<<<<<<<<<<<<< * self._v3.v[2] = Z * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_Y); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - (((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.v[1]) = __pyx_t_2; + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_Y); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 24, __pyx_L1_error) + (__pyx_v_self->_v3.v[1]) = __pyx_t_2; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":25 + /* "src/tpm_vec.pxi":25 * self._v3.v[0] = X * self._v3.v[1] = Y * self._v3.v[2] = Z # <<<<<<<<<<<<<< * * cdef int getType(self): */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_Z); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - (((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)->_v3.v[2]) = __pyx_t_2; + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_Z); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 25, __pyx_L1_error) + (__pyx_v_self->_v3.v[2]) = __pyx_t_2; + + /* "src/tpm_vec.pxi":21 + * self._v3.v[2] = 0.0 + * + * def __init__(self, ctype=CARTESIAN, X=0.0, Y=0.0, Z=0.0): # <<<<<<<<<<<<<< + * self._v3.type = ctype + * self._v3.v[0] = X + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.V3.__init__"); + __Pyx_AddTraceback("tpm.V3.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":27 +/* "src/tpm_vec.pxi":27 * self._v3.v[2] = Z * * cdef int getType(self): # <<<<<<<<<<<<<< @@ -9517,11 +14209,12 @@ static int __pyx_pf_5pytpm_3tpm_2V3_1__init__(PyObject *__pyx_v_self, PyObject * * */ -static int __pyx_f_5pytpm_3tpm_2V3_getType(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self) { +static int __pyx_f_3tpm_2V3_getType(struct __pyx_obj_3tpm_V3 *__pyx_v_self) { int __pyx_r; - __Pyx_RefNannySetupContext("getType"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getType", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":28 + /* "src/tpm_vec.pxi":28 * * cdef int getType(self): * return self._v3.type # <<<<<<<<<<<<<< @@ -9531,13 +14224,21 @@ static int __pyx_f_5pytpm_3tpm_2V3_getType(struct __pyx_obj_5pytpm_3tpm_V3 *__p __pyx_r = __pyx_v_self->_v3.type; goto __pyx_L0; - __pyx_r = 0; + /* "src/tpm_vec.pxi":27 + * self._v3.v[2] = Z + * + * cdef int getType(self): # <<<<<<<<<<<<<< + * return self._v3.type + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":30 +/* "src/tpm_vec.pxi":30 * return self._v3.type * * cdef setType(self, int t): # <<<<<<<<<<<<<< @@ -9545,11 +14246,12 @@ static int __pyx_f_5pytpm_3tpm_2V3_getType(struct __pyx_obj_5pytpm_3tpm_V3 *__p * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V3_setType(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self, int __pyx_v_t) { +static PyObject *__pyx_f_3tpm_2V3_setType(struct __pyx_obj_3tpm_V3 *__pyx_v_self, int __pyx_v_t) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setType"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setType", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":31 + /* "src/tpm_vec.pxi":31 * * cdef setType(self, int t): * self._v3.type = t # <<<<<<<<<<<<<< @@ -9558,13 +14260,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setType(struct __pyx_obj_5pytpm_3tpm_V */ __pyx_v_self->_v3.type = __pyx_v_t; + /* "src/tpm_vec.pxi":30 + * return self._v3.type + * + * cdef setType(self, int t): # <<<<<<<<<<<<<< + * self._v3.type = t + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":33 +/* "src/tpm_vec.pxi":33 * self._v3.type = t * * cdef setX(self, double X): # <<<<<<<<<<<<<< @@ -9572,11 +14283,12 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setType(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V3_setX(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self, double __pyx_v_X) { +static PyObject *__pyx_f_3tpm_2V3_setX(struct __pyx_obj_3tpm_V3 *__pyx_v_self, double __pyx_v_X) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setX"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setX", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":34 + /* "src/tpm_vec.pxi":34 * * cdef setX(self, double X): * self._v3.v[0] = X # <<<<<<<<<<<<<< @@ -9585,13 +14297,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setX(struct __pyx_obj_5pytpm_3tpm_V3 * */ (__pyx_v_self->_v3.v[0]) = __pyx_v_X; + /* "src/tpm_vec.pxi":33 + * self._v3.type = t + * + * cdef setX(self, double X): # <<<<<<<<<<<<<< + * self._v3.v[0] = X + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":36 +/* "src/tpm_vec.pxi":36 * self._v3.v[0] = X * * cdef setY(self, double Y): # <<<<<<<<<<<<<< @@ -9599,11 +14320,12 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setX(struct __pyx_obj_5pytpm_3tpm_V3 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V3_setY(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self, double __pyx_v_Y) { +static PyObject *__pyx_f_3tpm_2V3_setY(struct __pyx_obj_3tpm_V3 *__pyx_v_self, double __pyx_v_Y) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setY"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setY", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":37 + /* "src/tpm_vec.pxi":37 * * cdef setY(self, double Y): * self._v3.v[1] = Y # <<<<<<<<<<<<<< @@ -9612,13 +14334,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setY(struct __pyx_obj_5pytpm_3tpm_V3 * */ (__pyx_v_self->_v3.v[1]) = __pyx_v_Y; + /* "src/tpm_vec.pxi":36 + * self._v3.v[0] = X + * + * cdef setY(self, double Y): # <<<<<<<<<<<<<< + * self._v3.v[1] = Y + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":39 +/* "src/tpm_vec.pxi":39 * self._v3.v[1] = Y * * cdef setZ(self, double Z): # <<<<<<<<<<<<<< @@ -9626,11 +14357,12 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setY(struct __pyx_obj_5pytpm_3tpm_V3 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V3_setZ(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self, double __pyx_v_Z) { +static PyObject *__pyx_f_3tpm_2V3_setZ(struct __pyx_obj_3tpm_V3 *__pyx_v_self, double __pyx_v_Z) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setZ"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setZ", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":40 + /* "src/tpm_vec.pxi":40 * * cdef setZ(self, double Z): * self._v3.v[2] = Z # <<<<<<<<<<<<<< @@ -9639,13 +14371,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setZ(struct __pyx_obj_5pytpm_3tpm_V3 * */ (__pyx_v_self->_v3.v[2]) = __pyx_v_Z; + /* "src/tpm_vec.pxi":39 + * self._v3.v[1] = Y + * + * cdef setZ(self, double Z): # <<<<<<<<<<<<<< + * self._v3.v[2] = Z + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":42 +/* "src/tpm_vec.pxi":42 * self._v3.v[2] = Z * * cdef double getX(self): # <<<<<<<<<<<<<< @@ -9653,11 +14394,12 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setZ(struct __pyx_obj_5pytpm_3tpm_V3 * * */ -static double __pyx_f_5pytpm_3tpm_2V3_getX(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self) { +static double __pyx_f_3tpm_2V3_getX(struct __pyx_obj_3tpm_V3 *__pyx_v_self) { double __pyx_r; - __Pyx_RefNannySetupContext("getX"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getX", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":43 + /* "src/tpm_vec.pxi":43 * * cdef double getX(self): * return self._v3.v[0] # <<<<<<<<<<<<<< @@ -9667,13 +14409,21 @@ static double __pyx_f_5pytpm_3tpm_2V3_getX(struct __pyx_obj_5pytpm_3tpm_V3 *__p __pyx_r = (__pyx_v_self->_v3.v[0]); goto __pyx_L0; - __pyx_r = 0; + /* "src/tpm_vec.pxi":42 + * self._v3.v[2] = Z + * + * cdef double getX(self): # <<<<<<<<<<<<<< + * return self._v3.v[0] + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":45 +/* "src/tpm_vec.pxi":45 * return self._v3.v[0] * * cdef double getY(self): # <<<<<<<<<<<<<< @@ -9681,11 +14431,12 @@ static double __pyx_f_5pytpm_3tpm_2V3_getX(struct __pyx_obj_5pytpm_3tpm_V3 *__p * */ -static double __pyx_f_5pytpm_3tpm_2V3_getY(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self) { +static double __pyx_f_3tpm_2V3_getY(struct __pyx_obj_3tpm_V3 *__pyx_v_self) { double __pyx_r; - __Pyx_RefNannySetupContext("getY"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getY", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":46 + /* "src/tpm_vec.pxi":46 * * cdef double getY(self): * return self._v3.v[1] # <<<<<<<<<<<<<< @@ -9695,13 +14446,21 @@ static double __pyx_f_5pytpm_3tpm_2V3_getY(struct __pyx_obj_5pytpm_3tpm_V3 *__p __pyx_r = (__pyx_v_self->_v3.v[1]); goto __pyx_L0; - __pyx_r = 0; + /* "src/tpm_vec.pxi":45 + * return self._v3.v[0] + * + * cdef double getY(self): # <<<<<<<<<<<<<< + * return self._v3.v[1] + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":48 +/* "src/tpm_vec.pxi":48 * return self._v3.v[1] * * cdef double getZ(self): # <<<<<<<<<<<<<< @@ -9709,11 +14468,12 @@ static double __pyx_f_5pytpm_3tpm_2V3_getY(struct __pyx_obj_5pytpm_3tpm_V3 *__p * */ -static double __pyx_f_5pytpm_3tpm_2V3_getZ(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self) { +static double __pyx_f_3tpm_2V3_getZ(struct __pyx_obj_3tpm_V3 *__pyx_v_self) { double __pyx_r; - __Pyx_RefNannySetupContext("getZ"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getZ", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":49 + /* "src/tpm_vec.pxi":49 * * cdef double getZ(self): * return self._v3.v[2] # <<<<<<<<<<<<<< @@ -9723,13 +14483,21 @@ static double __pyx_f_5pytpm_3tpm_2V3_getZ(struct __pyx_obj_5pytpm_3tpm_V3 *__p __pyx_r = (__pyx_v_self->_v3.v[2]); goto __pyx_L0; - __pyx_r = 0; + /* "src/tpm_vec.pxi":48 + * return self._v3.v[1] + * + * cdef double getZ(self): # <<<<<<<<<<<<<< + * return self._v3.v[2] + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":51 +/* "src/tpm_vec.pxi":51 * return self._v3.v[2] * * cdef tpm_vec.V3 getV3(self): # <<<<<<<<<<<<<< @@ -9737,11 +14505,12 @@ static double __pyx_f_5pytpm_3tpm_2V3_getZ(struct __pyx_obj_5pytpm_3tpm_V3 *__p * */ -static V3 __pyx_f_5pytpm_3tpm_2V3_getV3(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self) { +static V3 __pyx_f_3tpm_2V3_getV3(struct __pyx_obj_3tpm_V3 *__pyx_v_self) { V3 __pyx_r; - __Pyx_RefNannySetupContext("getV3"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getV3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":52 + /* "src/tpm_vec.pxi":52 * * cdef tpm_vec.V3 getV3(self): * return self._v3 # <<<<<<<<<<<<<< @@ -9751,12 +14520,21 @@ static V3 __pyx_f_5pytpm_3tpm_2V3_getV3(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_ __pyx_r = __pyx_v_self->_v3; goto __pyx_L0; + /* "src/tpm_vec.pxi":51 + * return self._v3.v[2] + * + * cdef tpm_vec.V3 getV3(self): # <<<<<<<<<<<<<< + * return self._v3 + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":54 +/* "src/tpm_vec.pxi":54 * return self._v3 * * cdef setV3(self, tpm_vec.V3 _v3): # <<<<<<<<<<<<<< @@ -9764,11 +14542,12 @@ static V3 __pyx_f_5pytpm_3tpm_2V3_getV3(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_ * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V3_setV3(struct __pyx_obj_5pytpm_3tpm_V3 *__pyx_v_self, V3 __pyx_v__v3) { +static PyObject *__pyx_f_3tpm_2V3_setV3(struct __pyx_obj_3tpm_V3 *__pyx_v_self, V3 __pyx_v__v3) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setV3"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setV3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":55 + /* "src/tpm_vec.pxi":55 * * cdef setV3(self, tpm_vec.V3 _v3): * self._v3 = _v3 # <<<<<<<<<<<<<< @@ -9777,141 +14556,300 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V3_setV3(struct __pyx_obj_5pytpm_3tpm_V3 */ __pyx_v_self->_v3 = __pyx_v__v3; + /* "src/tpm_vec.pxi":54 + * return self._v3 + * + * cdef setV3(self, tpm_vec.V3 _v3): # <<<<<<<<<<<<<< + * self._v3 = _v3 + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":80 - * ctype = CARTESIAN - * vtype = POS - * def __init__(self, x=0.0, y=0.0, z=0.0): # <<<<<<<<<<<<<< - * self.x = x - * self.y = y +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): */ -static int __pyx_pf_5pytpm_3tpm_4V3CP___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_4V3CP___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2V3_5__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2V3_5__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2V3_4__reduce_cython__(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2V3_4__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3 *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V3.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2V3_7__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_2V3_7__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2V3_6__setstate_cython__(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2V3_6__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V3.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_vec.pxi":80 + * ctype = CARTESIAN + * vtype = POS + * def __init__(self, x=0.0, y=0.0, z=0.0): # <<<<<<<<<<<<<< + * self.x = x + * self.y = y + */ + +/* Python wrapper */ +static int __pyx_pw_3tpm_4V3CP_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_4V3CP_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_x = 0; PyObject *__pyx_v_y = 0; PyObject *__pyx_v_z = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__x,&__pyx_n_s__y,&__pyx_n_s__z,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_x,&__pyx_n_s_y,&__pyx_n_s_z,0}; PyObject* values[3] = {0,0,0}; - values[0] = __pyx_k_14; - values[1] = __pyx_k_15; - values[2] = __pyx_k_16; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (value) { values[0] = value; kw_args--; } + values[0] = ((PyObject *)__pyx_float_0_0); + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_x); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_y); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_z); + if (value) { values[2] = value; kw_args--; } + } } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (value) { values[1] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 80, __pyx_L3_error) } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__z); - if (value) { values[2] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_x = values[0]; __pyx_v_y = values[1]; __pyx_v_z = values[2]; - } else { - __pyx_v_x = __pyx_k_14; - __pyx_v_y = __pyx_k_15; - __pyx_v_z = __pyx_k_16; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: __pyx_v_z = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_y = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_x = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 80, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V3CP.__init__"); + __Pyx_AddTraceback("tpm.V3CP.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_4V3CP___init__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), __pyx_v_x, __pyx_v_y, __pyx_v_z); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_4V3CP___init__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_x, PyObject *__pyx_v_y, PyObject *__pyx_v_z) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":81 + /* "src/tpm_vec.pxi":81 * vtype = POS * def __init__(self, x=0.0, y=0.0, z=0.0): * self.x = x # <<<<<<<<<<<<<< * self.y = y * self.z = z */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__x, __pyx_v_x) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_x, __pyx_v_x) < 0) __PYX_ERR(1, 81, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":82 + /* "src/tpm_vec.pxi":82 * def __init__(self, x=0.0, y=0.0, z=0.0): * self.x = x * self.y = y # <<<<<<<<<<<<<< * self.z = z * self.setType(self.ctype) */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__y, __pyx_v_y) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_y, __pyx_v_y) < 0) __PYX_ERR(1, 82, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":83 + /* "src/tpm_vec.pxi":83 * self.x = x * self.y = y * self.z = z # <<<<<<<<<<<<<< * self.setType(self.ctype) * */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__z, __pyx_v_z) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_z, __pyx_v_z) < 0) __PYX_ERR(1, 83, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":84 + /* "src/tpm_vec.pxi":84 * self.y = y * self.z = z * self.setType(self.ctype) # <<<<<<<<<<<<<< * * def __getx(self): */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ctype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ctype); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 84, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setType(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setType(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + /* "src/tpm_vec.pxi":80 + * ctype = CARTESIAN + * vtype = POS + * def __init__(self, x=0.0, y=0.0, z=0.0): # <<<<<<<<<<<<<< + * self.x = x + * self.y = y + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__init__"); + __Pyx_AddTraceback("tpm.V3CP.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":86 +/* "src/tpm_vec.pxi":86 * self.setType(self.ctype) * * def __getx(self): # <<<<<<<<<<<<<< @@ -9919,13 +14857,29 @@ static int __pyx_pf_5pytpm_3tpm_4V3CP___init__(PyObject *__pyx_v_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_1__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_1__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_3__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_3__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_2__getx(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_2__getx(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":87 + /* "src/tpm_vec.pxi":87 * * def __getx(self): * return self.getX() # <<<<<<<<<<<<<< @@ -9933,17 +14887,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_1__getx(PyObject *__pyx_v_self, CYTH * def __setx(self, x): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":86 + * self.setType(self.ctype) + * + * def __getx(self): # <<<<<<<<<<<<<< + * return self.getX() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__getx"); + __Pyx_AddTraceback("tpm.V3CP.__getx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9951,7 +14912,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_1__getx(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":89 +/* "src/tpm_vec.pxi":89 * return self.getX() * * def __setx(self, x): # <<<<<<<<<<<<<< @@ -9959,30 +14920,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_1__getx(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_2__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_2__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_5__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_5__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_4__setx(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((PyObject *)__pyx_v_x)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_4__setx(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_x) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":90 + /* "src/tpm_vec.pxi":90 * * def __setx(self, x): * self.setX(x) # <<<<<<<<<<<<<< * * x = property(__getx, __setx, doc="X coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 90, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":89 + * return self.getX() + * + * def __setx(self, x): # <<<<<<<<<<<<<< + * self.setX(x) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__setx"); + __Pyx_AddTraceback("tpm.V3CP.__setx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -9990,7 +14976,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_2__setx(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":94 +/* "src/tpm_vec.pxi":94 * x = property(__getx, __setx, doc="X coordinate.") * * def __gety(self): # <<<<<<<<<<<<<< @@ -9998,13 +14984,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_2__setx(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_3__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_3__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_7__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_7__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gety (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_6__gety(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_6__gety(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gety"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gety", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":95 + /* "src/tpm_vec.pxi":95 * * def __gety(self): * return self.getY() # <<<<<<<<<<<<<< @@ -10012,17 +15014,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_3__gety(PyObject *__pyx_v_self, CYTH * def __sety(self, y): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":94 + * x = property(__getx, __setx, doc="X coordinate.") + * + * def __gety(self): # <<<<<<<<<<<<<< + * return self.getY() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__gety"); + __Pyx_AddTraceback("tpm.V3CP.__gety", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10030,7 +15039,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_3__gety(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":97 +/* "src/tpm_vec.pxi":97 * return self.getY() * * def __sety(self, y): # <<<<<<<<<<<<<< @@ -10038,30 +15047,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_3__gety(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_4__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_4__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_9__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_9__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sety (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_8__sety(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((PyObject *)__pyx_v_y)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_8__sety(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_y) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__sety"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sety", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":98 + /* "src/tpm_vec.pxi":98 * * def __sety(self, y): * self.setY(y) # <<<<<<<<<<<<<< * * y = property(__gety, __sety, doc="Y coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 98, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":97 + * return self.getY() + * + * def __sety(self, y): # <<<<<<<<<<<<<< + * self.setY(y) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__sety"); + __Pyx_AddTraceback("tpm.V3CP.__sety", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10069,7 +15103,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_4__sety(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":102 +/* "src/tpm_vec.pxi":102 * y = property(__gety, __sety, doc="Y coordinate.") * * def __getz(self): # <<<<<<<<<<<<<< @@ -10077,13 +15111,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_4__sety(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_5__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_5__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_11__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_11__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_10__getz(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_10__getz(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":103 + /* "src/tpm_vec.pxi":103 * * def __getz(self): * return self.getZ() # <<<<<<<<<<<<<< @@ -10091,17 +15141,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_5__getz(PyObject *__pyx_v_self, CYTH * def __setz(self, z): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":102 + * y = property(__gety, __sety, doc="Y coordinate.") + * + * def __getz(self): # <<<<<<<<<<<<<< + * return self.getZ() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__getz"); + __Pyx_AddTraceback("tpm.V3CP.__getz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10109,7 +15166,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_5__getz(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":105 +/* "src/tpm_vec.pxi":105 * return self.getZ() * * def __setz(self, z): # <<<<<<<<<<<<<< @@ -10117,30 +15174,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_5__getz(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_6__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_6__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_13__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_13__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_12__setz(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((PyObject *)__pyx_v_z)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_12__setz(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, PyObject *__pyx_v_z) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":106 + /* "src/tpm_vec.pxi":106 * * def __setz(self, z): * self.setZ(z) # <<<<<<<<<<<<<< * * z = property(__getz, __setz, doc="Z coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 106, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":105 + * return self.getZ() + * + * def __setz(self, z): # <<<<<<<<<<<<<< + * self.setZ(z) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__setz"); + __Pyx_AddTraceback("tpm.V3CP.__setz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10148,7 +15230,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_6__setz(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":110 +/* "src/tpm_vec.pxi":110 * z = property(__getz, __setz, doc="Z coordinate.") * * def c2s(self): # <<<<<<<<<<<<<< @@ -10156,50 +15238,64 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_6__setz(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_7c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_7c2s[] = "Convert Cartesian position vector into spherical vector.\n\n Returns\n -------\n v3 : tpm.V3SP\n The position in spherical coordinates.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_7c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_15c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_14c2s[] = "Convert Cartesian position vector into spherical vector.\n\n Returns\n -------\n v3 : tpm.V3SP\n The position in spherical coordinates.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3CP_15c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("c2s (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_14c2s(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_14c2s(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { V3 __pyx_v__v3; - struct __pyx_obj_5pytpm_3tpm_V3SP *__pyx_v_v3sp; + struct __pyx_obj_3tpm_V3SP *__pyx_v_v3sp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("c2s"); - __pyx_v_v3sp = ((struct __pyx_obj_5pytpm_3tpm_V3SP *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("c2s", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":120 + /* "src/tpm_vec.pxi":120 * """ * cdef tpm_vec.V3 _v3 * _v3 = tpm_vec.v3c2s(self.getV3()) # <<<<<<<<<<<<<< * #v3 = V3SP(r=_v3.v[0], alpha=_v3.v[1], delta=_v3[2]) * v3sp = V3SP() */ - __pyx_v__v3 = v3c2s(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); + __pyx_v__v3 = v3c2s(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":122 + /* "src/tpm_vec.pxi":122 * _v3 = tpm_vec.v3c2s(self.getV3()) * #v3 = V3SP(r=_v3.v[0], alpha=_v3.v[1], delta=_v3[2]) * v3sp = V3SP() # <<<<<<<<<<<<<< * v3sp.setV3(_v3) * return v3sp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3SP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3SP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 122, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3sp)); - __pyx_v_v3sp = ((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_t_1); + __pyx_v_v3sp = ((struct __pyx_obj_3tpm_V3SP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":123 + /* "src/tpm_vec.pxi":123 * #v3 = V3SP(r=_v3.v[0], alpha=_v3.v[1], delta=_v3[2]) * v3sp = V3SP() * v3sp.setV3(_v3) # <<<<<<<<<<<<<< * return v3sp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)__pyx_v_v3sp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3sp), __pyx_v__v3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_v3sp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3sp), __pyx_v__v3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":124 + /* "src/tpm_vec.pxi":124 * v3sp = V3SP() * v3sp.setV3(_v3) * return v3sp # <<<<<<<<<<<<<< @@ -10211,20 +15307,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_7c2s(PyObject *__pyx_v_self, CYTHON_ __pyx_r = ((PyObject *)__pyx_v_v3sp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":110 + * z = property(__getz, __setz, doc="Z coordinate.") + * + * def c2s(self): # <<<<<<<<<<<<<< + * """Convert Cartesian position vector into spherical vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.c2s"); + __Pyx_AddTraceback("tpm.V3CP.c2s", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3sp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3sp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":126 +/* "src/tpm_vec.pxi":126 * return v3sp * * def unit(self): # <<<<<<<<<<<<<< @@ -10232,40 +15335,54 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_7c2s(PyObject *__pyx_v_self, CYTHON_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_8unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_8unit[] = "Return unit V3CP vector.\n\n Returns\n -------\n x : tpm.V3CP\n Unit vector in the direction of this vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_8unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_17unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_16unit[] = "Return unit V3CP vector.\n\n Returns\n -------\n x : tpm.V3CP\n Unit vector in the direction of this vector.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3CP_17unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("unit (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_16unit(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_16unit(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("unit"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("unit", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":135 + /* "src/tpm_vec.pxi":135 * * """ * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3unit(self.getV3())) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":136 + /* "src/tpm_vec.pxi":136 * """ * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3unit(self.getV3())) # <<<<<<<<<<<<<< * return v3cp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3unit(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3unit(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":137 + /* "src/tpm_vec.pxi":137 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3unit(self.getV3())) * return v3cp # <<<<<<<<<<<<<< @@ -10277,20 +15394,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_8unit(PyObject *__pyx_v_self, CYTHON __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":126 + * return v3sp + * + * def unit(self): # <<<<<<<<<<<<<< + * """Return unit V3CP vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.unit"); + __Pyx_AddTraceback("tpm.V3CP.unit", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":139 +/* "src/tpm_vec.pxi":139 * return v3cp * * def mod(self): # <<<<<<<<<<<<<< @@ -10298,14 +15422,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_8unit(PyObject *__pyx_v_self, CYTHON * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_9mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_9mod[] = "Return modulus (length) of the V3CP vector.\n\n Returns\n -------\n x : float\n Length of the vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_9mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_19mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_18mod[] = "Return modulus (length) of the V3CP vector.\n\n Returns\n -------\n x : float\n Length of the vector.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3CP_19mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("mod (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_18mod(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_18mod(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("mod"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("mod", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":148 + /* "src/tpm_vec.pxi":148 * * """ * return tpm_vec.v3mod(self.getV3()) # <<<<<<<<<<<<<< @@ -10313,17 +15453,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_9mod(PyObject *__pyx_v_self, CYTHON_ * def dot(V3CP self, V3CP other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3mod(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v3mod(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 148, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":139 + * return v3cp + * + * def mod(self): # <<<<<<<<<<<<<< + * """Return modulus (length) of the V3CP vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.mod"); + __Pyx_AddTraceback("tpm.V3CP.mod", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10331,7 +15478,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_9mod(PyObject *__pyx_v_self, CYTHON_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":150 +/* "src/tpm_vec.pxi":150 * return tpm_vec.v3mod(self.getV3()) * * def dot(V3CP self, V3CP other): # <<<<<<<<<<<<<< @@ -10339,15 +15486,38 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_9mod(PyObject *__pyx_v_self, CYTHON_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_10dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_10dot[] = "Return the dot product of two V3CP vectors.\n\n Returns\n -------\n d : float\n Dot product of the given vector with this vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_10dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_21dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_20dot[] = "Return the dot product of two V3CP vectors.\n\n Returns\n -------\n d : float\n Dot product of the given vector with this vector.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3CP_21dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("dot (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3CP, 1, "other", 0))) __PYX_ERR(1, 150, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3CP_20dot(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_20dot(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("dot"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("dot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":159 + /* "src/tpm_vec.pxi":159 * * """ * return tpm_vec.v3dot(self.getV3(), other.getV3()) # <<<<<<<<<<<<<< @@ -10355,17 +15525,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_10dot(PyObject *__pyx_v_self, PyObje * def cross(V3CP self, V3CP other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3dot(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v3dot(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":150 + * return tpm_vec.v3mod(self.getV3()) + * + * def dot(V3CP self, V3CP other): # <<<<<<<<<<<<<< + * """Return the dot product of two V3CP vectors. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.dot"); + __Pyx_AddTraceback("tpm.V3CP.dot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10373,7 +15550,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_10dot(PyObject *__pyx_v_self, PyObje return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":161 +/* "src/tpm_vec.pxi":161 * return tpm_vec.v3dot(self.getV3(), other.getV3()) * * def cross(V3CP self, V3CP other): # <<<<<<<<<<<<<< @@ -10381,41 +15558,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_10dot(PyObject *__pyx_v_self, PyObje * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_11cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_11cross[] = "Return the cross product of two V3CP vectors.\n\n Returns\n -------\n x : tpm.V3CP\n Cross product of this vector with the given vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_11cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_23cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_22cross[] = "Return the cross product of two V3CP vectors.\n\n Returns\n -------\n x : tpm.V3CP\n Cross product of this vector with the given vector.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3CP_23cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("cross (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3CP, 1, "other", 0))) __PYX_ERR(1, 161, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3CP_22cross(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_22cross(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("cross"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("cross", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":170 + /* "src/tpm_vec.pxi":170 * * """ * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3cross(self.getV3(), other.getV3())) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":171 + /* "src/tpm_vec.pxi":171 * """ * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3cross(self.getV3(), other.getV3())) # <<<<<<<<<<<<<< * return v3cp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3cross(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3cross(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 171, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":172 + /* "src/tpm_vec.pxi":172 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3cross(self.getV3(), other.getV3())) * return v3cp # <<<<<<<<<<<<<< @@ -10427,20 +15625,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_11cross(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":161 + * return tpm_vec.v3dot(self.getV3(), other.getV3()) + * + * def cross(V3CP self, V3CP other): # <<<<<<<<<<<<<< + * """Return the cross product of two V3CP vectors. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.cross"); + __Pyx_AddTraceback("tpm.V3CP.cross", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":174 +/* "src/tpm_vec.pxi":174 * return v3cp * * def __sub__(V3CP self, V3CP other): # <<<<<<<<<<<<<< @@ -10448,75 +15653,89 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_11cross(PyObject *__pyx_v_self, PyOb * if isinstance(self, V3CP) and isinstance(other, V3CP): */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_12__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_12__sub__[] = "Return V3CP that holds difference between two V3CPs."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3CP_12__sub__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_12__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_25__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_24__sub__[] = "Return V3CP that holds difference between two V3CPs."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3CP_24__sub__; +#endif +static PyObject *__pyx_pw_3tpm_4V3CP_25__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3CP, 1, "self", 0))) __PYX_ERR(1, 174, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3CP, 1, "other", 0))) __PYX_ERR(1, 174, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3CP_24__sub__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_24__sub__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":176 + /* "src/tpm_vec.pxi":176 * def __sub__(V3CP self, V3CP other): * """Return V3CP that holds difference between two V3CPs.""" * if isinstance(self, V3CP) and isinstance(other, V3CP): # <<<<<<<<<<<<<< * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3CP); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3CP); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":177 + /* "src/tpm_vec.pxi":177 * """Return V3CP that holds difference between two V3CPs.""" * if isinstance(self, V3CP) and isinstance(other, V3CP): * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 177, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":178 + /* "src/tpm_vec.pxi":178 * if isinstance(self, V3CP) and isinstance(other, V3CP): * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) # <<<<<<<<<<<<<< * return v3cp * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3diff(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3diff(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 178, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":179 + /* "src/tpm_vec.pxi":179 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) * return v3cp # <<<<<<<<<<<<<< @@ -10527,37 +15746,49 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_12__sub__(PyObject *__pyx_v_self, Py __Pyx_INCREF(((PyObject *)__pyx_v_v3cp)); __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":176 + * def __sub__(V3CP self, V3CP other): + * """Return V3CP that holds difference between two V3CPs.""" + * if isinstance(self, V3CP) and isinstance(other, V3CP): # <<<<<<<<<<<<<< + * v3cp = V3CP() + * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":181 + /* "src/tpm_vec.pxi":181 * return v3cp * else: * raise TypeError, "Can only subtract two V3CP values." # <<<<<<<<<<<<<< * * def __add__(V3CP self, V3CP other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_17), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_subtract_two_V3CP_value, 0, 0); + __PYX_ERR(1, 181, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":174 + * return v3cp + * + * def __sub__(V3CP self, V3CP other): # <<<<<<<<<<<<<< + * """Return V3CP that holds difference between two V3CPs.""" + * if isinstance(self, V3CP) and isinstance(other, V3CP): + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__sub__"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("tpm.V3CP.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":183 +/* "src/tpm_vec.pxi":183 * raise TypeError, "Can only subtract two V3CP values." * * def __add__(V3CP self, V3CP other): # <<<<<<<<<<<<<< @@ -10565,75 +15796,89 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_12__sub__(PyObject *__pyx_v_self, Py * if isinstance(self, V3CP) and isinstance(other, V3CP): */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_13__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_13__add__[] = "Return V3CP that holds the sum of two V3CPs."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3CP_13__add__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_13__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_27__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_26__add__[] = "Return V3CP that holds the sum of two V3CPs."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3CP_26__add__; +#endif +static PyObject *__pyx_pw_3tpm_4V3CP_27__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3CP, 1, "self", 0))) __PYX_ERR(1, 183, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3CP, 1, "other", 0))) __PYX_ERR(1, 183, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3CP_26__add__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_26__add__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_other) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":185 + /* "src/tpm_vec.pxi":185 * def __add__(V3CP self, V3CP other): * """Return V3CP that holds the sum of two V3CPs.""" * if isinstance(self, V3CP) and isinstance(other, V3CP): # <<<<<<<<<<<<<< * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3CP); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3CP); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":186 + /* "src/tpm_vec.pxi":186 * """Return V3CP that holds the sum of two V3CPs.""" * if isinstance(self, V3CP) and isinstance(other, V3CP): * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 186, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":187 + /* "src/tpm_vec.pxi":187 * if isinstance(self, V3CP) and isinstance(other, V3CP): * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) # <<<<<<<<<<<<<< * return v3cp * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3sum(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3sum(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 187, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":188 + /* "src/tpm_vec.pxi":188 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) * return v3cp # <<<<<<<<<<<<<< @@ -10644,37 +15889,49 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_13__add__(PyObject *__pyx_v_self, Py __Pyx_INCREF(((PyObject *)__pyx_v_v3cp)); __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":185 + * def __add__(V3CP self, V3CP other): + * """Return V3CP that holds the sum of two V3CPs.""" + * if isinstance(self, V3CP) and isinstance(other, V3CP): # <<<<<<<<<<<<<< + * v3cp = V3CP() + * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":190 + /* "src/tpm_vec.pxi":190 * return v3cp * else: * raise TypeError, "Can only add two V3CP values." # <<<<<<<<<<<<<< * * def __mul__(V3CP self, double n): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_18), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_V3CP_values, 0, 0); + __PYX_ERR(1, 190, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":183 + * raise TypeError, "Can only subtract two V3CP values." + * + * def __add__(V3CP self, V3CP other): # <<<<<<<<<<<<<< + * """Return V3CP that holds the sum of two V3CPs.""" + * if isinstance(self, V3CP) and isinstance(other, V3CP): + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__add__"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("tpm.V3CP.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":192 +/* "src/tpm_vec.pxi":192 * raise TypeError, "Can only add two V3CP values." * * def __mul__(V3CP self, double n): # <<<<<<<<<<<<<< @@ -10682,52 +15939,75 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_13__add__(PyObject *__pyx_v_self, Py * v3cp = V3CP() */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_14__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_14__mul__[] = "Scale X,Y and Z components with the scalar number."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3CP_14__mul__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_14__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_29__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_28__mul__[] = "Scale X,Y and Z components with the scalar number."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3CP_28__mul__; +#endif +static PyObject *__pyx_pw_3tpm_4V3CP_29__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n) { double __pyx_v_n; - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__mul__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__mul__ (wrapper)", 0); assert(__pyx_arg_n); { - __pyx_v_n = __pyx_PyFloat_AsDouble(__pyx_arg_n); if (unlikely((__pyx_v_n == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_n = __pyx_PyFloat_AsDouble(__pyx_arg_n); if (unlikely((__pyx_v_n == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 192, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V3CP.__mul__"); + __Pyx_AddTraceback("tpm.V3CP.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3CP, 1, "self", 0))) __PYX_ERR(1, 192, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3CP_28__mul__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((double)__pyx_v_n)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_28__mul__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self, double __pyx_v_n) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__mul__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":194 + /* "src/tpm_vec.pxi":194 * def __mul__(V3CP self, double n): * """Scale X,Y and Z components with the scalar number.""" * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3scale(self.getV3(), n)) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":195 + /* "src/tpm_vec.pxi":195 * """Scale X,Y and Z components with the scalar number.""" * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3scale(self.getV3(), n)) # <<<<<<<<<<<<<< * return v3cp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3scale(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), __pyx_v_n)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3scale(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), __pyx_v_n)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":196 + /* "src/tpm_vec.pxi":196 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3scale(self.getV3(), n)) * return v3cp # <<<<<<<<<<<<<< @@ -10739,20 +16019,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_14__mul__(PyObject *__pyx_v_self, Py __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":192 + * raise TypeError, "Can only add two V3CP values." + * + * def __mul__(V3CP self, double n): # <<<<<<<<<<<<<< + * """Scale X,Y and Z components with the scalar number.""" + * v3cp = V3CP() + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__mul__"); + __Pyx_AddTraceback("tpm.V3CP.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":198 +/* "src/tpm_vec.pxi":198 * return v3cp * * def __str__(self): # <<<<<<<<<<<<<< @@ -10760,33 +16047,49 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_14__mul__(PyObject *__pyx_v_self, Py * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_15__str__(PyObject *__pyx_v_self); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3CP_15__str__[] = "Return string representation of V3CP."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3CP_15__str__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_15__str__(PyObject *__pyx_v_self) { - PyObject *__pyx_v_s; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_31__str__(PyObject *__pyx_v_self); /*proto*/ +static char __pyx_doc_3tpm_4V3CP_30__str__[] = "Return string representation of V3CP."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3CP_30__str__; +#endif +static PyObject *__pyx_pw_3tpm_4V3CP_31__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_30__str__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_30__str__(struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { + PyObject *__pyx_v_s = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); - __pyx_v_s = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":200 + /* "src/tpm_vec.pxi":200 * def __str__(self): * """Return string representation of V3CP.""" * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") # <<<<<<<<<<<<<< * return s * */ - __pyx_t_1 = v3fmt(((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_v_s); - __pyx_v_s = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_1 = v3fmt(((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 200, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_v_s = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":201 + /* "src/tpm_vec.pxi":201 * """Return string representation of V3CP.""" * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") * return s # <<<<<<<<<<<<<< @@ -10798,20 +16101,140 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_15__str__(PyObject *__pyx_v_self) { __pyx_r = __pyx_v_s; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":198 + * return v3cp + * + * def __str__(self): # <<<<<<<<<<<<<< + * """Return string representation of V3CP.""" + * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3CP.__str__"); + __Pyx_AddTraceback("tpm.V3CP.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_s); + __Pyx_XDECREF(__pyx_v_s); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_33__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_33__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_32__reduce_cython__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_32__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3CP *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V3CP.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3CP_35__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3CP_35__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3CP_34__setstate_cython__(((struct __pyx_obj_3tpm_V3CP *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3CP_34__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3CP *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V3CP.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":233 +/* "src/tpm_vec.pxi":233 * ctype = SPHERICAL * vtype = POS * def __init__(self, r=0.0, alpha=0.0, delta=0.0): # <<<<<<<<<<<<<< @@ -10819,127 +16242,164 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3CP_15__str__(PyObject *__pyx_v_self) { * self.alpha = alpha */ -static int __pyx_pf_5pytpm_3tpm_4V3SP___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_4V3SP___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_4V3SP_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_4V3SP_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_r = 0; PyObject *__pyx_v_alpha = 0; PyObject *__pyx_v_delta = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__r,&__pyx_n_s__alpha,&__pyx_n_s__delta,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_r,&__pyx_n_s_alpha,&__pyx_n_s_delta,0}; PyObject* values[3] = {0,0,0}; - values[0] = __pyx_k_19; - values[1] = __pyx_k_20; - values[2] = __pyx_k_21; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__r); - if (value) { values[0] = value; kw_args--; } + values[0] = ((PyObject *)__pyx_float_0_0); + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_r); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alpha); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta); + if (value) { values[2] = value; kw_args--; } + } } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alpha); - if (value) { values[1] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 233, __pyx_L3_error) } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__delta); - if (value) { values[2] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_r = values[0]; __pyx_v_alpha = values[1]; __pyx_v_delta = values[2]; - } else { - __pyx_v_r = __pyx_k_19; - __pyx_v_alpha = __pyx_k_20; - __pyx_v_delta = __pyx_k_21; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: __pyx_v_delta = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_alpha = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_r = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 233, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V3SP.__init__"); + __Pyx_AddTraceback("tpm.V3SP.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_4V3SP___init__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), __pyx_v_r, __pyx_v_alpha, __pyx_v_delta); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_4V3SP___init__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_r, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":234 + /* "src/tpm_vec.pxi":234 * vtype = POS * def __init__(self, r=0.0, alpha=0.0, delta=0.0): * self.r = r # <<<<<<<<<<<<<< * self.alpha = alpha * self.delta = delta */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__r, __pyx_v_r) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_r, __pyx_v_r) < 0) __PYX_ERR(1, 234, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":235 + /* "src/tpm_vec.pxi":235 * def __init__(self, r=0.0, alpha=0.0, delta=0.0): * self.r = r * self.alpha = alpha # <<<<<<<<<<<<<< * self.delta = delta * self.setType(self.ctype) */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__alpha, __pyx_v_alpha) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_alpha, __pyx_v_alpha) < 0) __PYX_ERR(1, 235, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":236 + /* "src/tpm_vec.pxi":236 * self.r = r * self.alpha = alpha * self.delta = delta # <<<<<<<<<<<<<< * self.setType(self.ctype) * */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__delta, __pyx_v_delta) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_delta, __pyx_v_delta) < 0) __PYX_ERR(1, 236, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":237 + /* "src/tpm_vec.pxi":237 * self.alpha = alpha * self.delta = delta * self.setType(self.ctype) # <<<<<<<<<<<<<< * * def __getr(self): */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__ctype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ctype); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 237, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 237, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setType(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setType(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 237, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + /* "src/tpm_vec.pxi":233 + * ctype = SPHERICAL + * vtype = POS + * def __init__(self, r=0.0, alpha=0.0, delta=0.0): # <<<<<<<<<<<<<< + * self.r = r + * self.alpha = alpha + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__init__"); + __Pyx_AddTraceback("tpm.V3SP.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":239 +/* "src/tpm_vec.pxi":239 * self.setType(self.ctype) * * def __getr(self): # <<<<<<<<<<<<<< @@ -10947,13 +16407,29 @@ static int __pyx_pf_5pytpm_3tpm_4V3SP___init__(PyObject *__pyx_v_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_1__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_1__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_3__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_3__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getr (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_2__getr(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_2__getr(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getr"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getr", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":240 + /* "src/tpm_vec.pxi":240 * * def __getr(self): * return self.getX() # <<<<<<<<<<<<<< @@ -10961,17 +16437,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_1__getr(PyObject *__pyx_v_self, CYTH * def __setr(self, r): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 240; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 240, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":239 + * self.setType(self.ctype) + * + * def __getr(self): # <<<<<<<<<<<<<< + * return self.getX() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__getr"); + __Pyx_AddTraceback("tpm.V3SP.__getr", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -10979,7 +16462,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_1__getr(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":242 +/* "src/tpm_vec.pxi":242 * return self.getX() * * def __setr(self, r): # <<<<<<<<<<<<<< @@ -10987,30 +16470,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_1__getr(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_2__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_2__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_5__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_5__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setr (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_4__setr(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_4__setr(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setr"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setr", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":243 + /* "src/tpm_vec.pxi":243 * * def __setr(self, r): * self.setX(r) # <<<<<<<<<<<<<< * * r = property(__getr, __setr, doc="Radial coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 243, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 243, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":242 + * return self.getX() + * + * def __setr(self, r): # <<<<<<<<<<<<<< + * self.setX(r) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__setr"); + __Pyx_AddTraceback("tpm.V3SP.__setr", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11018,7 +16526,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_2__setr(PyObject *__pyx_v_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":247 +/* "src/tpm_vec.pxi":247 * r = property(__getr, __setr, doc="Radial coordinate.") * * def __getalpha(self): # <<<<<<<<<<<<<< @@ -11026,13 +16534,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_2__setr(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_3__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_3__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_7__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_7__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getalpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_6__getalpha(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_6__getalpha(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getalpha"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getalpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":248 + /* "src/tpm_vec.pxi":248 * * def __getalpha(self): * return self.getY() # <<<<<<<<<<<<<< @@ -11040,17 +16564,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_3__getalpha(PyObject *__pyx_v_self, * def __setalpha(self, alpha): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 248, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":247 + * r = property(__getr, __setr, doc="Radial coordinate.") + * + * def __getalpha(self): # <<<<<<<<<<<<<< + * return self.getY() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__getalpha"); + __Pyx_AddTraceback("tpm.V3SP.__getalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11058,7 +16589,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_3__getalpha(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":250 +/* "src/tpm_vec.pxi":250 * return self.getY() * * def __setalpha(self, alpha): # <<<<<<<<<<<<<< @@ -11066,30 +16597,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_3__getalpha(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_4__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_4__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_9__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_9__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setalpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_8__setalpha(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((PyObject *)__pyx_v_alpha)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_8__setalpha(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_alpha) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setalpha"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setalpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":251 + /* "src/tpm_vec.pxi":251 * * def __setalpha(self, alpha): * self.setY(alpha) # <<<<<<<<<<<<<< * * alpha = property(__getalpha, __setalpha, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 251, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 251, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":250 + * return self.getY() + * + * def __setalpha(self, alpha): # <<<<<<<<<<<<<< + * self.setY(alpha) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__setalpha"); + __Pyx_AddTraceback("tpm.V3SP.__setalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11097,7 +16653,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_4__setalpha(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":256 +/* "src/tpm_vec.pxi":256 * doc="Longitudinal coordinate.") * * def __getdelta(self): # <<<<<<<<<<<<<< @@ -11105,13 +16661,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_4__setalpha(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_5__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_5__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_11__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_11__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdelta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_10__getdelta(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_10__getdelta(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdelta"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdelta", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":257 + /* "src/tpm_vec.pxi":257 * * def __getdelta(self): * return self.getZ() # <<<<<<<<<<<<<< @@ -11119,17 +16691,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_5__getdelta(PyObject *__pyx_v_self, * def __setdelta(self, delta): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 257, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; + /* "src/tpm_vec.pxi":256 + * doc="Longitudinal coordinate.") + * + * def __getdelta(self): # <<<<<<<<<<<<<< + * return self.getZ() + * + */ + + /* function exit code */ + __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__getdelta"); + __Pyx_AddTraceback("tpm.V3SP.__getdelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11137,7 +16716,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_5__getdelta(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":259 +/* "src/tpm_vec.pxi":259 * return self.getZ() * * def __setdelta(self, delta): # <<<<<<<<<<<<<< @@ -11145,30 +16724,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_5__getdelta(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_6__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_6__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_13__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_13__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdelta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_12__setdelta(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((PyObject *)__pyx_v_delta)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_12__setdelta(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, PyObject *__pyx_v_delta) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setdelta"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdelta", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":260 + /* "src/tpm_vec.pxi":260 * * def __setdelta(self, delta): * self.setZ(delta) # <<<<<<<<<<<<<< * * delta = property(__getdelta, __setdelta, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 260, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 260, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":259 + * return self.getZ() + * + * def __setdelta(self, delta): # <<<<<<<<<<<<<< + * self.setZ(delta) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__setdelta"); + __Pyx_AddTraceback("tpm.V3SP.__setdelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11176,7 +16780,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_6__setdelta(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":265 +/* "src/tpm_vec.pxi":265 * doc="Latitudinal coordinate.") * * def __getnalpha(self): # <<<<<<<<<<<<<< @@ -11184,13 +16788,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_6__setdelta(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_7__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_7__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_15__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_15__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getnalpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_14__getnalpha(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_14__getnalpha(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getnalpha"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getnalpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":266 + /* "src/tpm_vec.pxi":266 * * def __getnalpha(self): * return tpm_vec.v3alpha(self.getV3()) # <<<<<<<<<<<<<< @@ -11198,17 +16818,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_7__getnalpha(PyObject *__pyx_v_self, * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3alpha(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v3alpha(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":265 + * doc="Latitudinal coordinate.") + * + * def __getnalpha(self): # <<<<<<<<<<<<<< + * return tpm_vec.v3alpha(self.getV3()) + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__getnalpha"); + __Pyx_AddTraceback("tpm.V3SP.__getnalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11216,7 +16843,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_7__getnalpha(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":270 +/* "src/tpm_vec.pxi":270 * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") * * def __getndelta(self): # <<<<<<<<<<<<<< @@ -11224,13 +16851,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_7__getnalpha(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_8__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_8__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_17__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_17__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getndelta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_16__getndelta(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_16__getndelta(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getndelta"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getndelta", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":271 + /* "src/tpm_vec.pxi":271 * * def __getndelta(self): * return tpm_vec.v3delta(self.getV3()) # <<<<<<<<<<<<<< @@ -11238,17 +16881,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_8__getndelta(PyObject *__pyx_v_self, * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3delta(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v3delta(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":270 + * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") + * + * def __getndelta(self): # <<<<<<<<<<<<<< + * return tpm_vec.v3delta(self.getV3()) + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__getndelta"); + __Pyx_AddTraceback("tpm.V3SP.__getndelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11256,7 +16906,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_8__getndelta(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":275 +/* "src/tpm_vec.pxi":275 * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") * * def s2c(self): # <<<<<<<<<<<<<< @@ -11264,50 +16914,64 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_8__getndelta(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_9s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_9s2c[] = "Convert spherical position vector into Cartesian vector.\n\n Returns\n -------\n v : tpm.V3CP\n Spherical vector converted into Cartesian.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_9s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_19s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_18s2c[] = "Convert spherical position vector into Cartesian vector.\n\n Returns\n -------\n v : tpm.V3CP\n Spherical vector converted into Cartesian.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3SP_19s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("s2c (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_18s2c(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_18s2c(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { V3 __pyx_v__v3; - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("s2c"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("s2c", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":285 + /* "src/tpm_vec.pxi":285 * """ * cdef tpm_vec.V3 _v3 * _v3 = tpm_vec.v3s2c(self.getV3()) # <<<<<<<<<<<<<< * v3cp = V3CP() * v3cp.setV3(_v3) */ - __pyx_v__v3 = v3s2c(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); + __pyx_v__v3 = v3s2c(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":286 + /* "src/tpm_vec.pxi":286 * cdef tpm_vec.V3 _v3 * _v3 = tpm_vec.v3s2c(self.getV3()) * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(_v3) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":287 + /* "src/tpm_vec.pxi":287 * _v3 = tpm_vec.v3s2c(self.getV3()) * v3cp = V3CP() * v3cp.setV3(_v3) # <<<<<<<<<<<<<< * return v3cp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), __pyx_v__v3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), __pyx_v__v3); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":288 + /* "src/tpm_vec.pxi":288 * v3cp = V3CP() * v3cp.setV3(_v3) * return v3cp # <<<<<<<<<<<<<< @@ -11319,20 +16983,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_9s2c(PyObject *__pyx_v_self, CYTHON_ __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":275 + * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") + * + * def s2c(self): # <<<<<<<<<<<<<< + * """Convert spherical position vector into Cartesian vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.s2c"); + __Pyx_AddTraceback("tpm.V3SP.s2c", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":290 +/* "src/tpm_vec.pxi":290 * return v3cp * * def mod(self): # <<<<<<<<<<<<<< @@ -11340,14 +17011,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_9s2c(PyObject *__pyx_v_self, CYTHON_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_10mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_10mod[] = "Return magnitude of radial component R.\n\n Returns\n -------\n m : float\n Length of the radial component.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_10mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_21mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_20mod[] = "Return magnitude of radial component R.\n\n Returns\n -------\n m : float\n Length of the radial component.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3SP_21mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("mod (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_20mod(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_20mod(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("mod"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("mod", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":299 + /* "src/tpm_vec.pxi":299 * * """ * return tpm_vec.v3mod(self.getV3()) # <<<<<<<<<<<<<< @@ -11355,17 +17042,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_10mod(PyObject *__pyx_v_self, CYTHON * def dot(V3SP self, V3SP other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3mod(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v3mod(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":290 + * return v3cp + * + * def mod(self): # <<<<<<<<<<<<<< + * """Return magnitude of radial component R. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.mod"); + __Pyx_AddTraceback("tpm.V3SP.mod", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11373,7 +17067,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_10mod(PyObject *__pyx_v_self, CYTHON return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":301 +/* "src/tpm_vec.pxi":301 * return tpm_vec.v3mod(self.getV3()) * * def dot(V3SP self, V3SP other): # <<<<<<<<<<<<<< @@ -11381,15 +17075,38 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_10mod(PyObject *__pyx_v_self, CYTHON * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_11dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_11dot[] = "Return the dot product of two V3SP vectors.\n\n Dot product is calculated after converting to Cartesian\n coordinates.\n\n Returns\n -------\n d : float\n Dot product.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_11dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_23dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_22dot[] = "Return the dot product of two V3SP vectors.\n\n Dot product is calculated after converting to Cartesian\n coordinates.\n\n Returns\n -------\n d : float\n Dot product.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3SP_23dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("dot (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3SP, 1, "other", 0))) __PYX_ERR(1, 301, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3SP_22dot(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3SP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_22dot(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("dot"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("dot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":313 + /* "src/tpm_vec.pxi":313 * * """ * return tpm_vec.v3dot(self.getV3(), other.getV3()) # <<<<<<<<<<<<<< @@ -11397,17 +17114,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_11dot(PyObject *__pyx_v_self, PyObje * def cross(V3SP self, V3SP other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3dot(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v3dot(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":301 + * return tpm_vec.v3mod(self.getV3()) + * + * def dot(V3SP self, V3SP other): # <<<<<<<<<<<<<< + * """Return the dot product of two V3SP vectors. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.dot"); + __Pyx_AddTraceback("tpm.V3SP.dot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -11415,7 +17139,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_11dot(PyObject *__pyx_v_self, PyObje return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":315 +/* "src/tpm_vec.pxi":315 * return tpm_vec.v3dot(self.getV3(), other.getV3()) * * def cross(V3SP self, V3SP other): # <<<<<<<<<<<<<< @@ -11423,42 +17147,64 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_11dot(PyObject *__pyx_v_self, PyObje * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_12cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_12cross[] = "Return the cross product of two V3SP vectors.\n\n Cross product is calculated after converting to Cartesian\n coordinates.\n\n Returns\n -------\n v : tpm.V3SP\n Spherical vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_12cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_25cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_24cross[] = "Return the cross product of two V3SP vectors.\n\n Cross product is calculated after converting to Cartesian\n coordinates.\n\n Returns\n -------\n v : tpm.V3SP\n Spherical vector.\n\n "; +static PyObject *__pyx_pw_3tpm_4V3SP_25cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("cross (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3SP, 1, "other", 0))) __PYX_ERR(1, 315, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3SP_24cross(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3SP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_24cross(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("cross"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_3 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("cross", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":327 + /* "src/tpm_vec.pxi":327 * * """ * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3cross(self.getV3(), other.getV3())) * return v3cp.c2s() */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 327; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":328 + /* "src/tpm_vec.pxi":328 * """ * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3cross(self.getV3(), other.getV3())) # <<<<<<<<<<<<<< * return v3cp.c2s() * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3cross(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3cross(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":329 + /* "src/tpm_vec.pxi":329 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3cross(self.getV3(), other.getV3())) * return v3cp.c2s() # <<<<<<<<<<<<<< @@ -11466,30 +17212,50 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_12cross(PyObject *__pyx_v_self, PyOb * def __sub__(V3SP self, V3SP other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_v3cp), __pyx_n_s__c2s); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_v3cp), __pyx_n_s_c2s); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 329, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_3 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_2))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_2, function); + } + } + __pyx_t_1 = (__pyx_t_3) ? __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3) : __Pyx_PyObject_CallNoArg(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 329, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_r = __pyx_t_1; + __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":315 + * return tpm_vec.v3dot(self.getV3(), other.getV3()) + * + * def cross(V3SP self, V3SP other): # <<<<<<<<<<<<<< + * """Return the cross product of two V3SP vectors. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.cross"); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_AddTraceback("tpm.V3SP.cross", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":331 +/* "src/tpm_vec.pxi":331 * return v3cp.c2s() * * def __sub__(V3SP self, V3SP other): # <<<<<<<<<<<<<< @@ -11497,75 +17263,91 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_12cross(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_13__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_13__sub__[] = "Return V3SP that holds difference between two V3SPs.\n\n Difference is taken after conversion to Cartesian coordinates.\n "; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3SP_13__sub__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_13__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_27__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_26__sub__[] = "Return V3SP that holds difference between two V3SPs.\n\n Difference is taken after conversion to Cartesian coordinates.\n "; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3SP_26__sub__; +#endif +static PyObject *__pyx_pw_3tpm_4V3SP_27__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3SP, 1, "self", 0))) __PYX_ERR(1, 331, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3SP, 1, "other", 0))) __PYX_ERR(1, 331, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3SP_26__sub__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3SP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_26__sub__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":336 + /* "src/tpm_vec.pxi":336 * Difference is taken after conversion to Cartesian coordinates. * """ * if isinstance(self, V3SP) and isinstance(other, V3SP): # <<<<<<<<<<<<<< * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3SP)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3SP); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3SP)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3SP); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":337 + /* "src/tpm_vec.pxi":337 * """ * if isinstance(self, V3SP) and isinstance(other, V3SP): * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) * return v3cp.c2s() */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 337, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":338 + /* "src/tpm_vec.pxi":338 * if isinstance(self, V3SP) and isinstance(other, V3SP): * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) # <<<<<<<<<<<<<< * return v3cp.c2s() * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3diff(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3diff(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 338, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":339 + /* "src/tpm_vec.pxi":339 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) * return v3cp.c2s() # <<<<<<<<<<<<<< @@ -11573,45 +17355,71 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_13__sub__(PyObject *__pyx_v_self, Py * raise TypeError, "Can only subtract two V3SP values." */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_v3cp), __pyx_n_s__c2s); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_v3cp), __pyx_n_s_c2s); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 339, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 339, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":336 + * Difference is taken after conversion to Cartesian coordinates. + * """ + * if isinstance(self, V3SP) and isinstance(other, V3SP): # <<<<<<<<<<<<<< + * v3cp = V3CP() + * v3cp.setV3(tpm_vec.v3diff(self.getV3(), other.getV3())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":341 + /* "src/tpm_vec.pxi":341 * return v3cp.c2s() * else: * raise TypeError, "Can only subtract two V3SP values." # <<<<<<<<<<<<<< * * def __add__(V3SP self, V3SP other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_22), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_subtract_two_V3SP_value, 0, 0); + __PYX_ERR(1, 341, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":331 + * return v3cp.c2s() + * + * def __sub__(V3SP self, V3SP other): # <<<<<<<<<<<<<< + * """Return V3SP that holds difference between two V3SPs. + * + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__sub__"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_AddTraceback("tpm.V3SP.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":343 +/* "src/tpm_vec.pxi":343 * raise TypeError, "Can only subtract two V3SP values." * * def __add__(V3SP self, V3SP other): # <<<<<<<<<<<<<< @@ -11619,75 +17427,91 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_13__sub__(PyObject *__pyx_v_self, Py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_14__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_14__add__[] = "Return V3SP that holds the sum of two V3SPs.\n\n Addition is performed after conversion to Cartesian coordinates.\n "; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3SP_14__add__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_14__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_29__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_28__add__[] = "Return V3SP that holds the sum of two V3SPs.\n\n Addition is performed after conversion to Cartesian coordinates.\n "; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3SP_28__add__; +#endif +static PyObject *__pyx_pw_3tpm_4V3SP_29__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3SP, 1, "self", 0))) __PYX_ERR(1, 343, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3SP, 1, "other", 0))) __PYX_ERR(1, 343, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3SP_28__add__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3SP *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_28__add__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, struct __pyx_obj_3tpm_V3SP *__pyx_v_other) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":348 + /* "src/tpm_vec.pxi":348 * Addition is performed after conversion to Cartesian coordinates. * """ * if isinstance(self, V3SP) and isinstance(other, V3SP): # <<<<<<<<<<<<<< * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3SP)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3SP); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3SP)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V3SP); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":349 + /* "src/tpm_vec.pxi":349 * """ * if isinstance(self, V3SP) and isinstance(other, V3SP): * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) * return v3cp.c2s() */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 349, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":350 + /* "src/tpm_vec.pxi":350 * if isinstance(self, V3SP) and isinstance(other, V3SP): * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) # <<<<<<<<<<<<<< * return v3cp.c2s() * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v3sum(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v3sum(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 350, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":351 + /* "src/tpm_vec.pxi":351 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) * return v3cp.c2s() # <<<<<<<<<<<<<< @@ -11695,45 +17519,71 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_14__add__(PyObject *__pyx_v_self, Py * raise TypeError, "Can only add two V3SP values." */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_v3cp), __pyx_n_s__c2s); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_v3cp), __pyx_n_s_c2s); if (unlikely(!__pyx_t_5)) __PYX_ERR(1, 351, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + } + } + __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6) : __Pyx_PyObject_CallNoArg(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 351, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":348 + * Addition is performed after conversion to Cartesian coordinates. + * """ + * if isinstance(self, V3SP) and isinstance(other, V3SP): # <<<<<<<<<<<<<< + * v3cp = V3CP() + * v3cp.setV3(tpm_vec.v3sum(self.getV3(), other.getV3())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":353 + /* "src/tpm_vec.pxi":353 * return v3cp.c2s() * else: * raise TypeError, "Can only add two V3SP values." # <<<<<<<<<<<<<< * * def __mul__(V3SP self, double n): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_23), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_V3SP_values, 0, 0); + __PYX_ERR(1, 353, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":343 + * raise TypeError, "Can only subtract two V3SP values." + * + * def __add__(V3SP self, V3SP other): # <<<<<<<<<<<<<< + * """Return V3SP that holds the sum of two V3SPs. + * + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__add__"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_AddTraceback("tpm.V3SP.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":355 +/* "src/tpm_vec.pxi":355 * raise TypeError, "Can only add two V3SP values." * * def __mul__(V3SP self, double n): # <<<<<<<<<<<<<< @@ -11741,52 +17591,75 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_14__add__(PyObject *__pyx_v_self, Py * v3sp = V3SP() */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_15__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4V3SP_15__mul__[] = "Scale R with the scalar number."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4V3SP_15__mul__; -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_15__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_31__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n); /*proto*/ +static char __pyx_doc_3tpm_4V3SP_30__mul__[] = "Scale R with the scalar number."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4V3SP_30__mul__; +#endif +static PyObject *__pyx_pw_3tpm_4V3SP_31__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_n) { double __pyx_v_n; - struct __pyx_obj_5pytpm_3tpm_V3SP *__pyx_v_v3sp; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__mul__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__mul__ (wrapper)", 0); assert(__pyx_arg_n); { - __pyx_v_n = __pyx_PyFloat_AsDouble(__pyx_arg_n); if (unlikely((__pyx_v_n == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_n = __pyx_PyFloat_AsDouble(__pyx_arg_n); if (unlikely((__pyx_v_n == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 355, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V3SP.__mul__"); + __Pyx_AddTraceback("tpm.V3SP.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v3sp = ((struct __pyx_obj_5pytpm_3tpm_V3SP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V3SP, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":357 - * def __mul__(V3SP self, double n): - * """Scale R with the scalar number.""" - * v3sp = V3SP() # <<<<<<<<<<<<<< - * v3sp.setV3(tpm_vec.v3scale(self.getV3(), n)) - * return v3sp - */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3SP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3sp)); - __pyx_v_v3sp = ((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_t_1); - __pyx_t_1 = 0; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V3SP, 1, "self", 0))) __PYX_ERR(1, 355, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4V3SP_30__mul__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((double)__pyx_v_n)); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":358 + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_30__mul__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self, double __pyx_v_n) { + struct __pyx_obj_3tpm_V3SP *__pyx_v_v3sp = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__mul__", 0); + + /* "src/tpm_vec.pxi":357 + * def __mul__(V3SP self, double n): + * """Scale R with the scalar number.""" + * v3sp = V3SP() # <<<<<<<<<<<<<< + * v3sp.setV3(tpm_vec.v3scale(self.getV3(), n)) + * return v3sp + */ + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3SP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 357, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_v_v3sp = ((struct __pyx_obj_3tpm_V3SP *)__pyx_t_1); + __pyx_t_1 = 0; + + /* "src/tpm_vec.pxi":358 * """Scale R with the scalar number.""" * v3sp = V3SP() * v3sp.setV3(tpm_vec.v3scale(self.getV3(), n)) # <<<<<<<<<<<<<< * return v3sp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)__pyx_v_v3sp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3sp), v3scale(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self)), __pyx_v_n)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_v3sp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3sp), v3scale(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self)), __pyx_v_n)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":359 + /* "src/tpm_vec.pxi":359 * v3sp = V3SP() * v3sp.setV3(tpm_vec.v3scale(self.getV3(), n)) * return v3sp # <<<<<<<<<<<<<< @@ -11798,20 +17671,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_15__mul__(PyObject *__pyx_v_self, Py __pyx_r = ((PyObject *)__pyx_v_v3sp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":355 + * raise TypeError, "Can only add two V3SP values." + * + * def __mul__(V3SP self, double n): # <<<<<<<<<<<<<< + * """Scale R with the scalar number.""" + * v3sp = V3SP() + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__mul__"); + __Pyx_AddTraceback("tpm.V3SP.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3sp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3sp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":361 +/* "src/tpm_vec.pxi":361 * return v3sp * * def __str__(self): # <<<<<<<<<<<<<< @@ -11819,31 +17699,45 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_15__mul__(PyObject *__pyx_v_self, Py * return s */ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_16__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_16__str__(PyObject *__pyx_v_self) { - PyObject *__pyx_v_s; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_33__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_33__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_32__str__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_32__str__(struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { + PyObject *__pyx_v_s = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); - __pyx_v_s = Py_None; __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":362 + /* "src/tpm_vec.pxi":362 * * def __str__(self): * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") # <<<<<<<<<<<<<< * return s * */ - __pyx_t_1 = v3fmt(((struct __pyx_vtabstruct_5pytpm_3tpm_V3SP *)((struct __pyx_obj_5pytpm_3tpm_V3SP *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_self))); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_v_s); - __pyx_v_s = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_1 = v3fmt(((struct __pyx_vtabstruct_3tpm_V3SP *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_self))); + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 362, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_v_s = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":363 + /* "src/tpm_vec.pxi":363 * def __str__(self): * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") * return s # <<<<<<<<<<<<<< @@ -11855,20 +17749,140 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_16__str__(PyObject *__pyx_v_self) { __pyx_r = __pyx_v_s; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":361 + * return v3sp + * + * def __str__(self): # <<<<<<<<<<<<<< + * s = tpm_vec.v3fmt(self.getV3()).decode("utf-8") + * return s + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V3SP.__str__"); + __Pyx_AddTraceback("tpm.V3SP.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF(__pyx_v_s); + __Pyx_XDECREF(__pyx_v_s); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_34__reduce_cython__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3SP *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V3SP.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4V3SP_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_4V3SP_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4V3SP_36__setstate_cython__(((struct __pyx_obj_3tpm_V3SP *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4V3SP_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V3SP *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__15, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V3SP.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":370 +/* "src/tpm_vec.pxi":370 * cdef tpm_vec.V6 _v6 * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -11876,141 +17890,166 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4V3SP_16__str__(PyObject *__pyx_v_self) { * self._v6.v[POS].v[0] = 0.0 */ -static int __pyx_pf_5pytpm_3tpm_2V6___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2V6___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2V6_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2V6_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_2V6___cinit__(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2V6___cinit__(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + Py_ssize_t __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":371 + /* "src/tpm_vec.pxi":371 * * def __cinit__(self): * self._v6.v[POS].type = CARTESIAN # <<<<<<<<<<<<<< * self._v6.v[POS].v[0] = 0.0 * self._v6.v[POS].v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 371, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 371, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 371, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).type = __pyx_t_2; + (__pyx_v_self->_v6.v[__pyx_t_3]).type = __pyx_t_2; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":372 + /* "src/tpm_vec.pxi":372 * def __cinit__(self): * self._v6.v[POS].type = CARTESIAN * self._v6.v[POS].v[0] = 0.0 # <<<<<<<<<<<<<< * self._v6.v[POS].v[1] = 0.0 * self._v6.v[POS].v[2] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 372, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 372, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[0]) = 0.0; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":373 + /* "src/tpm_vec.pxi":373 * self._v6.v[POS].type = CARTESIAN * self._v6.v[POS].v[0] = 0.0 * self._v6.v[POS].v[1] = 0.0 # <<<<<<<<<<<<<< * self._v6.v[POS].v[2] = 0.0 * self._v6.v[VEL].type = CARTESIAN */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 373; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 373, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 373; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 373, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[1]) = 0.0; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":374 + /* "src/tpm_vec.pxi":374 * self._v6.v[POS].v[0] = 0.0 * self._v6.v[POS].v[1] = 0.0 * self._v6.v[POS].v[2] = 0.0 # <<<<<<<<<<<<<< * self._v6.v[VEL].type = CARTESIAN * self._v6.v[VEL].v[0] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 374; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 374, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 374; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 374, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[2]) = 0.0; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[2]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":375 + /* "src/tpm_vec.pxi":375 * self._v6.v[POS].v[1] = 0.0 * self._v6.v[POS].v[2] = 0.0 * self._v6.v[VEL].type = CARTESIAN # <<<<<<<<<<<<<< * self._v6.v[VEL].v[0] = 0.0 * self._v6.v[VEL].v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 375, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 375, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 375, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 375, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).type = __pyx_t_2; + (__pyx_v_self->_v6.v[__pyx_t_3]).type = __pyx_t_2; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":376 + /* "src/tpm_vec.pxi":376 * self._v6.v[POS].v[2] = 0.0 * self._v6.v[VEL].type = CARTESIAN * self._v6.v[VEL].v[0] = 0.0 # <<<<<<<<<<<<<< * self._v6.v[VEL].v[1] = 0.0 * self._v6.v[VEL].v[2] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 376, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[0]) = 0.0; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":377 + /* "src/tpm_vec.pxi":377 * self._v6.v[VEL].type = CARTESIAN * self._v6.v[VEL].v[0] = 0.0 * self._v6.v[VEL].v[1] = 0.0 # <<<<<<<<<<<<<< * self._v6.v[VEL].v[2] = 0.0 * */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 377, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[1]) = 0.0; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":378 + /* "src/tpm_vec.pxi":378 * self._v6.v[VEL].v[0] = 0.0 * self._v6.v[VEL].v[1] = 0.0 * self._v6.v[VEL].v[2] = 0.0 # <<<<<<<<<<<<<< * * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 378, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 378, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[2]) = 0.0; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[2]) = 0.0; + + /* "src/tpm_vec.pxi":370 + * cdef tpm_vec.V6 _v6 + * + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._v6.v[POS].type = CARTESIAN + * self._v6.v[POS].v[0] = 0.0 + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.__cinit__"); + __Pyx_AddTraceback("tpm.V6.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":380 +/* "src/tpm_vec.pxi":380 * self._v6.v[VEL].v[2] = 0.0 * * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, # <<<<<<<<<<<<<< @@ -12018,8 +18057,9 @@ static int __pyx_pf_5pytpm_3tpm_2V6___cinit__(PyObject *__pyx_v_self, PyObject * * self._v6.v[POS].type = ctype */ -static int __pyx_pf_5pytpm_3tpm_2V6_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2V6_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2V6_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2V6_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_ctype = 0; PyObject *__pyx_v_x = 0; PyObject *__pyx_v_y = 0; @@ -12027,74 +18067,110 @@ static int __pyx_pf_5pytpm_3tpm_2V6_1__init__(PyObject *__pyx_v_self, PyObject * PyObject *__pyx_v_xdot = 0; PyObject *__pyx_v_ydot = 0; PyObject *__pyx_v_zdot = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - double __pyx_t_4; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__ctype,&__pyx_n_s__x,&__pyx_n_s__y,&__pyx_n_s__z,&__pyx_n_s__xdot,&__pyx_n_s__ydot,&__pyx_n_s__zdot,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_ctype,&__pyx_n_s_x,&__pyx_n_s_y,&__pyx_n_s_z,&__pyx_n_s_xdot,&__pyx_n_s_ydot,&__pyx_n_s_zdot,0}; PyObject* values[7] = {0,0,0,0,0,0,0}; - values[0] = __pyx_k_24; - values[1] = __pyx_k_25; - values[2] = __pyx_k_26; - values[3] = __pyx_k_27; - values[4] = __pyx_k_28; - values[5] = __pyx_k_29; - values[6] = __pyx_k_30; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ctype); - if (value) { values[0] = value; kw_args--; } - } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (value) { values[1] = value; kw_args--; } + values[0] = __pyx_k__16; + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + values[3] = ((PyObject *)__pyx_float_0_0); + values[4] = ((PyObject *)__pyx_float_0_0); + values[5] = ((PyObject *)__pyx_float_0_0); + values[6] = ((PyObject *)__pyx_float_0_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (value) { values[2] = value; kw_args--; } - } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__z); - if (value) { values[3] = value; kw_args--; } - } - case 4: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xdot); - if (value) { values[4] = value; kw_args--; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ctype); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_x); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_y); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_z); + if (value) { values[3] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 4: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xdot); + if (value) { values[4] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 5: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ydot); + if (value) { values[5] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 6: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zdot); + if (value) { values[6] = value; kw_args--; } + } } - case 5: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ydot); - if (value) { values[5] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 380, __pyx_L3_error) } - case 6: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zdot); - if (value) { values[6] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_ctype = values[0]; __pyx_v_x = values[1]; __pyx_v_y = values[2]; @@ -12102,159 +18178,167 @@ static int __pyx_pf_5pytpm_3tpm_2V6_1__init__(PyObject *__pyx_v_self, PyObject * __pyx_v_xdot = values[4]; __pyx_v_ydot = values[5]; __pyx_v_zdot = values[6]; - } else { - __pyx_v_ctype = __pyx_k_24; - __pyx_v_x = __pyx_k_25; - __pyx_v_y = __pyx_k_26; - __pyx_v_z = __pyx_k_27; - __pyx_v_xdot = __pyx_k_28; - __pyx_v_ydot = __pyx_k_29; - __pyx_v_zdot = __pyx_k_30; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 7: __pyx_v_zdot = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: __pyx_v_ydot = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: __pyx_v_xdot = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: __pyx_v_z = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_y = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_x = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_ctype = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 380, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V6.__init__"); + __Pyx_AddTraceback("tpm.V6.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2V6_2__init__(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_v_ctype, __pyx_v_x, __pyx_v_y, __pyx_v_z, __pyx_v_xdot, __pyx_v_ydot, __pyx_v_zdot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2V6_2__init__(struct __pyx_obj_3tpm_V6 *__pyx_v_self, PyObject *__pyx_v_ctype, PyObject *__pyx_v_x, PyObject *__pyx_v_y, PyObject *__pyx_v_z, PyObject *__pyx_v_xdot, PyObject *__pyx_v_ydot, PyObject *__pyx_v_zdot) { + int __pyx_r; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + PyObject *__pyx_t_2 = NULL; + Py_ssize_t __pyx_t_3; + double __pyx_t_4; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":382 + /* "src/tpm_vec.pxi":382 * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, * xdot=0.0, ydot=0.0, zdot=0.0): * self._v6.v[POS].type = ctype # <<<<<<<<<<<<<< * self._v6.v[POS].v[0] = x * self._v6.v[POS].v[1] = y */ - __pyx_t_1 = __Pyx_PyInt_AsInt(__pyx_v_ctype); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_ctype); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 382, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_POS); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 382, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 382, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - (((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).type = __pyx_t_1; + (__pyx_v_self->_v6.v[__pyx_t_3]).type = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":383 + /* "src/tpm_vec.pxi":383 * xdot=0.0, ydot=0.0, zdot=0.0): * self._v6.v[POS].type = ctype * self._v6.v[POS].v[0] = x # <<<<<<<<<<<<<< * self._v6.v[POS].v[1] = y * self._v6.v[POS].v[2] = z */ - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 383, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_POS); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 383, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 383, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[0]) = __pyx_t_4; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[0]) = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":384 + /* "src/tpm_vec.pxi":384 * self._v6.v[POS].type = ctype * self._v6.v[POS].v[0] = x * self._v6.v[POS].v[1] = y # <<<<<<<<<<<<<< * self._v6.v[POS].v[2] = z * self._v6.v[VEL].type = ctype */ - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 384, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_POS); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 384, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 384, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[1]) = __pyx_t_4; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[1]) = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":385 + /* "src/tpm_vec.pxi":385 * self._v6.v[POS].v[0] = x * self._v6.v[POS].v[1] = y * self._v6.v[POS].v[2] = z # <<<<<<<<<<<<<< * self._v6.v[VEL].type = ctype * self._v6.v[VEL].v[0] = xdot */ - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 385, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_POS); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 385, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[2]) = __pyx_t_4; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[2]) = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":386 + /* "src/tpm_vec.pxi":386 * self._v6.v[POS].v[1] = y * self._v6.v[POS].v[2] = z * self._v6.v[VEL].type = ctype # <<<<<<<<<<<<<< * self._v6.v[VEL].v[0] = xdot * self._v6.v[VEL].v[1] = ydot */ - __pyx_t_1 = __Pyx_PyInt_AsInt(__pyx_v_ctype); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_ctype); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 386, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_VEL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 386, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - (((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).type = __pyx_t_1; + (__pyx_v_self->_v6.v[__pyx_t_3]).type = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":387 + /* "src/tpm_vec.pxi":387 * self._v6.v[POS].v[2] = z * self._v6.v[VEL].type = ctype * self._v6.v[VEL].v[0] = xdot # <<<<<<<<<<<<<< * self._v6.v[VEL].v[1] = ydot * self._v6.v[VEL].v[2] = zdot */ - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_xdot); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_xdot); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 387, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_VEL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 387, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[0]) = __pyx_t_4; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[0]) = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":388 + /* "src/tpm_vec.pxi":388 * self._v6.v[VEL].type = ctype * self._v6.v[VEL].v[0] = xdot * self._v6.v[VEL].v[1] = ydot # <<<<<<<<<<<<<< * self._v6.v[VEL].v[2] = zdot * */ - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_ydot); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_ydot); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 388, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_VEL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 388, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 388, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[1]) = __pyx_t_4; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[1]) = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":389 + /* "src/tpm_vec.pxi":389 * self._v6.v[VEL].v[0] = xdot * self._v6.v[VEL].v[1] = ydot * self._v6.v[VEL].v[2] = zdot # <<<<<<<<<<<<<< * * cdef int getType(self): */ - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_zdot); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_zdot); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 389, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_VEL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 389, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 389, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)->_v6.v[__pyx_t_3]).v[2]) = __pyx_t_4; + ((__pyx_v_self->_v6.v[__pyx_t_3]).v[2]) = __pyx_t_4; + + /* "src/tpm_vec.pxi":380 + * self._v6.v[VEL].v[2] = 0.0 + * + * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, # <<<<<<<<<<<<<< + * xdot=0.0, ydot=0.0, zdot=0.0): + * self._v6.v[POS].type = ctype + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6.__init__"); + __Pyx_AddTraceback("tpm.V6.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":391 +/* "src/tpm_vec.pxi":391 * self._v6.v[VEL].v[2] = zdot * * cdef int getType(self): # <<<<<<<<<<<<<< @@ -12262,38 +18346,49 @@ static int __pyx_pf_5pytpm_3tpm_2V6_1__init__(PyObject *__pyx_v_self, PyObject * * */ -static int __pyx_f_5pytpm_3tpm_2V6_getType(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static int __pyx_f_3tpm_2V6_getType(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { int __pyx_r; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getType"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getType", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":392 + /* "src/tpm_vec.pxi":392 * * cdef int getType(self): * return self._v6.v[POS].type # <<<<<<<<<<<<<< * * cdef setType(self, int t): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 392; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 392; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 392, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = (__pyx_v_self->_v6.v[__pyx_t_2]).type; goto __pyx_L0; - __pyx_r = 0; - goto __pyx_L0; + /* "src/tpm_vec.pxi":391 + * self._v6.v[VEL].v[2] = zdot + * + * cdef int getType(self): # <<<<<<<<<<<<<< + * return self._v6.v[POS].type + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_WriteUnraisable("pytpm.tpm.V6.getType"); + __Pyx_WriteUnraisable("tpm.V6.getType", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); __pyx_r = 0; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":394 +/* "src/tpm_vec.pxi":394 * return self._v6.v[POS].type * * cdef setType(self, int t): # <<<<<<<<<<<<<< @@ -12301,43 +18396,56 @@ static int __pyx_f_5pytpm_3tpm_2V6_getType(struct __pyx_obj_5pytpm_3tpm_V6 *__p * self._v6.v[VEL].type = t */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setType(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, int __pyx_v_t) { +static PyObject *__pyx_f_3tpm_2V6_setType(struct __pyx_obj_3tpm_V6 *__pyx_v_self, int __pyx_v_t) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setType"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setType", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":395 + /* "src/tpm_vec.pxi":395 * * cdef setType(self, int t): * self._v6.v[POS].type = t # <<<<<<<<<<<<<< * self._v6.v[VEL].type = t * */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 395; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 395, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 395; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 395, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; (__pyx_v_self->_v6.v[__pyx_t_2]).type = __pyx_v_t; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":396 + /* "src/tpm_vec.pxi":396 * cdef setType(self, int t): * self._v6.v[POS].type = t * self._v6.v[VEL].type = t # <<<<<<<<<<<<<< * * cdef getX(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 396; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 396, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 396; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 396, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; (__pyx_v_self->_v6.v[__pyx_t_2]).type = __pyx_v_t; + /* "src/tpm_vec.pxi":394 + * return self._v6.v[POS].type + * + * cdef setType(self, int t): # <<<<<<<<<<<<<< + * self._v6.v[POS].type = t + * self._v6.v[VEL].type = t + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setType"); + __Pyx_AddTraceback("tpm.V6.setType", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12345,7 +18453,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setType(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":398 +/* "src/tpm_vec.pxi":398 * self._v6.v[VEL].type = t * * cdef getX(self): # <<<<<<<<<<<<<< @@ -12353,13 +18461,17 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setType(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_getX(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static PyObject *__pyx_f_3tpm_2V6_getX(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getX"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getX", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":399 + /* "src/tpm_vec.pxi":399 * * cdef getX(self): * return self._v6.v[POS].v[0] # <<<<<<<<<<<<<< @@ -12367,21 +18479,28 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getX(struct __pyx_obj_5pytpm_3tpm_V6 * * cdef setX(self, double x): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 399, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":398 + * self._v6.v[VEL].type = t + * + * cdef getX(self): # <<<<<<<<<<<<<< + * return self._v6.v[POS].v[0] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.getX"); + __Pyx_AddTraceback("tpm.V6.getX", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12389,7 +18508,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getX(struct __pyx_obj_5pytpm_3tpm_V6 * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":401 +/* "src/tpm_vec.pxi":401 * return self._v6.v[POS].v[0] * * cdef setX(self, double x): # <<<<<<<<<<<<<< @@ -12397,30 +18516,43 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getX(struct __pyx_obj_5pytpm_3tpm_V6 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setX(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, double __pyx_v_x) { +static PyObject *__pyx_f_3tpm_2V6_setX(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_x) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setX"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setX", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":402 + /* "src/tpm_vec.pxi":402 * * cdef setX(self, double x): * self._v6.v[POS].v[0] = x # <<<<<<<<<<<<<< * * cdef getY(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 402, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 402, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; ((__pyx_v_self->_v6.v[__pyx_t_2]).v[0]) = __pyx_v_x; + /* "src/tpm_vec.pxi":401 + * return self._v6.v[POS].v[0] + * + * cdef setX(self, double x): # <<<<<<<<<<<<<< + * self._v6.v[POS].v[0] = x + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setX"); + __Pyx_AddTraceback("tpm.V6.setX", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12428,7 +18560,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setX(struct __pyx_obj_5pytpm_3tpm_V6 * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":404 +/* "src/tpm_vec.pxi":404 * self._v6.v[POS].v[0] = x * * cdef getY(self): # <<<<<<<<<<<<<< @@ -12436,13 +18568,17 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setX(struct __pyx_obj_5pytpm_3tpm_V6 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_getY(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static PyObject *__pyx_f_3tpm_2V6_getY(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getY"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getY", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":405 + /* "src/tpm_vec.pxi":405 * * cdef getY(self): * return self._v6.v[POS].v[1] # <<<<<<<<<<<<<< @@ -12450,21 +18586,28 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getY(struct __pyx_obj_5pytpm_3tpm_V6 * * cdef setY(self, double y): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 405, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 405, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 405, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":404 + * self._v6.v[POS].v[0] = x + * + * cdef getY(self): # <<<<<<<<<<<<<< + * return self._v6.v[POS].v[1] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.getY"); + __Pyx_AddTraceback("tpm.V6.getY", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12472,7 +18615,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getY(struct __pyx_obj_5pytpm_3tpm_V6 * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":407 +/* "src/tpm_vec.pxi":407 * return self._v6.v[POS].v[1] * * cdef setY(self, double y): # <<<<<<<<<<<<<< @@ -12480,30 +18623,43 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getY(struct __pyx_obj_5pytpm_3tpm_V6 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setY(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, double __pyx_v_y) { +static PyObject *__pyx_f_3tpm_2V6_setY(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_y) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setY"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setY", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":408 + /* "src/tpm_vec.pxi":408 * * cdef setY(self, double y): * self._v6.v[POS].v[1] = y # <<<<<<<<<<<<<< * * cdef getZ(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 408, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 408, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; ((__pyx_v_self->_v6.v[__pyx_t_2]).v[1]) = __pyx_v_y; + /* "src/tpm_vec.pxi":407 + * return self._v6.v[POS].v[1] + * + * cdef setY(self, double y): # <<<<<<<<<<<<<< + * self._v6.v[POS].v[1] = y + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setY"); + __Pyx_AddTraceback("tpm.V6.setY", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12511,7 +18667,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setY(struct __pyx_obj_5pytpm_3tpm_V6 * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":410 +/* "src/tpm_vec.pxi":410 * self._v6.v[POS].v[1] = y * * cdef getZ(self): # <<<<<<<<<<<<<< @@ -12519,13 +18675,17 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setY(struct __pyx_obj_5pytpm_3tpm_V6 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZ(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static PyObject *__pyx_f_3tpm_2V6_getZ(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getZ"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getZ", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":411 + /* "src/tpm_vec.pxi":411 * * cdef getZ(self): * return self._v6.v[POS].v[2] # <<<<<<<<<<<<<< @@ -12533,21 +18693,28 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZ(struct __pyx_obj_5pytpm_3tpm_V6 * * cdef setZ(self, double z): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 411, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 411, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[2])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[2])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 411, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":410 + * self._v6.v[POS].v[1] = y + * + * cdef getZ(self): # <<<<<<<<<<<<<< + * return self._v6.v[POS].v[2] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.getZ"); + __Pyx_AddTraceback("tpm.V6.getZ", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12555,7 +18722,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZ(struct __pyx_obj_5pytpm_3tpm_V6 * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":413 +/* "src/tpm_vec.pxi":413 * return self._v6.v[POS].v[2] * * cdef setZ(self, double z): # <<<<<<<<<<<<<< @@ -12563,30 +18730,43 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZ(struct __pyx_obj_5pytpm_3tpm_V6 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setZ(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, double __pyx_v_z) { +static PyObject *__pyx_f_3tpm_2V6_setZ(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_z) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setZ"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setZ", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":414 + /* "src/tpm_vec.pxi":414 * * cdef setZ(self, double z): * self._v6.v[POS].v[2] = z # <<<<<<<<<<<<<< * * cdef getXdot(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 414, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 414, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; ((__pyx_v_self->_v6.v[__pyx_t_2]).v[2]) = __pyx_v_z; + /* "src/tpm_vec.pxi":413 + * return self._v6.v[POS].v[2] + * + * cdef setZ(self, double z): # <<<<<<<<<<<<<< + * self._v6.v[POS].v[2] = z + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setZ"); + __Pyx_AddTraceback("tpm.V6.setZ", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12594,7 +18774,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setZ(struct __pyx_obj_5pytpm_3tpm_V6 * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":416 +/* "src/tpm_vec.pxi":416 * self._v6.v[POS].v[2] = z * * cdef getXdot(self): # <<<<<<<<<<<<<< @@ -12602,13 +18782,17 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setZ(struct __pyx_obj_5pytpm_3tpm_V6 * * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_getXdot(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static PyObject *__pyx_f_3tpm_2V6_getXdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getXdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getXdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":417 + /* "src/tpm_vec.pxi":417 * * cdef getXdot(self): * return self._v6.v[VEL].v[0] # <<<<<<<<<<<<<< @@ -12616,21 +18800,28 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getXdot(struct __pyx_obj_5pytpm_3tpm_V * cdef setXdot(self, double xdot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 417, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 417, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 417, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":416 + * self._v6.v[POS].v[2] = z + * + * cdef getXdot(self): # <<<<<<<<<<<<<< + * return self._v6.v[VEL].v[0] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.getXdot"); + __Pyx_AddTraceback("tpm.V6.getXdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12638,7 +18829,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getXdot(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":419 +/* "src/tpm_vec.pxi":419 * return self._v6.v[VEL].v[0] * * cdef setXdot(self, double xdot): # <<<<<<<<<<<<<< @@ -12646,30 +18837,43 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getXdot(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setXdot(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, double __pyx_v_xdot) { +static PyObject *__pyx_f_3tpm_2V6_setXdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_xdot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setXdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setXdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":420 + /* "src/tpm_vec.pxi":420 * * cdef setXdot(self, double xdot): * self._v6.v[VEL].v[0] = xdot # <<<<<<<<<<<<<< * * cdef getYdot(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 420, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; ((__pyx_v_self->_v6.v[__pyx_t_2]).v[0]) = __pyx_v_xdot; + /* "src/tpm_vec.pxi":419 + * return self._v6.v[VEL].v[0] + * + * cdef setXdot(self, double xdot): # <<<<<<<<<<<<<< + * self._v6.v[VEL].v[0] = xdot + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setXdot"); + __Pyx_AddTraceback("tpm.V6.setXdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12677,7 +18881,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setXdot(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":422 +/* "src/tpm_vec.pxi":422 * self._v6.v[VEL].v[0] = xdot * * cdef getYdot(self): # <<<<<<<<<<<<<< @@ -12685,13 +18889,17 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setXdot(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_getYdot(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static PyObject *__pyx_f_3tpm_2V6_getYdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getYdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getYdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":423 + /* "src/tpm_vec.pxi":423 * * cdef getYdot(self): * return self._v6.v[VEL].v[1] # <<<<<<<<<<<<<< @@ -12699,21 +18907,28 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getYdot(struct __pyx_obj_5pytpm_3tpm_V * cdef setYdot(self, double ydot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 423, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":422 + * self._v6.v[VEL].v[0] = xdot + * + * cdef getYdot(self): # <<<<<<<<<<<<<< + * return self._v6.v[VEL].v[1] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.getYdot"); + __Pyx_AddTraceback("tpm.V6.getYdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12721,7 +18936,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getYdot(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":425 +/* "src/tpm_vec.pxi":425 * return self._v6.v[VEL].v[1] * * cdef setYdot(self, double ydot): # <<<<<<<<<<<<<< @@ -12729,30 +18944,43 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getYdot(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setYdot(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, double __pyx_v_ydot) { +static PyObject *__pyx_f_3tpm_2V6_setYdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_ydot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setYdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setYdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":426 + /* "src/tpm_vec.pxi":426 * * cdef setYdot(self, double ydot): * self._v6.v[VEL].v[1] = ydot # <<<<<<<<<<<<<< * * cdef getZdot(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 426, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; ((__pyx_v_self->_v6.v[__pyx_t_2]).v[1]) = __pyx_v_ydot; + /* "src/tpm_vec.pxi":425 + * return self._v6.v[VEL].v[1] + * + * cdef setYdot(self, double ydot): # <<<<<<<<<<<<<< + * self._v6.v[VEL].v[1] = ydot + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setYdot"); + __Pyx_AddTraceback("tpm.V6.setYdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12760,7 +18988,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setYdot(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":428 +/* "src/tpm_vec.pxi":428 * self._v6.v[VEL].v[1] = ydot * * cdef getZdot(self): # <<<<<<<<<<<<<< @@ -12768,13 +18996,17 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setYdot(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZdot(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static PyObject *__pyx_f_3tpm_2V6_getZdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getZdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getZdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":429 + /* "src/tpm_vec.pxi":429 * * cdef getZdot(self): * return self._v6.v[VEL].v[2] # <<<<<<<<<<<<<< @@ -12782,21 +19014,28 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZdot(struct __pyx_obj_5pytpm_3tpm_V * cdef setZdot(self, double zdot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 429, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[2])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_v6.v[__pyx_t_2]).v[2])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":428 + * self._v6.v[VEL].v[1] = ydot + * + * cdef getZdot(self): # <<<<<<<<<<<<<< + * return self._v6.v[VEL].v[2] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.getZdot"); + __Pyx_AddTraceback("tpm.V6.getZdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12804,7 +19043,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZdot(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":431 +/* "src/tpm_vec.pxi":431 * return self._v6.v[VEL].v[2] * * cdef setZdot(self, double zdot): # <<<<<<<<<<<<<< @@ -12812,30 +19051,43 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_getZdot(struct __pyx_obj_5pytpm_3tpm_V * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setZdot(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, double __pyx_v_zdot) { +static PyObject *__pyx_f_3tpm_2V6_setZdot(struct __pyx_obj_3tpm_V6 *__pyx_v_self, double __pyx_v_zdot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("setZdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setZdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":432 + /* "src/tpm_vec.pxi":432 * * cdef setZdot(self, double zdot): * self._v6.v[VEL].v[2] = zdot # <<<<<<<<<<<<<< * * cdef tpm_vec.V6 getV6(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 432; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 432; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 432, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; ((__pyx_v_self->_v6.v[__pyx_t_2]).v[2]) = __pyx_v_zdot; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); + /* "src/tpm_vec.pxi":431 + * return self._v6.v[VEL].v[2] + * + * cdef setZdot(self, double zdot): # <<<<<<<<<<<<<< + * self._v6.v[VEL].v[2] = zdot + * + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6.setZdot"); + __Pyx_AddTraceback("tpm.V6.setZdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12843,7 +19095,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setZdot(struct __pyx_obj_5pytpm_3tpm_V return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":434 +/* "src/tpm_vec.pxi":434 * self._v6.v[VEL].v[2] = zdot * * cdef tpm_vec.V6 getV6(self): # <<<<<<<<<<<<<< @@ -12851,11 +19103,12 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setZdot(struct __pyx_obj_5pytpm_3tpm_V * */ -static V6 __pyx_f_5pytpm_3tpm_2V6_getV6(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static V6 __pyx_f_3tpm_2V6_getV6(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { V6 __pyx_r; - __Pyx_RefNannySetupContext("getV6"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getV6", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":435 + /* "src/tpm_vec.pxi":435 * * cdef tpm_vec.V6 getV6(self): * return self._v6 # <<<<<<<<<<<<<< @@ -12865,12 +19118,21 @@ static V6 __pyx_f_5pytpm_3tpm_2V6_getV6(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_ __pyx_r = __pyx_v_self->_v6; goto __pyx_L0; + /* "src/tpm_vec.pxi":434 + * self._v6.v[VEL].v[2] = zdot + * + * cdef tpm_vec.V6 getV6(self): # <<<<<<<<<<<<<< + * return self._v6 + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":437 +/* "src/tpm_vec.pxi":437 * return self._v6 * * cdef setV6(self, tpm_vec.V6 _v6): # <<<<<<<<<<<<<< @@ -12878,11 +19140,12 @@ static V6 __pyx_f_5pytpm_3tpm_2V6_getV6(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_ * */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setV6(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, V6 __pyx_v__v6) { +static PyObject *__pyx_f_3tpm_2V6_setV6(struct __pyx_obj_3tpm_V6 *__pyx_v_self, V6 __pyx_v__v6) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setV6"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setV6", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":438 + /* "src/tpm_vec.pxi":438 * * cdef setV6(self, tpm_vec.V6 _v6): * self._v6 = _v6 # <<<<<<<<<<<<<< @@ -12891,13 +19154,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setV6(struct __pyx_obj_5pytpm_3tpm_V6 */ __pyx_v_self->_v6 = __pyx_v__v6; + /* "src/tpm_vec.pxi":437 + * return self._v6 + * + * cdef setV6(self, tpm_vec.V6 _v6): # <<<<<<<<<<<<<< + * self._v6 = _v6 + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":440 +/* "src/tpm_vec.pxi":440 * self._v6 = _v6 * * cdef tpm_vec.V3 getPOS(self): # <<<<<<<<<<<<<< @@ -12905,36 +19177,49 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setV6(struct __pyx_obj_5pytpm_3tpm_V6 * */ -static V3 __pyx_f_5pytpm_3tpm_2V6_getPOS(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static V3 __pyx_f_3tpm_2V6_getPOS(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { V3 __pyx_r; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getPOS"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getPOS", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":441 + /* "src/tpm_vec.pxi":441 * * cdef tpm_vec.V3 getPOS(self): * return self._v6.v[POS] # <<<<<<<<<<<<<< * * cdef setPOS(self, tpm_vec.V3 _v3): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 441; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 441, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 441; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 441, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = (__pyx_v_self->_v6.v[__pyx_t_2]); goto __pyx_L0; - goto __pyx_L0; + /* "src/tpm_vec.pxi":440 + * self._v6 = _v6 + * + * cdef tpm_vec.V3 getPOS(self): # <<<<<<<<<<<<<< + * return self._v6.v[POS] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_WriteUnraisable("pytpm.tpm.V6.getPOS"); + __Pyx_WriteUnraisable("tpm.V6.getPOS", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); + __Pyx_pretend_to_initialize(&__pyx_r); __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":443 +/* "src/tpm_vec.pxi":443 * return self._v6.v[POS] * * cdef setPOS(self, tpm_vec.V3 _v3): # <<<<<<<<<<<<<< @@ -12942,54 +19227,73 @@ static V3 __pyx_f_5pytpm_3tpm_2V6_getPOS(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx * raise ValueError, "Type of V3 must be the same as that of V6." */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setPOS(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, V3 __pyx_v__v3) { +static PyObject *__pyx_f_3tpm_2V6_setPOS(struct __pyx_obj_3tpm_V6 *__pyx_v_self, V3 __pyx_v__v3) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; Py_ssize_t __pyx_t_3; - __Pyx_RefNannySetupContext("setPOS"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setPOS", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":444 + /* "src/tpm_vec.pxi":444 * * cdef setPOS(self, tpm_vec.V3 _v3): * if (_v3.type != self.getType()): # <<<<<<<<<<<<<< * raise ValueError, "Type of V3 must be the same as that of V6." * self._v6.v[POS] = _v3 */ - __pyx_t_1 = (__pyx_v__v3.type != ((struct __pyx_vtabstruct_5pytpm_3tpm_V6 *)__pyx_v_self->__pyx_vtab)->getType(__pyx_v_self)); - if (__pyx_t_1) { + __pyx_t_1 = ((__pyx_v__v3.type != ((struct __pyx_vtabstruct_3tpm_V6 *)__pyx_v_self->__pyx_vtab)->getType(__pyx_v_self)) != 0); + if (unlikely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":445 + /* "src/tpm_vec.pxi":445 * cdef setPOS(self, tpm_vec.V3 _v3): * if (_v3.type != self.getType()): * raise ValueError, "Type of V3 must be the same as that of V6." # <<<<<<<<<<<<<< * self._v6.v[POS] = _v3 * */ - __Pyx_Raise(__pyx_builtin_ValueError, ((PyObject *)__pyx_kp_s_31), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L3; + __Pyx_Raise(__pyx_builtin_ValueError, __pyx_kp_s_Type_of_V3_must_be_the_same_as_t, 0, 0); + __PYX_ERR(1, 445, __pyx_L1_error) + + /* "src/tpm_vec.pxi":444 + * + * cdef setPOS(self, tpm_vec.V3 _v3): + * if (_v3.type != self.getType()): # <<<<<<<<<<<<<< + * raise ValueError, "Type of V3 must be the same as that of V6." + * self._v6.v[POS] = _v3 + */ } - __pyx_L3:; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":446 + /* "src/tpm_vec.pxi":446 * if (_v3.type != self.getType()): * raise ValueError, "Type of V3 must be the same as that of V6." * self._v6.v[POS] = _v3 # <<<<<<<<<<<<<< * * cdef tpm_vec.V3 getVEL(self): */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 446; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_POS); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 446; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 446, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; (__pyx_v_self->_v6.v[__pyx_t_3]) = __pyx_v__v3; + /* "src/tpm_vec.pxi":443 + * return self._v6.v[POS] + * + * cdef setPOS(self, tpm_vec.V3 _v3): # <<<<<<<<<<<<<< + * if (_v3.type != self.getType()): + * raise ValueError, "Type of V3 must be the same as that of V6." + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6.setPOS"); + __Pyx_AddTraceback("tpm.V6.setPOS", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -12997,7 +19301,7 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setPOS(struct __pyx_obj_5pytpm_3tpm_V6 return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":448 +/* "src/tpm_vec.pxi":448 * self._v6.v[POS] = _v3 * * cdef tpm_vec.V3 getVEL(self): # <<<<<<<<<<<<<< @@ -13005,36 +19309,49 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setPOS(struct __pyx_obj_5pytpm_3tpm_V6 * */ -static V3 __pyx_f_5pytpm_3tpm_2V6_getVEL(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self) { +static V3 __pyx_f_3tpm_2V6_getVEL(struct __pyx_obj_3tpm_V6 *__pyx_v_self) { V3 __pyx_r; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; - __Pyx_RefNannySetupContext("getVEL"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("getVEL", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":449 + /* "src/tpm_vec.pxi":449 * * cdef tpm_vec.V3 getVEL(self): * return self._v6.v[VEL] # <<<<<<<<<<<<<< * * cdef setVEL(self, tpm_vec.V3 _v3): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 449, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 449, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = (__pyx_v_self->_v6.v[__pyx_t_2]); goto __pyx_L0; - goto __pyx_L0; + /* "src/tpm_vec.pxi":448 + * self._v6.v[POS] = _v3 + * + * cdef tpm_vec.V3 getVEL(self): # <<<<<<<<<<<<<< + * return self._v6.v[VEL] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_WriteUnraisable("pytpm.tpm.V6.getVEL"); + __Pyx_WriteUnraisable("tpm.V6.getVEL", __pyx_clineno, __pyx_lineno, __pyx_filename, 1, 0); + __Pyx_pretend_to_initialize(&__pyx_r); __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":451 +/* "src/tpm_vec.pxi":451 * return self._v6.v[VEL] * * cdef setVEL(self, tpm_vec.V3 _v3): # <<<<<<<<<<<<<< @@ -13042,54 +19359,73 @@ static V3 __pyx_f_5pytpm_3tpm_2V6_getVEL(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx * raise ValueError, "Type of V3 must be the same as that of V6." */ -static PyObject *__pyx_f_5pytpm_3tpm_2V6_setVEL(struct __pyx_obj_5pytpm_3tpm_V6 *__pyx_v_self, V3 __pyx_v__v3) { +static PyObject *__pyx_f_3tpm_2V6_setVEL(struct __pyx_obj_3tpm_V6 *__pyx_v_self, V3 __pyx_v__v3) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations int __pyx_t_1; PyObject *__pyx_t_2 = NULL; Py_ssize_t __pyx_t_3; - __Pyx_RefNannySetupContext("setVEL"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("setVEL", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":452 + /* "src/tpm_vec.pxi":452 * * cdef setVEL(self, tpm_vec.V3 _v3): * if (_v3.type != self.getType()): # <<<<<<<<<<<<<< * raise ValueError, "Type of V3 must be the same as that of V6." * self._v6.v[VEL] = _v3 */ - __pyx_t_1 = (__pyx_v__v3.type != ((struct __pyx_vtabstruct_5pytpm_3tpm_V6 *)__pyx_v_self->__pyx_vtab)->getType(__pyx_v_self)); - if (__pyx_t_1) { + __pyx_t_1 = ((__pyx_v__v3.type != ((struct __pyx_vtabstruct_3tpm_V6 *)__pyx_v_self->__pyx_vtab)->getType(__pyx_v_self)) != 0); + if (unlikely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":453 + /* "src/tpm_vec.pxi":453 * cdef setVEL(self, tpm_vec.V3 _v3): * if (_v3.type != self.getType()): * raise ValueError, "Type of V3 must be the same as that of V6." # <<<<<<<<<<<<<< * self._v6.v[VEL] = _v3 * */ - __Pyx_Raise(__pyx_builtin_ValueError, ((PyObject *)__pyx_kp_s_31), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 453; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L3; + __Pyx_Raise(__pyx_builtin_ValueError, __pyx_kp_s_Type_of_V3_must_be_the_same_as_t, 0, 0); + __PYX_ERR(1, 453, __pyx_L1_error) + + /* "src/tpm_vec.pxi":452 + * + * cdef setVEL(self, tpm_vec.V3 _v3): + * if (_v3.type != self.getType()): # <<<<<<<<<<<<<< + * raise ValueError, "Type of V3 must be the same as that of V6." + * self._v6.v[VEL] = _v3 + */ } - __pyx_L3:; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":454 + /* "src/tpm_vec.pxi":454 * if (_v3.type != self.getType()): * raise ValueError, "Type of V3 must be the same as that of V6." * self._v6.v[VEL] = _v3 # <<<<<<<<<<<<<< * * */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_VEL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 454, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyIndex_AsSsize_t(__pyx_t_2); if (unlikely((__pyx_t_3 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(1, 454, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; (__pyx_v_self->_v6.v[__pyx_t_3]) = __pyx_v__v3; + /* "src/tpm_vec.pxi":451 + * return self._v6.v[VEL] + * + * cdef setVEL(self, tpm_vec.V3 _v3): # <<<<<<<<<<<<<< + * if (_v3.type != self.getType()): + * raise ValueError, "Type of V3 must be the same as that of V6." + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6.setVEL"); + __Pyx_AddTraceback("tpm.V6.setVEL", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = 0; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13097,7 +19433,120 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setVEL(struct __pyx_obj_5pytpm_3tpm_V6 return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":487 +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2V6_5__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2V6_5__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2V6_4__reduce_cython__(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2V6_4__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6 *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2V6_7__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_2V6_7__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2V6_6__setstate_cython__(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2V6_6__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_vec.pxi":487 * # The following is read only. * ctype = CARTESIAN * def __init__(self, x=0.0, y=0.0, z=0.0, xdot=0.0, ydot=0.0, zdot=0.0): # <<<<<<<<<<<<<< @@ -13105,169 +19554,212 @@ static PyObject *__pyx_f_5pytpm_3tpm_2V6_setVEL(struct __pyx_obj_5pytpm_3tpm_V6 * self.y = y */ -static int __pyx_pf_5pytpm_3tpm_3V6C___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3V6C___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3V6C_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3V6C_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_x = 0; PyObject *__pyx_v_y = 0; PyObject *__pyx_v_z = 0; PyObject *__pyx_v_xdot = 0; PyObject *__pyx_v_ydot = 0; PyObject *__pyx_v_zdot = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__x,&__pyx_n_s__y,&__pyx_n_s__z,&__pyx_n_s__xdot,&__pyx_n_s__ydot,&__pyx_n_s__zdot,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_x,&__pyx_n_s_y,&__pyx_n_s_z,&__pyx_n_s_xdot,&__pyx_n_s_ydot,&__pyx_n_s_zdot,0}; PyObject* values[6] = {0,0,0,0,0,0}; - values[0] = __pyx_k_32; - values[1] = __pyx_k_33; - values[2] = __pyx_k_34; - values[3] = __pyx_k_35; - values[4] = __pyx_k_36; - values[5] = __pyx_k_37; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (value) { values[0] = value; kw_args--; } - } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (value) { values[1] = value; kw_args--; } - } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__z); - if (value) { values[2] = value; kw_args--; } + values[0] = ((PyObject *)__pyx_float_0_0); + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + values[3] = ((PyObject *)__pyx_float_0_0); + values[4] = ((PyObject *)__pyx_float_0_0); + values[5] = ((PyObject *)__pyx_float_0_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xdot); - if (value) { values[3] = value; kw_args--; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_x); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_y); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_z); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xdot); + if (value) { values[3] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 4: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ydot); + if (value) { values[4] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 5: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zdot); + if (value) { values[5] = value; kw_args--; } + } } - case 4: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ydot); - if (value) { values[4] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 487, __pyx_L3_error) } - case 5: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zdot); - if (value) { values[5] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_x = values[0]; __pyx_v_y = values[1]; __pyx_v_z = values[2]; __pyx_v_xdot = values[3]; __pyx_v_ydot = values[4]; __pyx_v_zdot = values[5]; - } else { - __pyx_v_x = __pyx_k_32; - __pyx_v_y = __pyx_k_33; - __pyx_v_z = __pyx_k_34; - __pyx_v_xdot = __pyx_k_35; - __pyx_v_ydot = __pyx_k_36; - __pyx_v_zdot = __pyx_k_37; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 6: __pyx_v_zdot = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: __pyx_v_ydot = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: __pyx_v_xdot = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_z = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_y = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_x = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 6, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 487, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V6C.__init__"); + __Pyx_AddTraceback("tpm.V6C.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_3V6C___init__(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), __pyx_v_x, __pyx_v_y, __pyx_v_z, __pyx_v_xdot, __pyx_v_ydot, __pyx_v_zdot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3V6C___init__(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_x, PyObject *__pyx_v_y, PyObject *__pyx_v_z, PyObject *__pyx_v_xdot, PyObject *__pyx_v_ydot, PyObject *__pyx_v_zdot) { + int __pyx_r; + __Pyx_RefNannyDeclarations + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":488 + /* "src/tpm_vec.pxi":488 * ctype = CARTESIAN * def __init__(self, x=0.0, y=0.0, z=0.0, xdot=0.0, ydot=0.0, zdot=0.0): * self.x = x # <<<<<<<<<<<<<< * self.y = y * self.z = z */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__x, __pyx_v_x) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 488; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_x, __pyx_v_x) < 0) __PYX_ERR(1, 488, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":489 + /* "src/tpm_vec.pxi":489 * def __init__(self, x=0.0, y=0.0, z=0.0, xdot=0.0, ydot=0.0, zdot=0.0): * self.x = x * self.y = y # <<<<<<<<<<<<<< * self.z = z * self.xdot = xdot */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__y, __pyx_v_y) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_y, __pyx_v_y) < 0) __PYX_ERR(1, 489, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":490 + /* "src/tpm_vec.pxi":490 * self.x = x * self.y = y * self.z = z # <<<<<<<<<<<<<< * self.xdot = xdot * self.ydot = ydot */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__z, __pyx_v_z) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_z, __pyx_v_z) < 0) __PYX_ERR(1, 490, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":491 + /* "src/tpm_vec.pxi":491 * self.y = y * self.z = z * self.xdot = xdot # <<<<<<<<<<<<<< * self.ydot = ydot * self.zdot = zdot */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__xdot, __pyx_v_xdot) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_xdot, __pyx_v_xdot) < 0) __PYX_ERR(1, 491, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":492 + /* "src/tpm_vec.pxi":492 * self.z = z * self.xdot = xdot * self.ydot = ydot # <<<<<<<<<<<<<< * self.zdot = zdot * */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__ydot, __pyx_v_ydot) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_ydot, __pyx_v_ydot) < 0) __PYX_ERR(1, 492, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":493 + /* "src/tpm_vec.pxi":493 * self.xdot = xdot * self.ydot = ydot * self.zdot = zdot # <<<<<<<<<<<<<< * * def __getx(self): */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__zdot, __pyx_v_zdot) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_zdot, __pyx_v_zdot) < 0) __PYX_ERR(1, 493, __pyx_L1_error) + /* "src/tpm_vec.pxi":487 + * # The following is read only. + * ctype = CARTESIAN + * def __init__(self, x=0.0, y=0.0, z=0.0, xdot=0.0, ydot=0.0, zdot=0.0): # <<<<<<<<<<<<<< + * self.x = x + * self.y = y + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.V6C.__init__"); + __Pyx_AddTraceback("tpm.V6C.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":495 +/* "src/tpm_vec.pxi":495 * self.zdot = zdot * * def __getx(self): # <<<<<<<<<<<<<< @@ -13275,13 +19767,29 @@ static int __pyx_pf_5pytpm_3tpm_3V6C___init__(PyObject *__pyx_v_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_1__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_1__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_3__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_3__getx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_2__getx(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_2__getx(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":496 + /* "src/tpm_vec.pxi":496 * * def __getx(self): * return self.getX() # <<<<<<<<<<<<<< @@ -13289,17 +19797,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_1__getx(PyObject *__pyx_v_self, CYTHO * def __setx(self, x): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":495 + * self.zdot = zdot + * + * def __getx(self): # <<<<<<<<<<<<<< + * return self.getX() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__getx"); + __Pyx_AddTraceback("tpm.V6C.__getx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13307,7 +19822,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_1__getx(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":498 +/* "src/tpm_vec.pxi":498 * return self.getX() * * def __setx(self, x): # <<<<<<<<<<<<<< @@ -13315,30 +19830,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_1__getx(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_2__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_2__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_5__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_5__setx(PyObject *__pyx_v_self, PyObject *__pyx_v_x) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_4__setx(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_x)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_4__setx(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_x) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":499 + /* "src/tpm_vec.pxi":499 * * def __setx(self, x): * self.setX(x) # <<<<<<<<<<<<<< * * x = property(__getx, __setx, doc="X coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 499, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":498 + * return self.getX() + * + * def __setx(self, x): # <<<<<<<<<<<<<< + * self.setX(x) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__setx"); + __Pyx_AddTraceback("tpm.V6C.__setx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13346,7 +19886,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_2__setx(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":503 +/* "src/tpm_vec.pxi":503 * x = property(__getx, __setx, doc="X coordinate.") * * def __gety(self): # <<<<<<<<<<<<<< @@ -13354,13 +19894,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_2__setx(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_3__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_3__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_7__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_7__gety(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gety (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_6__gety(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_6__gety(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gety"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gety", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":504 + /* "src/tpm_vec.pxi":504 * * def __gety(self): * return self.getY() # <<<<<<<<<<<<<< @@ -13368,17 +19924,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_3__gety(PyObject *__pyx_v_self, CYTHO * def __sety(self, y): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 504, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":503 + * x = property(__getx, __setx, doc="X coordinate.") + * + * def __gety(self): # <<<<<<<<<<<<<< + * return self.getY() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__gety"); + __Pyx_AddTraceback("tpm.V6C.__gety", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13386,7 +19949,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_3__gety(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":506 +/* "src/tpm_vec.pxi":506 * return self.getY() * * def __sety(self, y): # <<<<<<<<<<<<<< @@ -13394,30 +19957,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_3__gety(PyObject *__pyx_v_self, CYTHO * y = property(__gety, __sety, doc="Y coordinate.") */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_4__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_4__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_9__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_9__sety(PyObject *__pyx_v_self, PyObject *__pyx_v_y) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sety (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_8__sety(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_y)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_8__sety(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_y) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__sety"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sety", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":507 + /* "src/tpm_vec.pxi":507 * * def __sety(self, y): * self.setY(y) # <<<<<<<<<<<<<< * y = property(__gety, __sety, doc="Y coordinate.") * */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 507, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 507, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":506 + * return self.getY() + * + * def __sety(self, y): # <<<<<<<<<<<<<< + * self.setY(y) + * y = property(__gety, __sety, doc="Y coordinate.") + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__sety"); + __Pyx_AddTraceback("tpm.V6C.__sety", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13425,7 +20013,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_4__sety(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":510 +/* "src/tpm_vec.pxi":510 * y = property(__gety, __sety, doc="Y coordinate.") * * def __getz(self): # <<<<<<<<<<<<<< @@ -13433,13 +20021,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_4__sety(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_5__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_5__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_11__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_11__getz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_10__getz(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_10__getz(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":511 + /* "src/tpm_vec.pxi":511 * * def __getz(self): * return self.getZ() # <<<<<<<<<<<<<< @@ -13447,17 +20051,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_5__getz(PyObject *__pyx_v_self, CYTHO * def __setz(self, z): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":510 + * y = property(__gety, __sety, doc="Y coordinate.") + * + * def __getz(self): # <<<<<<<<<<<<<< + * return self.getZ() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__getz"); + __Pyx_AddTraceback("tpm.V6C.__getz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13465,7 +20076,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_5__getz(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":513 +/* "src/tpm_vec.pxi":513 * return self.getZ() * * def __setz(self, z): # <<<<<<<<<<<<<< @@ -13473,30 +20084,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_5__getz(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_6__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_6__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_13__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_13__setz(PyObject *__pyx_v_self, PyObject *__pyx_v_z) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_12__setz(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_z)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_12__setz(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_z) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":514 + /* "src/tpm_vec.pxi":514 * * def __setz(self, z): * self.setZ(z) # <<<<<<<<<<<<<< * * z = property(__getz, __setz, doc="Z coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 514, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":513 + * return self.getZ() + * + * def __setz(self, z): # <<<<<<<<<<<<<< + * self.setZ(z) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__setz"); + __Pyx_AddTraceback("tpm.V6C.__setz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13504,7 +20140,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_6__setz(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":518 +/* "src/tpm_vec.pxi":518 * z = property(__getz, __setz, doc="Z coordinate.") * * def __getxdot(self): # <<<<<<<<<<<<<< @@ -13512,13 +20148,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_6__setz(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_7__getxdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_7__getxdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_15__getxdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_15__getxdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getxdot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_14__getxdot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_14__getxdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getxdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getxdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":519 + /* "src/tpm_vec.pxi":519 * * def __getxdot(self): * return self.getXdot() # <<<<<<<<<<<<<< @@ -13526,17 +20178,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_7__getxdot(PyObject *__pyx_v_self, CY * def __setxdot(self, xdot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getXdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getXdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":518 + * z = property(__getz, __setz, doc="Z coordinate.") + * + * def __getxdot(self): # <<<<<<<<<<<<<< + * return self.getXdot() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__getxdot"); + __Pyx_AddTraceback("tpm.V6C.__getxdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13544,7 +20203,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_7__getxdot(PyObject *__pyx_v_self, CY return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":521 +/* "src/tpm_vec.pxi":521 * return self.getXdot() * * def __setxdot(self, xdot): # <<<<<<<<<<<<<< @@ -13552,30 +20211,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_7__getxdot(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_8__setxdot(PyObject *__pyx_v_self, PyObject *__pyx_v_xdot); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_8__setxdot(PyObject *__pyx_v_self, PyObject *__pyx_v_xdot) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_17__setxdot(PyObject *__pyx_v_self, PyObject *__pyx_v_xdot); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_17__setxdot(PyObject *__pyx_v_self, PyObject *__pyx_v_xdot) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxdot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_16__setxdot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_xdot)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_16__setxdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_xdot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setxdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setxdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":522 + /* "src/tpm_vec.pxi":522 * * def __setxdot(self, xdot): * self.setXdot(xdot) # <<<<<<<<<<<<<< * * xdot = property(__getxdot, __setxdot, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xdot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setXdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xdot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 522, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setXdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":521 + * return self.getXdot() + * + * def __setxdot(self, xdot): # <<<<<<<<<<<<<< + * self.setXdot(xdot) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__setxdot"); + __Pyx_AddTraceback("tpm.V6C.__setxdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13583,7 +20267,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_8__setxdot(PyObject *__pyx_v_self, Py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":527 +/* "src/tpm_vec.pxi":527 * doc="Rate of change of X coordinate.") * * def __getydot(self): # <<<<<<<<<<<<<< @@ -13591,13 +20275,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_8__setxdot(PyObject *__pyx_v_self, Py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_9__getydot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_9__getydot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_19__getydot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_19__getydot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getydot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_18__getydot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_18__getydot(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getydot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getydot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":528 + /* "src/tpm_vec.pxi":528 * * def __getydot(self): * return self.getYdot() # <<<<<<<<<<<<<< @@ -13605,17 +20305,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_9__getydot(PyObject *__pyx_v_self, CY * def __setydot(self, ydot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getYdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getYdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__getydot"); + /* "src/tpm_vec.pxi":527 + * doc="Rate of change of X coordinate.") + * + * def __getydot(self): # <<<<<<<<<<<<<< + * return self.getYdot() + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6C.__getydot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13623,7 +20330,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_9__getydot(PyObject *__pyx_v_self, CY return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":530 +/* "src/tpm_vec.pxi":530 * return self.getYdot() * * def __setydot(self, ydot): # <<<<<<<<<<<<<< @@ -13631,30 +20338,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_9__getydot(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_10__setydot(PyObject *__pyx_v_self, PyObject *__pyx_v_ydot); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_10__setydot(PyObject *__pyx_v_self, PyObject *__pyx_v_ydot) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_21__setydot(PyObject *__pyx_v_self, PyObject *__pyx_v_ydot); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_21__setydot(PyObject *__pyx_v_self, PyObject *__pyx_v_ydot) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setydot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_20__setydot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_ydot)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_20__setydot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_ydot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setydot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setydot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":531 + /* "src/tpm_vec.pxi":531 * * def __setydot(self, ydot): * self.setYdot(ydot) # <<<<<<<<<<<<<< * * ydot = property(__getydot, __setydot, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ydot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setYdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ydot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 531, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setYdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":530 + * return self.getYdot() + * + * def __setydot(self, ydot): # <<<<<<<<<<<<<< + * self.setYdot(ydot) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__setydot"); + __Pyx_AddTraceback("tpm.V6C.__setydot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13662,7 +20394,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_10__setydot(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":536 +/* "src/tpm_vec.pxi":536 * doc="Rate of change of Y coordinate.") * * def __getzdot(self): # <<<<<<<<<<<<<< @@ -13670,13 +20402,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_10__setydot(PyObject *__pyx_v_self, P * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_11__getzdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_11__getzdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_23__getzdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_23__getzdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getzdot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_22__getzdot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_22__getzdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getzdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getzdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":537 + /* "src/tpm_vec.pxi":537 * * def __getzdot(self): * return self.getZdot() # <<<<<<<<<<<<<< @@ -13684,17 +20432,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_11__getzdot(PyObject *__pyx_v_self, C * def __setzdot(self, zdot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getZdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getZdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 537, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":536 + * doc="Rate of change of Y coordinate.") + * + * def __getzdot(self): # <<<<<<<<<<<<<< + * return self.getZdot() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__getzdot"); + __Pyx_AddTraceback("tpm.V6C.__getzdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13702,7 +20457,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_11__getzdot(PyObject *__pyx_v_self, C return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":539 +/* "src/tpm_vec.pxi":539 * return self.getZdot() * * def __setzdot(self, zdot): # <<<<<<<<<<<<<< @@ -13710,30 +20465,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_11__getzdot(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_12__setzdot(PyObject *__pyx_v_self, PyObject *__pyx_v_zdot); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_12__setzdot(PyObject *__pyx_v_self, PyObject *__pyx_v_zdot) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_25__setzdot(PyObject *__pyx_v_self, PyObject *__pyx_v_zdot); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_25__setzdot(PyObject *__pyx_v_self, PyObject *__pyx_v_zdot) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzdot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_24__setzdot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_zdot)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_24__setzdot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_zdot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setzdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setzdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":540 + /* "src/tpm_vec.pxi":540 * * def __setzdot(self, zdot): * self.setZdot(zdot) # <<<<<<<<<<<<<< * * zdot = property(__getzdot, __setzdot, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zdot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setZdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zdot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 540, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setZdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":539 + * return self.getZdot() + * + * def __setzdot(self, zdot): # <<<<<<<<<<<<<< + * self.setZdot(zdot) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__setzdot"); + __Pyx_AddTraceback("tpm.V6C.__setzdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13741,7 +20521,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_12__setzdot(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":545 +/* "src/tpm_vec.pxi":545 * doc="Rate of change of Z coordinate.") * * def __getPOS(self): # <<<<<<<<<<<<<< @@ -13749,39 +20529,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_12__setzdot(PyObject *__pyx_v_self, P * v3p.setV3(self.getPOS()) */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_13__getPOS(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_13__getPOS(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3p; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_27__getPOS(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_27__getPOS(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getPOS (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_26__getPOS(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_26__getPOS(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3p = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getPOS"); - __pyx_v_v3p = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getPOS", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":546 + /* "src/tpm_vec.pxi":546 * * def __getPOS(self): * v3p = V3CP() # <<<<<<<<<<<<<< * v3p.setV3(self.getPOS()) * return v3p */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 546; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 546, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3p)); - __pyx_v_v3p = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3p = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":547 + /* "src/tpm_vec.pxi":547 * def __getPOS(self): * v3p = V3CP() * v3p.setV3(self.getPOS()) # <<<<<<<<<<<<<< * return v3p * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3p->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3p), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getPOS(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3p->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3p), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getPOS(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":548 + /* "src/tpm_vec.pxi":548 * v3p = V3CP() * v3p.setV3(self.getPOS()) * return v3p # <<<<<<<<<<<<<< @@ -13793,20 +20587,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_13__getPOS(PyObject *__pyx_v_self, CY __pyx_r = ((PyObject *)__pyx_v_v3p); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":545 + * doc="Rate of change of Z coordinate.") + * + * def __getPOS(self): # <<<<<<<<<<<<<< + * v3p = V3CP() + * v3p.setV3(self.getPOS()) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__getPOS"); + __Pyx_AddTraceback("tpm.V6C.__getPOS", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3p); + __Pyx_XDECREF((PyObject *)__pyx_v_v3p); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":550 +/* "src/tpm_vec.pxi":550 * return v3p * * def __setPOS(self, V3CP v3cp): # <<<<<<<<<<<<<< @@ -13814,29 +20615,61 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_13__getPOS(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_14__setPOS(PyObject *__pyx_v_self, PyObject *__pyx_v_v3cp); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_14__setPOS(PyObject *__pyx_v_self, PyObject *__pyx_v_v3cp) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_29__setPOS(PyObject *__pyx_v_self, PyObject *__pyx_v_v3cp); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_29__setPOS(PyObject *__pyx_v_self, PyObject *__pyx_v_v3cp) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setPOS (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v3cp), __pyx_ptype_3tpm_V3CP, 1, "v3cp", 0))) __PYX_ERR(1, 550, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_3V6C_28__setPOS(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_v3cp)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_28__setPOS(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__setPOS"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v3cp), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "v3cp", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setPOS", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":551 + /* "src/tpm_vec.pxi":551 * * def __setPOS(self, V3CP v3cp): * self.setPOS(v3cp.getV3()) # <<<<<<<<<<<<<< * * pos = property(__getPOS, __setPOS, doc="The position component.") */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setPOS(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_v3cp)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 551; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setPOS(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 551, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + /* "src/tpm_vec.pxi":550 + * return v3p + * + * def __setPOS(self, V3CP v3cp): # <<<<<<<<<<<<<< + * self.setPOS(v3cp.getV3()) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.__setPOS"); + __Pyx_AddTraceback("tpm.V6C.__setPOS", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -13844,7 +20677,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_14__setPOS(PyObject *__pyx_v_self, Py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":555 +/* "src/tpm_vec.pxi":555 * pos = property(__getPOS, __setPOS, doc="The position component.") * * def __sub__(V6C self, V6C other): # <<<<<<<<<<<<<< @@ -13852,75 +20685,89 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_14__setPOS(PyObject *__pyx_v_self, Py * if isinstance(self, V6C) and isinstance(other, V6C): */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_15__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_15__sub__[] = "Return V6C that holds difference between two V6C vectors."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_3V6C_15__sub__; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_15__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_31__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_3V6C_30__sub__[] = "Return V6C that holds difference between two V6C vectors."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_3V6C_30__sub__; +#endif +static PyObject *__pyx_pw_3tpm_3V6C_31__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V6C, 1, "self", 0))) __PYX_ERR(1, 555, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C, 1, "other", 0))) __PYX_ERR(1, 555, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_3V6C_30__sub__(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_30__sub__(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V6C, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 555; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V6C, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 555; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":557 + /* "src/tpm_vec.pxi":557 * def __sub__(V6C self, V6C other): * """Return V6C that holds difference between two V6C vectors.""" * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< * v6c = V6C() * v6c.setV6(tpm_vec.v6diff(self.getV6(), other.getV6())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V6C); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":558 + /* "src/tpm_vec.pxi":558 * """Return V6C that holds difference between two V6C vectors.""" * if isinstance(self, V6C) and isinstance(other, V6C): * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(tpm_vec.v6diff(self.getV6(), other.getV6())) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 558, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":559 + /* "src/tpm_vec.pxi":559 * if isinstance(self, V6C) and isinstance(other, V6C): * v6c = V6C() * v6c.setV6(tpm_vec.v6diff(self.getV6(), other.getV6())) # <<<<<<<<<<<<<< * return v6c * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), v6diff(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 559; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), v6diff(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 559, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":560 + /* "src/tpm_vec.pxi":560 * v6c = V6C() * v6c.setV6(tpm_vec.v6diff(self.getV6(), other.getV6())) * return v6c # <<<<<<<<<<<<<< @@ -13931,37 +20778,49 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_15__sub__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(((PyObject *)__pyx_v_v6c)); __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":557 + * def __sub__(V6C self, V6C other): + * """Return V6C that holds difference between two V6C vectors.""" + * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< + * v6c = V6C() + * v6c.setV6(tpm_vec.v6diff(self.getV6(), other.getV6())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":562 + /* "src/tpm_vec.pxi":562 * return v6c * else: * raise TypeError, "Can only subtract two V6C values." # <<<<<<<<<<<<<< * * def __add__(V6C self, V6C other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_38), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_subtract_two_V6C_values, 0, 0); + __PYX_ERR(1, 562, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":555 + * pos = property(__getPOS, __setPOS, doc="The position component.") + * + * def __sub__(V6C self, V6C other): # <<<<<<<<<<<<<< + * """Return V6C that holds difference between two V6C vectors.""" + * if isinstance(self, V6C) and isinstance(other, V6C): + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__sub__"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("tpm.V6C.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":564 +/* "src/tpm_vec.pxi":564 * raise TypeError, "Can only subtract two V6C values." * * def __add__(V6C self, V6C other): # <<<<<<<<<<<<<< @@ -13969,75 +20828,89 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_15__sub__(PyObject *__pyx_v_self, PyO * if isinstance(self, V6C) and isinstance(other, V6C): */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_16__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_16__add__[] = "Return V6C that holds the sum of two V6C vectors."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_3V6C_16__add__; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_16__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_33__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_3V6C_32__add__[] = "Return V6C that holds the sum of two V6C vectors."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_3V6C_32__add__; +#endif +static PyObject *__pyx_pw_3tpm_3V6C_33__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V6C, 1, "self", 0))) __PYX_ERR(1, 564, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C, 1, "other", 0))) __PYX_ERR(1, 564, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_3V6C_32__add__(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_32__add__(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_V6C, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V6C, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":566 + /* "src/tpm_vec.pxi":566 * def __add__(V6C self, V6C other): * """Return V6C that holds the sum of two V6C vectors.""" * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< * v6c = V6C() * v6c.setV6(tpm_vec.v6sum(self.getV6(), other.getV6())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V6C); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":567 + /* "src/tpm_vec.pxi":567 * """Return V6C that holds the sum of two V6C vectors.""" * if isinstance(self, V6C) and isinstance(other, V6C): * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(tpm_vec.v6sum(self.getV6(), other.getV6())) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 567; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 567, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":568 + /* "src/tpm_vec.pxi":568 * if isinstance(self, V6C) and isinstance(other, V6C): * v6c = V6C() * v6c.setV6(tpm_vec.v6sum(self.getV6(), other.getV6())) # <<<<<<<<<<<<<< * return v6c * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), v6sum(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 568; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), v6sum(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 568, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":569 + /* "src/tpm_vec.pxi":569 * v6c = V6C() * v6c.setV6(tpm_vec.v6sum(self.getV6(), other.getV6())) * return v6c # <<<<<<<<<<<<<< @@ -14048,37 +20921,49 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_16__add__(PyObject *__pyx_v_self, PyO __Pyx_INCREF(((PyObject *)__pyx_v_v6c)); __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":566 + * def __add__(V6C self, V6C other): + * """Return V6C that holds the sum of two V6C vectors.""" + * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< + * v6c = V6C() + * v6c.setV6(tpm_vec.v6sum(self.getV6(), other.getV6())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":571 + /* "src/tpm_vec.pxi":571 * return v6c * else: * raise TypeError, "Can only add two V6C values." # <<<<<<<<<<<<<< * * def mod(self): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_39), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 571; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_add_two_V6C_values, 0, 0); + __PYX_ERR(1, 571, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":564 + * raise TypeError, "Can only subtract two V6C values." + * + * def __add__(V6C self, V6C other): # <<<<<<<<<<<<<< + * """Return V6C that holds the sum of two V6C vectors.""" + * if isinstance(self, V6C) and isinstance(other, V6C): + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.__add__"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("tpm.V6C.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":573 +/* "src/tpm_vec.pxi":573 * raise TypeError, "Can only add two V6C values." * * def mod(self): # <<<<<<<<<<<<<< @@ -14086,14 +20971,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_16__add__(PyObject *__pyx_v_self, PyO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_17mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_17mod[] = "Return modulus of position component of V6C vector.\n\n Returns\n -------\n x : float\n The length of the position component.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_17mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_35mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3V6C_34mod[] = "Return modulus of position component of V6C vector.\n\n Returns\n -------\n x : float\n The length of the position component.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_35mod(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("mod (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_34mod(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_34mod(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("mod"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("mod", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":582 + /* "src/tpm_vec.pxi":582 * * """ * return tpm_vec.v6mod(self.getV6()) # <<<<<<<<<<<<<< @@ -14101,17 +21002,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_17mod(PyObject *__pyx_v_self, CYTHON_ * def unit(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v6mod(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 582; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v6mod(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":573 + * raise TypeError, "Can only add two V6C values." + * + * def mod(self): # <<<<<<<<<<<<<< + * """Return modulus of position component of V6C vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.mod"); + __Pyx_AddTraceback("tpm.V6C.mod", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14119,7 +21027,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_17mod(PyObject *__pyx_v_self, CYTHON_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":584 +/* "src/tpm_vec.pxi":584 * return tpm_vec.v6mod(self.getV6()) * * def unit(self): # <<<<<<<<<<<<<< @@ -14127,40 +21035,54 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_17mod(PyObject *__pyx_v_self, CYTHON_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_18unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_18unit[] = "Return V6C with unit position and scaled velocity components.\n\n The velocity component is scaled by inverse of length of the\n position component.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_18unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_37unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3V6C_36unit[] = "Return V6C with unit position and scaled velocity components.\n\n The velocity component is scaled by inverse of length of the\n position component.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_37unit(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("unit (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_36unit(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_36unit(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("unit"); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("unit", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":596 + /* "src/tpm_vec.pxi":596 * * """ * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(tpm_vec.v6unit(self.getV6())) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 596; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 596, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":597 + /* "src/tpm_vec.pxi":597 * """ * v6c = V6C() * v6c.setV6(tpm_vec.v6unit(self.getV6())) # <<<<<<<<<<<<<< * return v6c * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), v6unit(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), v6unit(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":598 + /* "src/tpm_vec.pxi":598 * v6c = V6C() * v6c.setV6(tpm_vec.v6unit(self.getV6())) * return v6c # <<<<<<<<<<<<<< @@ -14172,20 +21094,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_18unit(PyObject *__pyx_v_self, CYTHON __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":584 + * return tpm_vec.v6mod(self.getV6()) + * + * def unit(self): # <<<<<<<<<<<<<< + * """Return V6C with unit position and scaled velocity components. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.unit"); + __Pyx_AddTraceback("tpm.V6C.unit", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":600 +/* "src/tpm_vec.pxi":600 * return v6c * * def scale(self, x): # <<<<<<<<<<<<<< @@ -14193,44 +21122,56 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_18unit(PyObject *__pyx_v_self, CYTHON * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_19scale(PyObject *__pyx_v_self, PyObject *__pyx_v_x); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_19scale[] = "Return V6C with components scaled by the given factor.\n\n Returns\n -------\n v : tpm.V6C\n A vector with components set to those in this vector\n multiplied by the given `x`.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_19scale(PyObject *__pyx_v_self, PyObject *__pyx_v_x) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_39scale(PyObject *__pyx_v_self, PyObject *__pyx_v_x); /*proto*/ +static char __pyx_doc_3tpm_3V6C_38scale[] = "Return V6C with components scaled by the given factor.\n\n Returns\n -------\n v : tpm.V6C\n A vector with components set to those in this vector\n multiplied by the given `x`.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_39scale(PyObject *__pyx_v_self, PyObject *__pyx_v_x) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("scale (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_38scale(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_x)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_38scale(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_x) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - V6 __pyx_t_2; - double __pyx_t_3; - __Pyx_RefNannySetupContext("scale"); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + double __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("scale", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":610 + /* "src/tpm_vec.pxi":610 * * """ * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(tpm_vec.v6scale(self.getV6(), x)) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 610; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 610, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":611 + /* "src/tpm_vec.pxi":611 * """ * v6c = V6C() * v6c.setV6(tpm_vec.v6scale(self.getV6(), x)) # <<<<<<<<<<<<<< * return v6c * */ - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 611; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), v6scale(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 611; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 611, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), v6scale(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)), __pyx_t_2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":612 + /* "src/tpm_vec.pxi":612 * v6c = V6C() * v6c.setV6(tpm_vec.v6scale(self.getV6(), x)) * return v6c # <<<<<<<<<<<<<< @@ -14242,20 +21183,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_19scale(PyObject *__pyx_v_self, PyObj __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":600 + * return v6c + * + * def scale(self, x): # <<<<<<<<<<<<<< + * """Return V6C with components scaled by the given factor. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.scale"); + __Pyx_AddTraceback("tpm.V6C.scale", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":614 +/* "src/tpm_vec.pxi":614 * return v6c * * def v62v3(self, dt): # <<<<<<<<<<<<<< @@ -14263,44 +21211,56 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_19scale(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_20v62v3(PyObject *__pyx_v_self, PyObject *__pyx_v_dt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_20v62v3[] = "Convert V6C into V3CP by addding space motion.\n\n The positon component is increment by the product of space motion\n and given number of days, dt.\n\n Returns\n -------\n v : tpm.V6CP\n The position vector at the end of time `dt`.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_20v62v3(PyObject *__pyx_v_self, PyObject *__pyx_v_dt) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v3cp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_41v62v3(PyObject *__pyx_v_self, PyObject *__pyx_v_dt); /*proto*/ +static char __pyx_doc_3tpm_3V6C_40v62v3[] = "Convert V6C into V3CP by addding space motion.\n\n The positon component is increment by the product of space motion\n and given number of days, dt.\n\n Returns\n -------\n v : tpm.V6CP\n The position vector at the end of time `dt`.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_41v62v3(PyObject *__pyx_v_self, PyObject *__pyx_v_dt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("v62v3 (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_40v62v3(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v_dt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_40v62v3(struct __pyx_obj_3tpm_V6C *__pyx_v_self, PyObject *__pyx_v_dt) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v3cp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - V6 __pyx_t_2; - double __pyx_t_3; - __Pyx_RefNannySetupContext("v62v3"); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); + double __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("v62v3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":626 + /* "src/tpm_vec.pxi":626 * * """ * v3cp = V3CP() # <<<<<<<<<<<<<< * v3cp.setV3(tpm_vec.v62v3(self.getV6(), dt)) * return v3cp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 626, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v3cp)); - __pyx_v_v3cp = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v3cp = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":627 + /* "src/tpm_vec.pxi":627 * """ * v3cp = V3CP() * v3cp.setV3(tpm_vec.v62v3(self.getV6(), dt)) # <<<<<<<<<<<<<< * return v3cp * */ - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_dt); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3cp), v62v3(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_dt); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 627, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3cp->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3cp), v62v3(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)), __pyx_t_2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 627, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":628 + /* "src/tpm_vec.pxi":628 * v3cp = V3CP() * v3cp.setV3(tpm_vec.v62v3(self.getV6(), dt)) * return v3cp # <<<<<<<<<<<<<< @@ -14312,20 +21272,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_20v62v3(PyObject *__pyx_v_self, PyObj __pyx_r = ((PyObject *)__pyx_v_v3cp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":614 + * return v6c + * + * def v62v3(self, dt): # <<<<<<<<<<<<<< + * """Convert V6C into V3CP by addding space motion. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.v62v3"); + __Pyx_AddTraceback("tpm.V6C.v62v3", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v3cp); + __Pyx_XDECREF((PyObject *)__pyx_v_v3cp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":630 +/* "src/tpm_vec.pxi":630 * return v3cp * * def dot(V6C self, V6C other): # <<<<<<<<<<<<<< @@ -14333,47 +21300,61 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_20v62v3(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_21dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_21dot[] = "Dot product of the position components.\n\n Returns\n -------\n x : float\n The dot product of the position component of this vector\n with that of the given vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_21dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_43dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_3V6C_42dot[] = "Dot product of the position components.\n\n Returns\n -------\n x : float\n The dot product of the position component of this vector\n with that of the given vector.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_43dot(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("dot (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C, 1, "other", 0))) __PYX_ERR(1, 630, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_3V6C_42dot(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_42dot(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other) { PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("dot"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V6C, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("dot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":640 + /* "src/tpm_vec.pxi":640 * * """ * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< * return tpm_vec.v6dot(self.getV6(), other.getV6()) * else: */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V6C); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":641 + /* "src/tpm_vec.pxi":641 * """ * if isinstance(self, V6C) and isinstance(other, V6C): * return tpm_vec.v6dot(self.getV6(), other.getV6()) # <<<<<<<<<<<<<< @@ -14381,33 +21362,45 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_21dot(PyObject *__pyx_v_self, PyObjec * raise TypeError, "Can only take dot product of two V6C values." */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v6dot(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 641; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __pyx_t_4 = PyFloat_FromDouble(v6dot(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 641, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":640 + * + * """ + * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< + * return tpm_vec.v6dot(self.getV6(), other.getV6()) + * else: + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":643 + /* "src/tpm_vec.pxi":643 * return tpm_vec.v6dot(self.getV6(), other.getV6()) * else: * raise TypeError, "Can only take dot product of two V6C values." # <<<<<<<<<<<<<< * * def cross(V6C self, V6C other): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_40), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 643; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_take_dot_product_of_two, 0, 0); + __PYX_ERR(1, 643, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":630 + * return v3cp + * + * def dot(V6C self, V6C other): # <<<<<<<<<<<<<< + * """Dot product of the position components. + * + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.dot"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("tpm.V6C.dot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14415,7 +21408,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_21dot(PyObject *__pyx_v_self, PyObjec return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":645 +/* "src/tpm_vec.pxi":645 * raise TypeError, "Can only take dot product of two V6C values." * * def cross(V6C self, V6C other): # <<<<<<<<<<<<<< @@ -14423,73 +21416,85 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_21dot(PyObject *__pyx_v_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_22cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_22cross[] = "Cross product of the position components.\n\n The velocity component of the resulting V6 vector is set to 0.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with position component set to the cross\n product of the position component of this vector and the given\n vector. The velocity component is set ot 0.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_22cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_45cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_3V6C_44cross[] = "Cross product of the position components.\n\n The velocity component of the resulting V6 vector is set to 0.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with position component set to the cross\n product of the position component of this vector and the given\n vector. The velocity component is set ot 0.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_45cross(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("cross (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C, 1, "other", 0))) __PYX_ERR(1, 645, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_3V6C_44cross(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_44cross(struct __pyx_obj_3tpm_V6C *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_other) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - __Pyx_RefNannySetupContext("cross"); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_V6C, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 645; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("cross", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":658 + /* "src/tpm_vec.pxi":658 * * """ * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< * v6c = V6C() * v6c.setV6(tpm_vec.v6cross(self.getV6(), other.getV6())) */ - __pyx_t_1 = __pyx_v_self; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_2 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = __Pyx_TypeCheck(__pyx_t_1, __pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_TypeCheck(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_V6C); + __pyx_t_3 = (__pyx_t_2 != 0); if (__pyx_t_3) { - __pyx_t_2 = __pyx_v_other; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_1 = ((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)); - __Pyx_INCREF(__pyx_t_1); - __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_2, __pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; } else { - __pyx_t_5 = __pyx_t_3; + __pyx_t_1 = __pyx_t_3; + goto __pyx_L4_bool_binop_done; } - if (__pyx_t_5) { + __pyx_t_3 = __Pyx_TypeCheck(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_V6C); + __pyx_t_2 = (__pyx_t_3 != 0); + __pyx_t_1 = __pyx_t_2; + __pyx_L4_bool_binop_done:; + if (likely(__pyx_t_1)) { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":659 + /* "src/tpm_vec.pxi":659 * """ * if isinstance(self, V6C) and isinstance(other, V6C): * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(tpm_vec.v6cross(self.getV6(), other.getV6())) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 659; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); - __pyx_t_1 = 0; + __pyx_t_4 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 659, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_4); + __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":660 + /* "src/tpm_vec.pxi":660 * if isinstance(self, V6C) and isinstance(other, V6C): * v6c = V6C() * v6c.setV6(tpm_vec.v6cross(self.getV6(), other.getV6())) # <<<<<<<<<<<<<< * return v6c * else: */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), v6cross(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_other)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 660; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_4 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), v6cross(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_other->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 660, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":661 + /* "src/tpm_vec.pxi":661 * v6c = V6C() * v6c.setV6(tpm_vec.v6cross(self.getV6(), other.getV6())) * return v6c # <<<<<<<<<<<<<< @@ -14500,37 +21505,49 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_22cross(PyObject *__pyx_v_self, PyObj __Pyx_INCREF(((PyObject *)__pyx_v_v6c)); __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - goto __pyx_L5; + + /* "src/tpm_vec.pxi":658 + * + * """ + * if isinstance(self, V6C) and isinstance(other, V6C): # <<<<<<<<<<<<<< + * v6c = V6C() + * v6c.setV6(tpm_vec.v6cross(self.getV6(), other.getV6())) + */ } - /*else*/ { - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":663 + /* "src/tpm_vec.pxi":663 * return v6c * else: * raise TypeError, "Can only take cross product of two V6C values." # <<<<<<<<<<<<<< * * def c2s(self): */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_41), 0); - {__pyx_filename = __pyx_f[1]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + /*else*/ { + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Can_only_take_cross_product_of_t, 0, 0); + __PYX_ERR(1, 663, __pyx_L1_error) } - __pyx_L5:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":645 + * raise TypeError, "Can only take dot product of two V6C values." + * + * def cross(V6C self, V6C other): # <<<<<<<<<<<<<< + * """Cross product of the position components. + * + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6C.cross"); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_AddTraceback("tpm.V6C.cross", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":665 +/* "src/tpm_vec.pxi":665 * raise TypeError, "Can only take cross product of two V6C values." * * def c2s(self): # <<<<<<<<<<<<<< @@ -14538,40 +21555,54 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_22cross(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_23c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6C_23c2s[] = "Cartesian to spherical conversion.\n\n Returns\n -------\n v : tpm.V6S\n The spherical equivalent of this vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_23c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6S *__pyx_v_v6s; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_47c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3V6C_46c2s[] = "Cartesian to spherical conversion.\n\n Returns\n -------\n v : tpm.V6S\n The spherical equivalent of this vector.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6C_47c2s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("c2s (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_46c2s(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_46c2s(struct __pyx_obj_3tpm_V6C *__pyx_v_self) { + struct __pyx_obj_3tpm_V6S *__pyx_v_v6s = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("c2s"); - __pyx_v_v6s = ((struct __pyx_obj_5pytpm_3tpm_V6S *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("c2s", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":674 + /* "src/tpm_vec.pxi":674 * * """ * v6s = V6S() # <<<<<<<<<<<<<< * v6s.setV6(tpm_vec.v6c2s(self.getV6())) * return v6s */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6S)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6S)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 674, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6s)); - __pyx_v_v6s = ((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_t_1); + __pyx_v_v6s = ((struct __pyx_obj_3tpm_V6S *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":675 + /* "src/tpm_vec.pxi":675 * """ * v6s = V6S() * v6s.setV6(tpm_vec.v6c2s(self.getV6())) # <<<<<<<<<<<<<< * return v6s * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)__pyx_v_v6s->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6s), v6c2s(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 675; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_v6s->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6s), v6c2s(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":676 + /* "src/tpm_vec.pxi":676 * v6s = V6S() * v6s.setV6(tpm_vec.v6c2s(self.getV6())) * return v6s # <<<<<<<<<<<<<< @@ -14583,20 +21614,140 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_23c2s(PyObject *__pyx_v_self, CYTHON_ __pyx_r = ((PyObject *)__pyx_v_v6s); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":665 + * raise TypeError, "Can only take cross product of two V6C values." + * + * def c2s(self): # <<<<<<<<<<<<<< + * """Cartesian to spherical conversion. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6C.c2s"); + __Pyx_AddTraceback("tpm.V6C.c2s", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6s); + __Pyx_XDECREF((PyObject *)__pyx_v_v6s); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_49__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_49__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_48__reduce_cython__(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_48__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6C *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6C.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6C_51__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6C_51__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6C_50__setstate_cython__(((struct __pyx_obj_3tpm_V6C *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6C_50__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6C *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__20, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6C.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":716 +/* "src/tpm_vec.pxi":716 * # The following is read only. * ctype = SPHERICAL * def __init__(self, r=0.0, alpha=0.0, delta=0.0, rdot=0.0, # <<<<<<<<<<<<<< @@ -14604,187 +21755,230 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6C_23c2s(PyObject *__pyx_v_self, CYTHON_ * self.setType(SPHERICAL) # Set type of the underlying V6. Why */ -static int __pyx_pf_5pytpm_3tpm_3V6S___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_3V6S___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_3V6S_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_3V6S_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_r = 0; PyObject *__pyx_v_alpha = 0; PyObject *__pyx_v_delta = 0; PyObject *__pyx_v_rdot = 0; PyObject *__pyx_v_alphadot = 0; PyObject *__pyx_v_deltadot = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__r,&__pyx_n_s__alpha,&__pyx_n_s__delta,&__pyx_n_s__rdot,&__pyx_n_s__alphadot,&__pyx_n_s__deltadot,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_r,&__pyx_n_s_alpha,&__pyx_n_s_delta,&__pyx_n_s_rdot,&__pyx_n_s_alphadot,&__pyx_n_s_deltadot,0}; PyObject* values[6] = {0,0,0,0,0,0}; - values[0] = __pyx_k_42; - values[1] = __pyx_k_43; - values[2] = __pyx_k_44; - values[3] = __pyx_k_45; - values[4] = __pyx_k_46; - values[5] = __pyx_k_47; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__r); - if (value) { values[0] = value; kw_args--; } - } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alpha); - if (value) { values[1] = value; kw_args--; } + values[0] = ((PyObject *)__pyx_float_0_0); + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + values[3] = ((PyObject *)__pyx_float_0_0); + values[4] = ((PyObject *)__pyx_float_0_0); + values[5] = ((PyObject *)__pyx_float_0_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__delta); - if (value) { values[2] = value; kw_args--; } - } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__rdot); - if (value) { values[3] = value; kw_args--; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_r); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alpha); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_rdot); + if (value) { values[3] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 4: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alphadot); + if (value) { values[4] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 5: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_deltadot); + if (value) { values[5] = value; kw_args--; } + } } - case 4: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alphadot); - if (value) { values[4] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 716, __pyx_L3_error) } - case 5: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__deltadot); - if (value) { values[5] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_r = values[0]; __pyx_v_alpha = values[1]; __pyx_v_delta = values[2]; __pyx_v_rdot = values[3]; __pyx_v_alphadot = values[4]; __pyx_v_deltadot = values[5]; - } else { - __pyx_v_r = __pyx_k_42; - __pyx_v_alpha = __pyx_k_43; - __pyx_v_delta = __pyx_k_44; - __pyx_v_rdot = __pyx_k_45; - __pyx_v_alphadot = __pyx_k_46; - __pyx_v_deltadot = __pyx_k_47; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 6: __pyx_v_deltadot = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: __pyx_v_alphadot = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: __pyx_v_rdot = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_delta = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_alpha = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_r = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 6, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 716, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.V6S.__init__"); + __Pyx_AddTraceback("tpm.V6S.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_3V6S___init__(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), __pyx_v_r, __pyx_v_alpha, __pyx_v_delta, __pyx_v_rdot, __pyx_v_alphadot, __pyx_v_deltadot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_3V6S___init__(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_r, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_rdot, PyObject *__pyx_v_alphadot, PyObject *__pyx_v_deltadot) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":718 + /* "src/tpm_vec.pxi":718 * def __init__(self, r=0.0, alpha=0.0, delta=0.0, rdot=0.0, * alphadot=0.0, deltadot=0.0): * self.setType(SPHERICAL) # Set type of the underlying V6. Why # <<<<<<<<<<<<<< * # can't I call the inherited V6.__init__()? * self.r = r */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__SPHERICAL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 718; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_SPHERICAL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 718; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 718, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setType(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 718; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setType(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":720 + /* "src/tpm_vec.pxi":720 * self.setType(SPHERICAL) # Set type of the underlying V6. Why * # can't I call the inherited V6.__init__()? * self.r = r # <<<<<<<<<<<<<< * self.alpha = alpha * self.delta = delta */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__r, __pyx_v_r) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_r, __pyx_v_r) < 0) __PYX_ERR(1, 720, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":721 + /* "src/tpm_vec.pxi":721 * # can't I call the inherited V6.__init__()? * self.r = r * self.alpha = alpha # <<<<<<<<<<<<<< * self.delta = delta * self.rdot = rdot */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__alpha, __pyx_v_alpha) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 721; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_alpha, __pyx_v_alpha) < 0) __PYX_ERR(1, 721, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":722 + /* "src/tpm_vec.pxi":722 * self.r = r * self.alpha = alpha * self.delta = delta # <<<<<<<<<<<<<< * self.rdot = rdot * self.alphadot = alphadot */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__delta, __pyx_v_delta) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_delta, __pyx_v_delta) < 0) __PYX_ERR(1, 722, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":723 + /* "src/tpm_vec.pxi":723 * self.alpha = alpha * self.delta = delta * self.rdot = rdot # <<<<<<<<<<<<<< * self.alphadot = alphadot * self.deltadot = deltadot */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__rdot, __pyx_v_rdot) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_rdot, __pyx_v_rdot) < 0) __PYX_ERR(1, 723, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":724 + /* "src/tpm_vec.pxi":724 * self.delta = delta * self.rdot = rdot * self.alphadot = alphadot # <<<<<<<<<<<<<< * self.deltadot = deltadot * */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__alphadot, __pyx_v_alphadot) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_alphadot, __pyx_v_alphadot) < 0) __PYX_ERR(1, 724, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":725 + /* "src/tpm_vec.pxi":725 * self.rdot = rdot * self.alphadot = alphadot * self.deltadot = deltadot # <<<<<<<<<<<<<< * * def __getr(self): */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__deltadot, __pyx_v_deltadot) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 725; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (__Pyx_PyObject_SetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_deltadot, __pyx_v_deltadot) < 0) __PYX_ERR(1, 725, __pyx_L1_error) + + /* "src/tpm_vec.pxi":716 + * # The following is read only. + * ctype = SPHERICAL + * def __init__(self, r=0.0, alpha=0.0, delta=0.0, rdot=0.0, # <<<<<<<<<<<<<< + * alphadot=0.0, deltadot=0.0): + * self.setType(SPHERICAL) # Set type of the underlying V6. Why + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__init__"); + __Pyx_AddTraceback("tpm.V6S.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":727 +/* "src/tpm_vec.pxi":727 * self.deltadot = deltadot * * def __getr(self): # <<<<<<<<<<<<<< @@ -14792,13 +21986,29 @@ static int __pyx_pf_5pytpm_3tpm_3V6S___init__(PyObject *__pyx_v_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_1__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_1__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_3__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_3__getr(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getr (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_2__getr(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_2__getr(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getr"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getr", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":728 + /* "src/tpm_vec.pxi":728 * * def __getr(self): * return self.getX() # <<<<<<<<<<<<<< @@ -14806,17 +22016,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_1__getr(PyObject *__pyx_v_self, CYTHO * def __setr(self, r): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 728; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getX(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 728, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":727 + * self.deltadot = deltadot + * + * def __getr(self): # <<<<<<<<<<<<<< + * return self.getX() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getr"); + __Pyx_AddTraceback("tpm.V6S.__getr", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14824,7 +22041,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_1__getr(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":730 +/* "src/tpm_vec.pxi":730 * return self.getX() * * def __setr(self, r): # <<<<<<<<<<<<<< @@ -14832,30 +22049,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_1__getr(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_2__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_2__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_5__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_5__setr(PyObject *__pyx_v_self, PyObject *__pyx_v_r) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setr (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_4__setr(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v_r)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_4__setr(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_r) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setr"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setr", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":731 + /* "src/tpm_vec.pxi":731 * * def __setr(self, r): * self.setX(r) # <<<<<<<<<<<<<< * * r = property(__getr, __setr, doc="R coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 731; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 731; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_r); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 731, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setX(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":730 + * return self.getX() + * + * def __setr(self, r): # <<<<<<<<<<<<<< + * self.setX(r) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6S.__setr"); + __Pyx_AddTraceback("tpm.V6S.__setr", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14863,7 +22105,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_2__setr(PyObject *__pyx_v_self, PyObj return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":735 +/* "src/tpm_vec.pxi":735 * r = property(__getr, __setr, doc="R coordinate.") * * def __getalpha(self): # <<<<<<<<<<<<<< @@ -14871,13 +22113,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_2__setr(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_3__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_3__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_7__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_7__getalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getalpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_6__getalpha(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_6__getalpha(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getalpha"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getalpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":736 + /* "src/tpm_vec.pxi":736 * * def __getalpha(self): * return self.getY() # <<<<<<<<<<<<<< @@ -14885,17 +22143,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_3__getalpha(PyObject *__pyx_v_self, C * def __setalpha(self, alpha): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 736; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getY(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 736, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":735 + * r = property(__getr, __setr, doc="R coordinate.") + * + * def __getalpha(self): # <<<<<<<<<<<<<< + * return self.getY() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getalpha"); + __Pyx_AddTraceback("tpm.V6S.__getalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14903,7 +22168,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_3__getalpha(PyObject *__pyx_v_self, C return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":738 +/* "src/tpm_vec.pxi":738 * return self.getY() * * def __setalpha(self, alpha): # <<<<<<<<<<<<<< @@ -14911,30 +22176,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_3__getalpha(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_4__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_4__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_9__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_9__setalpha(PyObject *__pyx_v_self, PyObject *__pyx_v_alpha) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setalpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_8__setalpha(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v_alpha)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_8__setalpha(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_alpha) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setalpha"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setalpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":739 + /* "src/tpm_vec.pxi":739 * * def __setalpha(self, alpha): * self.setY(alpha) # <<<<<<<<<<<<<< * * alpha = property(__getalpha, __setalpha, doc="ALPHA coordinate.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 739; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 739; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 739, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setY(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":738 + * return self.getY() + * + * def __setalpha(self, alpha): # <<<<<<<<<<<<<< + * self.setY(alpha) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6S.__setalpha"); + __Pyx_AddTraceback("tpm.V6S.__setalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14942,7 +22232,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_4__setalpha(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":743 +/* "src/tpm_vec.pxi":743 * alpha = property(__getalpha, __setalpha, doc="ALPHA coordinate.") * * def __getdelta(self): # <<<<<<<<<<<<<< @@ -14950,13 +22240,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_4__setalpha(PyObject *__pyx_v_self, P * def __setdelta(self, delta): */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_5__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_5__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_11__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_11__getdelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdelta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_10__getdelta(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_10__getdelta(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdelta"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdelta", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":744 + /* "src/tpm_vec.pxi":744 * * def __getdelta(self): * return self.getZ() # <<<<<<<<<<<<<< @@ -14964,17 +22270,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_5__getdelta(PyObject *__pyx_v_self, C * self.setZ(delta) */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 744; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getZ(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 744, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":743 + * alpha = property(__getalpha, __setalpha, doc="ALPHA coordinate.") + * + * def __getdelta(self): # <<<<<<<<<<<<<< + * return self.getZ() + * def __setdelta(self, delta): + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getdelta"); + __Pyx_AddTraceback("tpm.V6S.__getdelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -14982,7 +22295,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_5__getdelta(PyObject *__pyx_v_self, C return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":745 +/* "src/tpm_vec.pxi":745 * def __getdelta(self): * return self.getZ() * def __setdelta(self, delta): # <<<<<<<<<<<<<< @@ -14990,30 +22303,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_5__getdelta(PyObject *__pyx_v_self, C * delta = property(__getdelta, __setdelta, doc="DELTA coordinate.") */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_6__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_6__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_13__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_13__setdelta(PyObject *__pyx_v_self, PyObject *__pyx_v_delta) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdelta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_12__setdelta(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v_delta)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_12__setdelta(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_delta) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setdelta"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdelta", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":746 + /* "src/tpm_vec.pxi":746 * return self.getZ() * def __setdelta(self, delta): * self.setZ(delta) # <<<<<<<<<<<<<< * delta = property(__getdelta, __setdelta, doc="DELTA coordinate.") * */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 746; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 746; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 746, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setZ(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 746, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":745 + * def __getdelta(self): + * return self.getZ() + * def __setdelta(self, delta): # <<<<<<<<<<<<<< + * self.setZ(delta) + * delta = property(__getdelta, __setdelta, doc="DELTA coordinate.") + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6S.__setdelta"); + __Pyx_AddTraceback("tpm.V6S.__setdelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15021,7 +22359,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_6__setdelta(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":749 +/* "src/tpm_vec.pxi":749 * delta = property(__getdelta, __setdelta, doc="DELTA coordinate.") * * def __getrdot(self): # <<<<<<<<<<<<<< @@ -15029,13 +22367,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_6__setdelta(PyObject *__pyx_v_self, P * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_7__getrdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_7__getrdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_15__getrdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_15__getrdot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getrdot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_14__getrdot(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_14__getrdot(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getrdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getrdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":750 + /* "src/tpm_vec.pxi":750 * * def __getrdot(self): * return self.getXdot() # <<<<<<<<<<<<<< @@ -15043,25 +22397,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_7__getrdot(PyObject *__pyx_v_self, CY * def __setrdot(self, rdot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getXdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getXdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 750, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getrdot"); - __pyx_r = NULL; + /* "src/tpm_vec.pxi":749 + * delta = property(__getdelta, __setdelta, doc="DELTA coordinate.") + * + * def __getrdot(self): # <<<<<<<<<<<<<< + * return self.getXdot() + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6S.__getrdot", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":752 +/* "src/tpm_vec.pxi":752 * return self.getXdot() * * def __setrdot(self, rdot): # <<<<<<<<<<<<<< @@ -15069,30 +22430,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_7__getrdot(PyObject *__pyx_v_self, CY * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_8__setrdot(PyObject *__pyx_v_self, PyObject *__pyx_v_rdot); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_8__setrdot(PyObject *__pyx_v_self, PyObject *__pyx_v_rdot) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_17__setrdot(PyObject *__pyx_v_self, PyObject *__pyx_v_rdot); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_17__setrdot(PyObject *__pyx_v_self, PyObject *__pyx_v_rdot) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setrdot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_16__setrdot(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v_rdot)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_16__setrdot(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_rdot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setrdot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setrdot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":753 + /* "src/tpm_vec.pxi":753 * * def __setrdot(self, rdot): * self.setXdot(rdot) # <<<<<<<<<<<<<< * * rdot = property(__getrdot, __setrdot, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_rdot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setXdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_rdot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 753, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setXdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 753, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":752 + * return self.getXdot() + * + * def __setrdot(self, rdot): # <<<<<<<<<<<<<< + * self.setXdot(rdot) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6S.__setrdot"); + __Pyx_AddTraceback("tpm.V6S.__setrdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15100,7 +22486,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_8__setrdot(PyObject *__pyx_v_self, Py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":758 +/* "src/tpm_vec.pxi":758 * doc="Rate of change of R coordinate.") * * def __getalphadot(self): # <<<<<<<<<<<<<< @@ -15108,13 +22494,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_8__setrdot(PyObject *__pyx_v_self, Py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_9__getalphadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_9__getalphadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_19__getalphadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_19__getalphadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getalphadot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_18__getalphadot(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_18__getalphadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getalphadot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getalphadot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":759 + /* "src/tpm_vec.pxi":759 * * def __getalphadot(self): * return self.getYdot() # <<<<<<<<<<<<<< @@ -15122,17 +22524,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_9__getalphadot(PyObject *__pyx_v_self * def __setalphadot(self, alphadot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getYdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getYdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":758 + * doc="Rate of change of R coordinate.") + * + * def __getalphadot(self): # <<<<<<<<<<<<<< + * return self.getYdot() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getalphadot"); + __Pyx_AddTraceback("tpm.V6S.__getalphadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15140,7 +22549,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_9__getalphadot(PyObject *__pyx_v_self return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":761 +/* "src/tpm_vec.pxi":761 * return self.getYdot() * * def __setalphadot(self, alphadot): # <<<<<<<<<<<<<< @@ -15148,30 +22557,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_9__getalphadot(PyObject *__pyx_v_self * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_10__setalphadot(PyObject *__pyx_v_self, PyObject *__pyx_v_alphadot); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_10__setalphadot(PyObject *__pyx_v_self, PyObject *__pyx_v_alphadot) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_21__setalphadot(PyObject *__pyx_v_self, PyObject *__pyx_v_alphadot); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_21__setalphadot(PyObject *__pyx_v_self, PyObject *__pyx_v_alphadot) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setalphadot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_20__setalphadot(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v_alphadot)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_20__setalphadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_alphadot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setalphadot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setalphadot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":762 + /* "src/tpm_vec.pxi":762 * * def __setalphadot(self, alphadot): * self.setYdot(alphadot) # <<<<<<<<<<<<<< * * alphadot = property(__getalphadot, __setalphadot, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alphadot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setYdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alphadot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 762, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setYdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 762, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":761 + * return self.getYdot() + * + * def __setalphadot(self, alphadot): # <<<<<<<<<<<<<< + * self.setYdot(alphadot) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6S.__setalphadot"); + __Pyx_AddTraceback("tpm.V6S.__setalphadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15179,7 +22613,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_10__setalphadot(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":767 +/* "src/tpm_vec.pxi":767 * doc="Rate of change of ALPHA coordinate.") * * def __getdeltadot(self): # <<<<<<<<<<<<<< @@ -15187,13 +22621,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_10__setalphadot(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_11__getdeltadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_11__getdeltadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_23__getdeltadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_23__getdeltadot(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdeltadot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_22__getdeltadot(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_22__getdeltadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdeltadot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdeltadot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":768 + /* "src/tpm_vec.pxi":768 * * def __getdeltadot(self): * return self.getZdot() # <<<<<<<<<<<<<< @@ -15201,17 +22651,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_11__getdeltadot(PyObject *__pyx_v_sel * def __setdeltadot(self, deltadot): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getZdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 768; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getZdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":767 + * doc="Rate of change of ALPHA coordinate.") + * + * def __getdeltadot(self): # <<<<<<<<<<<<<< + * return self.getZdot() + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getdeltadot"); + __Pyx_AddTraceback("tpm.V6S.__getdeltadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15219,7 +22676,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_11__getdeltadot(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":770 +/* "src/tpm_vec.pxi":770 * return self.getZdot() * * def __setdeltadot(self, deltadot): # <<<<<<<<<<<<<< @@ -15227,30 +22684,55 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_11__getdeltadot(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_12__setdeltadot(PyObject *__pyx_v_self, PyObject *__pyx_v_deltadot); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_12__setdeltadot(PyObject *__pyx_v_self, PyObject *__pyx_v_deltadot) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_25__setdeltadot(PyObject *__pyx_v_self, PyObject *__pyx_v_deltadot); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_25__setdeltadot(PyObject *__pyx_v_self, PyObject *__pyx_v_deltadot) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdeltadot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_24__setdeltadot(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v_deltadot)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_24__setdeltadot(struct __pyx_obj_3tpm_V6S *__pyx_v_self, PyObject *__pyx_v_deltadot) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__setdeltadot"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdeltadot", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":771 + /* "src/tpm_vec.pxi":771 * * def __setdeltadot(self, deltadot): * self.setZdot(deltadot) # <<<<<<<<<<<<<< * * deltadot = property(__getdeltadot, __setdeltadot, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_deltadot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.setZdot(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_deltadot); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 771, __pyx_L1_error) + __pyx_t_2 = ((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.setZdot(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + /* "src/tpm_vec.pxi":770 + * return self.getZdot() + * + * def __setdeltadot(self, deltadot): # <<<<<<<<<<<<<< + * self.setZdot(deltadot) + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.V6S.__setdeltadot"); + __Pyx_AddTraceback("tpm.V6S.__setdeltadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15258,7 +22740,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_12__setdeltadot(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":776 +/* "src/tpm_vec.pxi":776 * doc="Rate of change of DELTA coordinate.") * * def __getnalpha(self): # <<<<<<<<<<<<<< @@ -15266,13 +22748,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_12__setdeltadot(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_13__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_13__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_27__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_27__getnalpha(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getnalpha (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_26__getnalpha(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_26__getnalpha(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getnalpha"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getnalpha", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":777 + /* "src/tpm_vec.pxi":777 * * def __getnalpha(self): * return tpm_vec.v6alpha(self.getV6()) # <<<<<<<<<<<<<< @@ -15280,17 +22778,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_13__getnalpha(PyObject *__pyx_v_self, * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v6alpha(((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 777; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v6alpha(((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 777, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":776 + * doc="Rate of change of DELTA coordinate.") + * + * def __getnalpha(self): # <<<<<<<<<<<<<< + * return tpm_vec.v6alpha(self.getV6()) + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getnalpha"); + __Pyx_AddTraceback("tpm.V6S.__getnalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15298,7 +22803,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_13__getnalpha(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":781 +/* "src/tpm_vec.pxi":781 * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") * * def __getndelta(self): # <<<<<<<<<<<<<< @@ -15306,13 +22811,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_13__getnalpha(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_14__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_14__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_29__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_29__getndelta(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getndelta (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_28__getndelta(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_28__getndelta(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getndelta"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getndelta", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":782 + /* "src/tpm_vec.pxi":782 * * def __getndelta(self): * return tpm_vec.v6delta(self.getV6()) # <<<<<<<<<<<<<< @@ -15320,17 +22841,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_14__getndelta(PyObject *__pyx_v_self, * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v6delta(((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(v6delta(((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":781 + * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") + * + * def __getndelta(self): # <<<<<<<<<<<<<< + * return tpm_vec.v6delta(self.getV6()) + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.__getndelta"); + __Pyx_AddTraceback("tpm.V6S.__getndelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15338,7 +22866,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_14__getndelta(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":786 +/* "src/tpm_vec.pxi":786 * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") * * def s2c(self): # <<<<<<<<<<<<<< @@ -15346,40 +22874,54 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_14__getndelta(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_15s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_3V6S_15s2c[] = "Spherical to Cartesian.\n\n Returns\n -------\n v : tpm.V6C\n The Cartesian equivalent of this vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_15s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_31s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_3V6S_30s2c[] = "Spherical to Cartesian.\n\n Returns\n -------\n v : tpm.V6C\n The Cartesian equivalent of this vector.\n\n "; +static PyObject *__pyx_pw_3tpm_3V6S_31s2c(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("s2c (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_30s2c(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_30s2c(struct __pyx_obj_3tpm_V6S *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("s2c"); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("s2c", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":795 + /* "src/tpm_vec.pxi":795 * * """ * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(tpm_vec.v6s2c(self.getV6())) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 795; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":796 + /* "src/tpm_vec.pxi":796 * """ * v6c = V6C() * v6c.setV6(tpm_vec.v6s2c(self.getV6())) # <<<<<<<<<<<<<< * return v6c * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), v6s2c(((struct __pyx_vtabstruct_5pytpm_3tpm_V6S *)((struct __pyx_obj_5pytpm_3tpm_V6S *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 796; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), v6s2c(((struct __pyx_vtabstruct_3tpm_V6S *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":797 + /* "src/tpm_vec.pxi":797 * v6c = V6C() * v6c.setV6(tpm_vec.v6s2c(self.getV6())) * return v6c # <<<<<<<<<<<<<< @@ -15391,20 +22933,140 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_15s2c(PyObject *__pyx_v_self, CYTHON_ __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":786 + * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") + * + * def s2c(self): # <<<<<<<<<<<<<< + * """Spherical to Cartesian. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.V6S.s2c"); + __Pyx_AddTraceback("tpm.V6S.s2c", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_33__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_33__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_32__reduce_cython__(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_32__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6S *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__21, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6S.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_3V6S_35__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_3V6S_35__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_3V6S_34__setstate_cython__(((struct __pyx_obj_3tpm_V6S *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_3V6S_34__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_V6S *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__22, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.V6S.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":839 +/* "src/tpm_vec.pxi":839 * cdef tpm_vec.M3 _m3 * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -15412,29 +23074,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_3V6S_15s2c(PyObject *__pyx_v_self, CYTHON_ * */ -static int __pyx_pf_5pytpm_3tpm_2M3___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2M3___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2M3_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2M3_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_2M3___cinit__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":840 +static int __pyx_pf_3tpm_2M3___cinit__(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__", 0); + + /* "src/tpm_vec.pxi":840 * * def __cinit__(self): * self._m3 = tpm_vec.m3I(1.0) # <<<<<<<<<<<<<< * * def __init__(self, xx=1.0, xy=0.0, xz=0.0, yx=0.0, yy=1.0, yz=0.0, */ - ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3 = m3I(1.0); + __pyx_v_self->_m3 = m3I(1.0); + + /* "src/tpm_vec.pxi":839 + * cdef tpm_vec.M3 _m3 + * + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._m3 = tpm_vec.m3I(1.0) + * + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":842 +/* "src/tpm_vec.pxi":842 * self._m3 = tpm_vec.m3I(1.0) * * def __init__(self, xx=1.0, xy=0.0, xz=0.0, yx=0.0, yy=1.0, yz=0.0, # <<<<<<<<<<<<<< @@ -15442,8 +23126,9 @@ static int __pyx_pf_5pytpm_3tpm_2M3___cinit__(PyObject *__pyx_v_self, PyObject * * self._m3.m[0][0] = xx */ -static int __pyx_pf_5pytpm_3tpm_2M3_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2M3_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2M3_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2M3_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_xx = 0; PyObject *__pyx_v_xy = 0; PyObject *__pyx_v_xz = 0; @@ -15453,85 +23138,132 @@ static int __pyx_pf_5pytpm_3tpm_2M3_1__init__(PyObject *__pyx_v_self, PyObject * PyObject *__pyx_v_zx = 0; PyObject *__pyx_v_zy = 0; PyObject *__pyx_v_zz = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - double __pyx_t_1; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__xx,&__pyx_n_s__xy,&__pyx_n_s__xz,&__pyx_n_s__yx,&__pyx_n_s__yy,&__pyx_n_s__yz,&__pyx_n_s__zx,&__pyx_n_s__zy,&__pyx_n_s__zz,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_xx,&__pyx_n_s_xy,&__pyx_n_s_xz,&__pyx_n_s_yx,&__pyx_n_s_yy,&__pyx_n_s_yz,&__pyx_n_s_zx,&__pyx_n_s_zy,&__pyx_n_s_zz,0}; PyObject* values[9] = {0,0,0,0,0,0,0,0,0}; - values[0] = __pyx_k_48; - values[1] = __pyx_k_49; - values[2] = __pyx_k_50; - values[3] = __pyx_k_51; - values[4] = __pyx_k_52; - values[5] = __pyx_k_53; - values[6] = __pyx_k_54; - values[7] = __pyx_k_55; - values[8] = __pyx_k_56; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); - case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); - case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xx); - if (value) { values[0] = value; kw_args--; } - } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xy); - if (value) { values[1] = value; kw_args--; } - } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xz); - if (value) { values[2] = value; kw_args--; } - } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__yx); - if (value) { values[3] = value; kw_args--; } - } - case 4: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__yy); - if (value) { values[4] = value; kw_args--; } + values[0] = ((PyObject *)__pyx_float_1_0); + values[1] = ((PyObject *)__pyx_float_0_0); + values[2] = ((PyObject *)__pyx_float_0_0); + values[3] = ((PyObject *)__pyx_float_0_0); + values[4] = ((PyObject *)__pyx_float_1_0); + values[5] = ((PyObject *)__pyx_float_0_0); + values[6] = ((PyObject *)__pyx_float_0_0); + values[7] = ((PyObject *)__pyx_float_0_0); + values[8] = ((PyObject *)__pyx_float_1_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 5: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__yz); - if (value) { values[5] = value; kw_args--; } - } - case 6: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zx); - if (value) { values[6] = value; kw_args--; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xx); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xy); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xz); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_yx); + if (value) { values[3] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 4: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_yy); + if (value) { values[4] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 5: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_yz); + if (value) { values[5] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 6: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zx); + if (value) { values[6] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 7: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zy); + if (value) { values[7] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 8: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zz); + if (value) { values[8] = value; kw_args--; } + } } - case 7: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zy); - if (value) { values[7] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(1, 842, __pyx_L3_error) } - case 8: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zz); - if (value) { values[8] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_xx = values[0]; __pyx_v_xy = values[1]; __pyx_v_xz = values[2]; @@ -15541,140 +23273,141 @@ static int __pyx_pf_5pytpm_3tpm_2M3_1__init__(PyObject *__pyx_v_self, PyObject * __pyx_v_zx = values[6]; __pyx_v_zy = values[7]; __pyx_v_zz = values[8]; - } else { - __pyx_v_xx = __pyx_k_48; - __pyx_v_xy = __pyx_k_49; - __pyx_v_xz = __pyx_k_50; - __pyx_v_yx = __pyx_k_51; - __pyx_v_yy = __pyx_k_52; - __pyx_v_yz = __pyx_k_53; - __pyx_v_zx = __pyx_k_54; - __pyx_v_zy = __pyx_k_55; - __pyx_v_zz = __pyx_k_56; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 9: __pyx_v_zz = PyTuple_GET_ITEM(__pyx_args, 8); - case 8: __pyx_v_zy = PyTuple_GET_ITEM(__pyx_args, 7); - case 7: __pyx_v_zx = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: __pyx_v_yz = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: __pyx_v_yy = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: __pyx_v_yx = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_xz = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_xy = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_xx = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 9, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 9, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 842, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__init__"); + __Pyx_AddTraceback("tpm.M3.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_2__init__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), __pyx_v_xx, __pyx_v_xy, __pyx_v_xz, __pyx_v_yx, __pyx_v_yy, __pyx_v_yz, __pyx_v_zx, __pyx_v_zy, __pyx_v_zz); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2M3_2__init__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, PyObject *__pyx_v_xx, PyObject *__pyx_v_xy, PyObject *__pyx_v_xz, PyObject *__pyx_v_yx, PyObject *__pyx_v_yy, PyObject *__pyx_v_yz, PyObject *__pyx_v_zx, PyObject *__pyx_v_zy, PyObject *__pyx_v_zz) { + int __pyx_r; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":844 + /* "src/tpm_vec.pxi":844 * def __init__(self, xx=1.0, xy=0.0, xz=0.0, yx=0.0, yy=1.0, yz=0.0, * zx=0.0, zy=0.0, zz=1.0): * self._m3.m[0][0] = xx # <<<<<<<<<<<<<< * self._m3.m[0][1] = xy * self._m3.m[0][2] = xz */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[0]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 844, __pyx_L1_error) + ((__pyx_v_self->_m3.m[0])[0]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":845 + /* "src/tpm_vec.pxi":845 * zx=0.0, zy=0.0, zz=1.0): * self._m3.m[0][0] = xx * self._m3.m[0][1] = xy # <<<<<<<<<<<<<< * self._m3.m[0][2] = xz * self._m3.m[1][0] = yx */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xy); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[1]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xy); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 845, __pyx_L1_error) + ((__pyx_v_self->_m3.m[0])[1]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":846 + /* "src/tpm_vec.pxi":846 * self._m3.m[0][0] = xx * self._m3.m[0][1] = xy * self._m3.m[0][2] = xz # <<<<<<<<<<<<<< * self._m3.m[1][0] = yx * self._m3.m[1][1] = yy */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xz); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 846; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[2]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xz); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 846, __pyx_L1_error) + ((__pyx_v_self->_m3.m[0])[2]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":847 + /* "src/tpm_vec.pxi":847 * self._m3.m[0][1] = xy * self._m3.m[0][2] = xz * self._m3.m[1][0] = yx # <<<<<<<<<<<<<< * self._m3.m[1][1] = yy * self._m3.m[1][2] = yz */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_yx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[0]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_yx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 847, __pyx_L1_error) + ((__pyx_v_self->_m3.m[1])[0]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":848 + /* "src/tpm_vec.pxi":848 * self._m3.m[0][2] = xz * self._m3.m[1][0] = yx * self._m3.m[1][1] = yy # <<<<<<<<<<<<<< * self._m3.m[1][2] = yz * self._m3.m[2][0] = zx */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_yy); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 848; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[1]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_yy); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 848, __pyx_L1_error) + ((__pyx_v_self->_m3.m[1])[1]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":849 + /* "src/tpm_vec.pxi":849 * self._m3.m[1][0] = yx * self._m3.m[1][1] = yy * self._m3.m[1][2] = yz # <<<<<<<<<<<<<< * self._m3.m[2][0] = zx * self._m3.m[2][1] = zy */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_yz); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 849; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[2]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_yz); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 849, __pyx_L1_error) + ((__pyx_v_self->_m3.m[1])[2]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":850 + /* "src/tpm_vec.pxi":850 * self._m3.m[1][1] = yy * self._m3.m[1][2] = yz * self._m3.m[2][0] = zx # <<<<<<<<<<<<<< * self._m3.m[2][1] = zy * self._m3.m[2][2] = zz */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 850; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[0]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 850, __pyx_L1_error) + ((__pyx_v_self->_m3.m[2])[0]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":851 + /* "src/tpm_vec.pxi":851 * self._m3.m[1][2] = yz * self._m3.m[2][0] = zx * self._m3.m[2][1] = zy # <<<<<<<<<<<<<< * self._m3.m[2][2] = zz * */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zy); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 851; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[1]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zy); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 851, __pyx_L1_error) + ((__pyx_v_self->_m3.m[2])[1]) = __pyx_t_1; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":852 + /* "src/tpm_vec.pxi":852 * self._m3.m[2][0] = zx * self._m3.m[2][1] = zy * self._m3.m[2][2] = zz # <<<<<<<<<<<<<< * * def __getxx(self): */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zz); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 852; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[2]) = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zz); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 852, __pyx_L1_error) + ((__pyx_v_self->_m3.m[2])[2]) = __pyx_t_1; + + /* "src/tpm_vec.pxi":842 + * self._m3 = tpm_vec.m3I(1.0) + * + * def __init__(self, xx=1.0, xy=0.0, xz=0.0, yx=0.0, yy=1.0, yz=0.0, # <<<<<<<<<<<<<< + * zx=0.0, zy=0.0, zz=1.0): + * self._m3.m[0][0] = xx + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__init__"); + __Pyx_AddTraceback("tpm.M3.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":854 +/* "src/tpm_vec.pxi":854 * self._m3.m[2][2] = zz * * def __getxx(self): # <<<<<<<<<<<<<< @@ -15682,13 +23415,29 @@ static int __pyx_pf_5pytpm_3tpm_2M3_1__init__(PyObject *__pyx_v_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_2__getxx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_2__getxx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_5__getxx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_5__getxx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getxx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_4__getxx(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_4__getxx(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getxx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getxx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":855 + /* "src/tpm_vec.pxi":855 * * def __getxx(self): * return self._m3.m[0][0] # <<<<<<<<<<<<<< @@ -15696,17 +23445,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_2__getxx(PyObject *__pyx_v_self, CYTHO * def __setxx(self, double xx): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 855; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[0])[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":854 + * self._m3.m[2][2] = zz + * + * def __getxx(self): # <<<<<<<<<<<<<< + * return self._m3.m[0][0] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getxx"); + __Pyx_AddTraceback("tpm.M3.__getxx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15714,7 +23470,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_2__getxx(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":857 +/* "src/tpm_vec.pxi":857 * return self._m3.m[0][0] * * def __setxx(self, double xx): # <<<<<<<<<<<<<< @@ -15722,37 +23478,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_2__getxx(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_3__setxx(PyObject *__pyx_v_self, PyObject *__pyx_arg_xx); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_3__setxx(PyObject *__pyx_v_self, PyObject *__pyx_arg_xx) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_7__setxx(PyObject *__pyx_v_self, PyObject *__pyx_arg_xx); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_7__setxx(PyObject *__pyx_v_self, PyObject *__pyx_arg_xx) { double __pyx_v_xx; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setxx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxx (wrapper)", 0); assert(__pyx_arg_xx); { - __pyx_v_xx = __pyx_PyFloat_AsDouble(__pyx_arg_xx); if (unlikely((__pyx_v_xx == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 857; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_xx = __pyx_PyFloat_AsDouble(__pyx_arg_xx); if (unlikely((__pyx_v_xx == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 857, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setxx"); + __Pyx_AddTraceback("tpm.M3.__setxx", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_6__setxx(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_xx)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_6__setxx(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_xx) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":858 + /* "src/tpm_vec.pxi":858 * * def __setxx(self, double xx): * self._m3.m[0][0] = xx # <<<<<<<<<<<<<< * * xx = property(__getxx, __setxx, doc="XX.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[0]) = __pyx_v_xx; + ((__pyx_v_self->_m3.m[0])[0]) = __pyx_v_xx; + + /* "src/tpm_vec.pxi":857 + * return self._m3.m[0][0] + * + * def __setxx(self, double xx): # <<<<<<<<<<<<<< + * self._m3.m[0][0] = xx + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":862 +/* "src/tpm_vec.pxi":862 * xx = property(__getxx, __setxx, doc="XX.") * * def __getxy(self): # <<<<<<<<<<<<<< @@ -15760,13 +23541,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_3__setxx(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_4__getxy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_4__getxy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_9__getxy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_9__getxy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getxy (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_8__getxy(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_8__getxy(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getxy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getxy", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":863 + /* "src/tpm_vec.pxi":863 * * def __getxy(self): * return self._m3.m[0][1] # <<<<<<<<<<<<<< @@ -15774,17 +23571,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_4__getxy(PyObject *__pyx_v_self, CYTHO * def __setxy(self, double xy): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 863; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[0])[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 863, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":862 + * xx = property(__getxx, __setxx, doc="XX.") + * + * def __getxy(self): # <<<<<<<<<<<<<< + * return self._m3.m[0][1] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getxy"); + __Pyx_AddTraceback("tpm.M3.__getxy", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15792,7 +23596,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_4__getxy(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":865 +/* "src/tpm_vec.pxi":865 * return self._m3.m[0][1] * * def __setxy(self, double xy): # <<<<<<<<<<<<<< @@ -15800,37 +23604,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_4__getxy(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_5__setxy(PyObject *__pyx_v_self, PyObject *__pyx_arg_xy); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_5__setxy(PyObject *__pyx_v_self, PyObject *__pyx_arg_xy) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_11__setxy(PyObject *__pyx_v_self, PyObject *__pyx_arg_xy); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_11__setxy(PyObject *__pyx_v_self, PyObject *__pyx_arg_xy) { double __pyx_v_xy; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setxy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxy (wrapper)", 0); assert(__pyx_arg_xy); { - __pyx_v_xy = __pyx_PyFloat_AsDouble(__pyx_arg_xy); if (unlikely((__pyx_v_xy == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 865; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_xy = __pyx_PyFloat_AsDouble(__pyx_arg_xy); if (unlikely((__pyx_v_xy == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 865, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setxy"); + __Pyx_AddTraceback("tpm.M3.__setxy", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_10__setxy(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_xy)); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":866 - * + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_10__setxy(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_xy) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxy", 0); + + /* "src/tpm_vec.pxi":866 + * * def __setxy(self, double xy): * self._m3.m[0][1] = xy # <<<<<<<<<<<<<< * * xy = property(__getxy, __setxy, doc="XY.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[1]) = __pyx_v_xy; + ((__pyx_v_self->_m3.m[0])[1]) = __pyx_v_xy; + + /* "src/tpm_vec.pxi":865 + * return self._m3.m[0][1] + * + * def __setxy(self, double xy): # <<<<<<<<<<<<<< + * self._m3.m[0][1] = xy + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":870 +/* "src/tpm_vec.pxi":870 * xy = property(__getxy, __setxy, doc="XY.") * * def __getxz(self): # <<<<<<<<<<<<<< @@ -15838,13 +23667,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_5__setxy(PyObject *__pyx_v_self, PyObj * def __setxz(self, double xz): */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_6__getxz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_6__getxz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_13__getxz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_13__getxz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getxz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_12__getxz(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_12__getxz(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getxz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getxz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":871 + /* "src/tpm_vec.pxi":871 * * def __getxz(self): * return self._m3.m[0][2] # <<<<<<<<<<<<<< @@ -15852,17 +23697,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_6__getxz(PyObject *__pyx_v_self, CYTHO * self._m3.m[1][2] = xz */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[0])[2])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 871; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[0])[2])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 871, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":870 + * xy = property(__getxy, __setxy, doc="XY.") + * + * def __getxz(self): # <<<<<<<<<<<<<< + * return self._m3.m[0][2] + * def __setxz(self, double xz): + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getxz"); + __Pyx_AddTraceback("tpm.M3.__getxz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15870,7 +23722,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_6__getxz(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":872 +/* "src/tpm_vec.pxi":872 * def __getxz(self): * return self._m3.m[0][2] * def __setxz(self, double xz): # <<<<<<<<<<<<<< @@ -15878,37 +23730,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_6__getxz(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_7__setxz(PyObject *__pyx_v_self, PyObject *__pyx_arg_xz); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_7__setxz(PyObject *__pyx_v_self, PyObject *__pyx_arg_xz) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_15__setxz(PyObject *__pyx_v_self, PyObject *__pyx_arg_xz); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_15__setxz(PyObject *__pyx_v_self, PyObject *__pyx_arg_xz) { double __pyx_v_xz; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setxz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxz (wrapper)", 0); assert(__pyx_arg_xz); { - __pyx_v_xz = __pyx_PyFloat_AsDouble(__pyx_arg_xz); if (unlikely((__pyx_v_xz == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_xz = __pyx_PyFloat_AsDouble(__pyx_arg_xz); if (unlikely((__pyx_v_xz == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 872, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setxz"); + __Pyx_AddTraceback("tpm.M3.__setxz", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_14__setxz(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_xz)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_14__setxz(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_xz) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":873 + /* "src/tpm_vec.pxi":873 * return self._m3.m[0][2] * def __setxz(self, double xz): * self._m3.m[1][2] = xz # <<<<<<<<<<<<<< * * xz = property(__getxz, __setxz, doc="XZ.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[2]) = __pyx_v_xz; + ((__pyx_v_self->_m3.m[1])[2]) = __pyx_v_xz; + + /* "src/tpm_vec.pxi":872 + * def __getxz(self): + * return self._m3.m[0][2] + * def __setxz(self, double xz): # <<<<<<<<<<<<<< + * self._m3.m[1][2] = xz + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":877 +/* "src/tpm_vec.pxi":877 * xz = property(__getxz, __setxz, doc="XZ.") * * def __getyx(self): # <<<<<<<<<<<<<< @@ -15916,13 +23793,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_7__setxz(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_8__getyx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_8__getyx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_17__getyx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_17__getyx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getyx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_16__getyx(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_16__getyx(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getyx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getyx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":878 + /* "src/tpm_vec.pxi":878 * * def __getyx(self): * return self._m3.m[1][0] # <<<<<<<<<<<<<< @@ -15930,17 +23823,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_8__getyx(PyObject *__pyx_v_self, CYTHO * def __setyx(self, double yx): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 878; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[1])[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":877 + * xz = property(__getxz, __setxz, doc="XZ.") + * + * def __getyx(self): # <<<<<<<<<<<<<< + * return self._m3.m[1][0] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getyx"); + __Pyx_AddTraceback("tpm.M3.__getyx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -15948,7 +23848,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_8__getyx(PyObject *__pyx_v_self, CYTHO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":880 +/* "src/tpm_vec.pxi":880 * return self._m3.m[1][0] * * def __setyx(self, double yx): # <<<<<<<<<<<<<< @@ -15956,37 +23856,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_8__getyx(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_9__setyx(PyObject *__pyx_v_self, PyObject *__pyx_arg_yx); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_9__setyx(PyObject *__pyx_v_self, PyObject *__pyx_arg_yx) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_19__setyx(PyObject *__pyx_v_self, PyObject *__pyx_arg_yx); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_19__setyx(PyObject *__pyx_v_self, PyObject *__pyx_arg_yx) { double __pyx_v_yx; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setyx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setyx (wrapper)", 0); assert(__pyx_arg_yx); { - __pyx_v_yx = __pyx_PyFloat_AsDouble(__pyx_arg_yx); if (unlikely((__pyx_v_yx == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 880; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_yx = __pyx_PyFloat_AsDouble(__pyx_arg_yx); if (unlikely((__pyx_v_yx == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 880, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setyx"); + __Pyx_AddTraceback("tpm.M3.__setyx", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_18__setyx(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_yx)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_18__setyx(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_yx) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setyx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":881 + /* "src/tpm_vec.pxi":881 * * def __setyx(self, double yx): * self._m3.m[1][0] = yx # <<<<<<<<<<<<<< * * yx = property(__getyx, __setyx, doc="YX.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[0]) = __pyx_v_yx; + ((__pyx_v_self->_m3.m[1])[0]) = __pyx_v_yx; + + /* "src/tpm_vec.pxi":880 + * return self._m3.m[1][0] + * + * def __setyx(self, double yx): # <<<<<<<<<<<<<< + * self._m3.m[1][0] = yx + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":885 +/* "src/tpm_vec.pxi":885 * yx = property(__getyx, __setyx, doc="YX.") * * def __getyy(self): # <<<<<<<<<<<<<< @@ -15994,13 +23919,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_9__setyx(PyObject *__pyx_v_self, PyObj * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_10__getyy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_10__getyy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_21__getyy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_21__getyy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getyy (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_20__getyy(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_20__getyy(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getyy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getyy", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":886 + /* "src/tpm_vec.pxi":886 * * def __getyy(self): * return self._m3.m[1][1] # <<<<<<<<<<<<<< @@ -16008,17 +23949,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_10__getyy(PyObject *__pyx_v_self, CYTH * def __setyy(self, double yy): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 886; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[1])[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":885 + * yx = property(__getyx, __setyx, doc="YX.") + * + * def __getyy(self): # <<<<<<<<<<<<<< + * return self._m3.m[1][1] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getyy"); + __Pyx_AddTraceback("tpm.M3.__getyy", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -16026,7 +23974,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_10__getyy(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":888 +/* "src/tpm_vec.pxi":888 * return self._m3.m[1][1] * * def __setyy(self, double yy): # <<<<<<<<<<<<<< @@ -16034,37 +23982,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_10__getyy(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_11__setyy(PyObject *__pyx_v_self, PyObject *__pyx_arg_yy); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_11__setyy(PyObject *__pyx_v_self, PyObject *__pyx_arg_yy) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_23__setyy(PyObject *__pyx_v_self, PyObject *__pyx_arg_yy); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_23__setyy(PyObject *__pyx_v_self, PyObject *__pyx_arg_yy) { double __pyx_v_yy; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setyy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setyy (wrapper)", 0); assert(__pyx_arg_yy); { - __pyx_v_yy = __pyx_PyFloat_AsDouble(__pyx_arg_yy); if (unlikely((__pyx_v_yy == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_yy = __pyx_PyFloat_AsDouble(__pyx_arg_yy); if (unlikely((__pyx_v_yy == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 888, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setyy"); + __Pyx_AddTraceback("tpm.M3.__setyy", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_22__setyy(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_yy)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_22__setyy(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_yy) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setyy", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":889 + /* "src/tpm_vec.pxi":889 * * def __setyy(self, double yy): * self._m3.m[1][1] = yy # <<<<<<<<<<<<<< * * yy = property(__getyy, __setyy, doc="YY.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[1]) = __pyx_v_yy; + ((__pyx_v_self->_m3.m[1])[1]) = __pyx_v_yy; + + /* "src/tpm_vec.pxi":888 + * return self._m3.m[1][1] + * + * def __setyy(self, double yy): # <<<<<<<<<<<<<< + * self._m3.m[1][1] = yy + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":893 +/* "src/tpm_vec.pxi":893 * yy = property(__getyy, __setyy, doc="YY.") * * def __getyz(self): # <<<<<<<<<<<<<< @@ -16072,13 +24045,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_11__setyy(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_12__getyz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_12__getyz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_25__getyz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_25__getyz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getyz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_24__getyz(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_24__getyz(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getyz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getyz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":894 + /* "src/tpm_vec.pxi":894 * * def __getyz(self): * return self._m3.m[1][2] # <<<<<<<<<<<<<< @@ -16086,17 +24075,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_12__getyz(PyObject *__pyx_v_self, CYTH * def __setyz(self, double yz): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[2])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 894; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[1])[2])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":893 + * yy = property(__getyy, __setyy, doc="YY.") + * + * def __getyz(self): # <<<<<<<<<<<<<< + * return self._m3.m[1][2] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getyz"); + __Pyx_AddTraceback("tpm.M3.__getyz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -16104,7 +24100,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_12__getyz(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":896 +/* "src/tpm_vec.pxi":896 * return self._m3.m[1][2] * * def __setyz(self, double yz): # <<<<<<<<<<<<<< @@ -16112,37 +24108,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_12__getyz(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_13__setyz(PyObject *__pyx_v_self, PyObject *__pyx_arg_yz); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_13__setyz(PyObject *__pyx_v_self, PyObject *__pyx_arg_yz) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_27__setyz(PyObject *__pyx_v_self, PyObject *__pyx_arg_yz); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_27__setyz(PyObject *__pyx_v_self, PyObject *__pyx_arg_yz) { double __pyx_v_yz; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setyz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setyz (wrapper)", 0); assert(__pyx_arg_yz); { - __pyx_v_yz = __pyx_PyFloat_AsDouble(__pyx_arg_yz); if (unlikely((__pyx_v_yz == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 896; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_yz = __pyx_PyFloat_AsDouble(__pyx_arg_yz); if (unlikely((__pyx_v_yz == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 896, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setyz"); + __Pyx_AddTraceback("tpm.M3.__setyz", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_26__setyz(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_yz)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_26__setyz(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_yz) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setyz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":897 + /* "src/tpm_vec.pxi":897 * * def __setyz(self, double yz): * self._m3.m[1][2] = yz # <<<<<<<<<<<<<< * * yz = property(__getyz, __setyz, doc="YZ.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[1])[2]) = __pyx_v_yz; + ((__pyx_v_self->_m3.m[1])[2]) = __pyx_v_yz; + + /* "src/tpm_vec.pxi":896 + * return self._m3.m[1][2] + * + * def __setyz(self, double yz): # <<<<<<<<<<<<<< + * self._m3.m[1][2] = yz + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":901 +/* "src/tpm_vec.pxi":901 * yz = property(__getyz, __setyz, doc="YZ.") * * def __getzx(self): # <<<<<<<<<<<<<< @@ -16150,13 +24171,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_13__setyz(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_14__getzx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_14__getzx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_29__getzx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_29__getzx(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getzx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_28__getzx(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_28__getzx(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getzx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getzx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":902 + /* "src/tpm_vec.pxi":902 * * def __getzx(self): * return self._m3.m[2][0] # <<<<<<<<<<<<<< @@ -16164,17 +24201,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_14__getzx(PyObject *__pyx_v_self, CYTH * def __setzx(self, double zx): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 902; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[2])[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 902, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":901 + * yz = property(__getyz, __setyz, doc="YZ.") + * + * def __getzx(self): # <<<<<<<<<<<<<< + * return self._m3.m[2][0] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getzx"); + __Pyx_AddTraceback("tpm.M3.__getzx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -16182,7 +24226,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_14__getzx(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":904 +/* "src/tpm_vec.pxi":904 * return self._m3.m[2][0] * * def __setzx(self, double zx): # <<<<<<<<<<<<<< @@ -16190,37 +24234,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_14__getzx(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_15__setzx(PyObject *__pyx_v_self, PyObject *__pyx_arg_zx); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_15__setzx(PyObject *__pyx_v_self, PyObject *__pyx_arg_zx) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_31__setzx(PyObject *__pyx_v_self, PyObject *__pyx_arg_zx); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_31__setzx(PyObject *__pyx_v_self, PyObject *__pyx_arg_zx) { double __pyx_v_zx; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setzx"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzx (wrapper)", 0); assert(__pyx_arg_zx); { - __pyx_v_zx = __pyx_PyFloat_AsDouble(__pyx_arg_zx); if (unlikely((__pyx_v_zx == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 904; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_zx = __pyx_PyFloat_AsDouble(__pyx_arg_zx); if (unlikely((__pyx_v_zx == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 904, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setzx"); + __Pyx_AddTraceback("tpm.M3.__setzx", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_30__setzx(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_zx)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_30__setzx(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_zx) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":905 + /* "src/tpm_vec.pxi":905 * * def __setzx(self, double zx): * self._m3.m[2][0] = zx # <<<<<<<<<<<<<< * * zx = property(__getzx, __setzx, doc="ZX.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[0]) = __pyx_v_zx; + ((__pyx_v_self->_m3.m[2])[0]) = __pyx_v_zx; + + /* "src/tpm_vec.pxi":904 + * return self._m3.m[2][0] + * + * def __setzx(self, double zx): # <<<<<<<<<<<<<< + * self._m3.m[2][0] = zx + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":909 +/* "src/tpm_vec.pxi":909 * zx = property(__getzx, __setzx, doc="ZX.") * * def __getzy(self): # <<<<<<<<<<<<<< @@ -16228,13 +24297,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_15__setzx(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_16__getzy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_16__getzy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_33__getzy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_33__getzy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getzy (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_32__getzy(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_32__getzy(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getzy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getzy", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":910 + /* "src/tpm_vec.pxi":910 * * def __getzy(self): * return self._m3.m[2][1] # <<<<<<<<<<<<<< @@ -16242,17 +24327,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_16__getzy(PyObject *__pyx_v_self, CYTH * def __setzy(self, double zy): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[2])[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":909 + * zx = property(__getzx, __setzx, doc="ZX.") + * + * def __getzy(self): # <<<<<<<<<<<<<< + * return self._m3.m[2][1] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getzy"); + __Pyx_AddTraceback("tpm.M3.__getzy", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -16260,7 +24352,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_16__getzy(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":912 +/* "src/tpm_vec.pxi":912 * return self._m3.m[2][1] * * def __setzy(self, double zy): # <<<<<<<<<<<<<< @@ -16268,37 +24360,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_16__getzy(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_17__setzy(PyObject *__pyx_v_self, PyObject *__pyx_arg_zy); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_17__setzy(PyObject *__pyx_v_self, PyObject *__pyx_arg_zy) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_35__setzy(PyObject *__pyx_v_self, PyObject *__pyx_arg_zy); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_35__setzy(PyObject *__pyx_v_self, PyObject *__pyx_arg_zy) { double __pyx_v_zy; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setzy"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzy (wrapper)", 0); assert(__pyx_arg_zy); { - __pyx_v_zy = __pyx_PyFloat_AsDouble(__pyx_arg_zy); if (unlikely((__pyx_v_zy == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 912; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_zy = __pyx_PyFloat_AsDouble(__pyx_arg_zy); if (unlikely((__pyx_v_zy == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 912, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setzy"); + __Pyx_AddTraceback("tpm.M3.__setzy", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_34__setzy(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_zy)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_34__setzy(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_zy) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzy", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":913 + /* "src/tpm_vec.pxi":913 * * def __setzy(self, double zy): * self._m3.m[2][1] = zy # <<<<<<<<<<<<<< * * zy = property(__getzy, __setzy, doc="ZY.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[1]) = __pyx_v_zy; + ((__pyx_v_self->_m3.m[2])[1]) = __pyx_v_zy; + + /* "src/tpm_vec.pxi":912 + * return self._m3.m[2][1] + * + * def __setzy(self, double zy): # <<<<<<<<<<<<<< + * self._m3.m[2][1] = zy + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":917 +/* "src/tpm_vec.pxi":917 * zy = property(__getzy, __setzy, doc="ZY.") * * def __getzz(self): # <<<<<<<<<<<<<< @@ -16306,13 +24423,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_17__setzy(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_18__getzz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_18__getzz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_37__getzz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_37__getzz(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getzz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_36__getzz(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_36__getzz(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getzz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getzz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":918 + /* "src/tpm_vec.pxi":918 * * def __getzz(self): * return self._m3.m[2][2] # <<<<<<<<<<<<<< @@ -16320,17 +24453,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_18__getzz(PyObject *__pyx_v_self, CYTH * def __setzz(self, double zz): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[2])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 918; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(((__pyx_v_self->_m3.m[2])[2])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":917 + * zy = property(__getzy, __setzy, doc="ZY.") + * + * def __getzz(self): # <<<<<<<<<<<<<< + * return self._m3.m[2][2] + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__getzz"); + __Pyx_AddTraceback("tpm.M3.__getzz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -16338,7 +24478,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_18__getzz(PyObject *__pyx_v_self, CYTH return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":920 +/* "src/tpm_vec.pxi":920 * return self._m3.m[2][2] * * def __setzz(self, double zz): # <<<<<<<<<<<<<< @@ -16346,37 +24486,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_18__getzz(PyObject *__pyx_v_self, CYTH * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_19__setzz(PyObject *__pyx_v_self, PyObject *__pyx_arg_zz); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_19__setzz(PyObject *__pyx_v_self, PyObject *__pyx_arg_zz) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_39__setzz(PyObject *__pyx_v_self, PyObject *__pyx_arg_zz); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_39__setzz(PyObject *__pyx_v_self, PyObject *__pyx_arg_zz) { double __pyx_v_zz; - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setzz"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzz (wrapper)", 0); assert(__pyx_arg_zz); { - __pyx_v_zz = __pyx_PyFloat_AsDouble(__pyx_arg_zz); if (unlikely((__pyx_v_zz == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 920; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_zz = __pyx_PyFloat_AsDouble(__pyx_arg_zz); if (unlikely((__pyx_v_zz == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 920, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__setzz"); + __Pyx_AddTraceback("tpm.M3.__setzz", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_2M3_38__setzz(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_zz)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_38__setzz(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_zz) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setzz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":921 + /* "src/tpm_vec.pxi":921 * * def __setzz(self, double zz): * self._m3.m[2][2] = zz # <<<<<<<<<<<<<< * * zz = property(__getzz, __setzz, doc="ZZ.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3.m[2])[2]) = __pyx_v_zz; + ((__pyx_v_self->_m3.m[2])[2]) = __pyx_v_zz; + + /* "src/tpm_vec.pxi":920 + * return self._m3.m[2][2] + * + * def __setzz(self, double zz): # <<<<<<<<<<<<<< + * self._m3.m[2][2] = zz + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":925 +/* "src/tpm_vec.pxi":925 * zz = property(__getzz, __setzz, doc="ZZ.") * * cdef tpm_vec.M3 getM3(self): # <<<<<<<<<<<<<< @@ -16384,11 +24549,12 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_19__setzz(PyObject *__pyx_v_self, PyOb * */ -static M3 __pyx_f_5pytpm_3tpm_2M3_getM3(struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_self) { +static M3 __pyx_f_3tpm_2M3_getM3(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { M3 __pyx_r; - __Pyx_RefNannySetupContext("getM3"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getM3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":926 + /* "src/tpm_vec.pxi":926 * * cdef tpm_vec.M3 getM3(self): * return self._m3 # <<<<<<<<<<<<<< @@ -16398,12 +24564,21 @@ static M3 __pyx_f_5pytpm_3tpm_2M3_getM3(struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_ __pyx_r = __pyx_v_self->_m3; goto __pyx_L0; + /* "src/tpm_vec.pxi":925 + * zz = property(__getzz, __setzz, doc="ZZ.") + * + * cdef tpm_vec.M3 getM3(self): # <<<<<<<<<<<<<< + * return self._m3 + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":928 +/* "src/tpm_vec.pxi":928 * return self._m3 * * cdef setM3(self, tpm_vec.M3 m3): # <<<<<<<<<<<<<< @@ -16411,11 +24586,12 @@ static M3 __pyx_f_5pytpm_3tpm_2M3_getM3(struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_ * */ -static PyObject *__pyx_f_5pytpm_3tpm_2M3_setM3(struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_self, M3 __pyx_v_m3) { +static PyObject *__pyx_f_3tpm_2M3_setM3(struct __pyx_obj_3tpm_M3 *__pyx_v_self, M3 __pyx_v_m3) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setM3"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setM3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":929 + /* "src/tpm_vec.pxi":929 * * cdef setM3(self, tpm_vec.M3 m3): * self._m3 = m3 # <<<<<<<<<<<<<< @@ -16424,13 +24600,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2M3_setM3(struct __pyx_obj_5pytpm_3tpm_M3 */ __pyx_v_self->_m3 = __pyx_v_m3; + /* "src/tpm_vec.pxi":928 + * return self._m3 + * + * cdef setM3(self, tpm_vec.M3 m3): # <<<<<<<<<<<<<< + * self._m3 = m3 + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":931 +/* "src/tpm_vec.pxi":931 * self._m3 = m3 * * def __str__(self): # <<<<<<<<<<<<<< @@ -16438,14 +24623,30 @@ static PyObject *__pyx_f_5pytpm_3tpm_2M3_setM3(struct __pyx_obj_5pytpm_3tpm_M3 * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_20__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_20__str__(PyObject *__pyx_v_self) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_41__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_41__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_40__str__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_40__str__(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":932 + /* "src/tpm_vec.pxi":932 * * def __str__(self): * return tpm_vec.m3fmt(self._m3).decode("utf-8") # <<<<<<<<<<<<<< @@ -16453,19 +24654,26 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_20__str__(PyObject *__pyx_v_self) { * def __sub__(M3 self, M3 other): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = m3fmt(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->_m3); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 932; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_1 = m3fmt(__pyx_v_self->_m3); + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 932, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":931 + * self._m3 = m3 + * + * def __str__(self): # <<<<<<<<<<<<<< + * return tpm_vec.m3fmt(self._m3).decode("utf-8") + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.M3.__str__"); + __Pyx_AddTraceback("tpm.M3.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -16473,7 +24681,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_20__str__(PyObject *__pyx_v_self) { return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":934 +/* "src/tpm_vec.pxi":934 * return tpm_vec.m3fmt(self._m3).decode("utf-8") * * def __sub__(M3 self, M3 other): # <<<<<<<<<<<<<< @@ -16481,41 +24689,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_20__str__(PyObject *__pyx_v_self) { * # check on self. */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_21__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_21__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_43__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_43__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_M3, 1, "self", 0))) __PYX_ERR(1, 934, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_M3, 1, "other", 0))) __PYX_ERR(1, 934, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M3_42__sub__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_42__sub__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_other) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_M3, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_M3, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":937 + /* "src/tpm_vec.pxi":937 * # Cython doesn't distinguish between sub and rsub. Hence type * # check on self. * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3diff(self.getM3(), other.getM3())) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 937, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":938 + /* "src/tpm_vec.pxi":938 * # check on self. * m3 = M3() * m3.setM3(tpm_vec.m3diff(self.getM3(), other.getM3())) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3diff(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_other)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 938; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3diff(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_other->__pyx_vtab)->getM3(__pyx_v_other))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 938, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":939 + /* "src/tpm_vec.pxi":939 * m3 = M3() * m3.setM3(tpm_vec.m3diff(self.getM3(), other.getM3())) * return m3 # <<<<<<<<<<<<<< @@ -16527,20 +24756,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_21__sub__(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__sub__"); - __pyx_r = NULL; + /* "src/tpm_vec.pxi":934 + * return tpm_vec.m3fmt(self._m3).decode("utf-8") + * + * def __sub__(M3 self, M3 other): # <<<<<<<<<<<<<< + * # Cython doesn't distinguish between sub and rsub. Hence type + * # check on self. + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.M3.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":941 +/* "src/tpm_vec.pxi":941 * return m3 * * def __add__(M3 self, M3 other): # <<<<<<<<<<<<<< @@ -16548,41 +24784,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_21__sub__(PyObject *__pyx_v_self, PyOb * # check on self. */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_22__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_22__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_45__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_45__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_M3, 1, "self", 0))) __PYX_ERR(1, 941, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_M3, 1, "other", 0))) __PYX_ERR(1, 941, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M3_44__add__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_44__add__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_other) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_M3, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 941; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_M3, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 941; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":944 + /* "src/tpm_vec.pxi":944 * # Cython doesn't distinguish between add and radd. Hence type * # check on self. * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3sum(self.getM3(), other.getM3())) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 944; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":945 + /* "src/tpm_vec.pxi":945 * # check on self. * m3 = M3() * m3.setM3(tpm_vec.m3sum(self.getM3(), other.getM3())) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3sum(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_other)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 945; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3sum(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_other->__pyx_vtab)->getM3(__pyx_v_other))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":946 + /* "src/tpm_vec.pxi":946 * m3 = M3() * m3.setM3(tpm_vec.m3sum(self.getM3(), other.getM3())) * return m3 # <<<<<<<<<<<<<< @@ -16594,20 +24851,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_22__add__(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":941 + * return m3 + * + * def __add__(M3 self, M3 other): # <<<<<<<<<<<<<< + * # Cython doesn't distinguish between add and radd. Hence type + * # check on self. + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__add__"); + __Pyx_AddTraceback("tpm.M3.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":948 +/* "src/tpm_vec.pxi":948 * return m3 * * def __mul__(M3 self, double x): # <<<<<<<<<<<<<< @@ -16615,50 +24879,71 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_22__add__(PyObject *__pyx_v_self, PyOb * # check on self. */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_23__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_23__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_47__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_47__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x) { double __pyx_v_x; - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__mul__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__mul__ (wrapper)", 0); assert(__pyx_arg_x); { - __pyx_v_x = __pyx_PyFloat_AsDouble(__pyx_arg_x); if (unlikely((__pyx_v_x == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 948; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_x = __pyx_PyFloat_AsDouble(__pyx_arg_x); if (unlikely((__pyx_v_x == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 948, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M3.__mul__"); + __Pyx_AddTraceback("tpm.M3.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_M3, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 948; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_M3, 1, "self", 0))) __PYX_ERR(1, 948, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M3_46__mul__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((double)__pyx_v_x)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_46__mul__(struct __pyx_obj_3tpm_M3 *__pyx_v_self, double __pyx_v_x) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__mul__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":951 + /* "src/tpm_vec.pxi":951 * # Cython doesn't distinguish between mul and rmul. Hence type * # check on self. * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3scale(self.getM3(), x)) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 951; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 951, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":952 + /* "src/tpm_vec.pxi":952 * # check on self. * m3 = M3() * m3.setM3(tpm_vec.m3scale(self.getM3(), x)) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3scale(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)), __pyx_v_x)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 952; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3scale(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self), __pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 952, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":953 + /* "src/tpm_vec.pxi":953 * m3 = M3() * m3.setM3(tpm_vec.m3scale(self.getM3(), x)) * return m3 # <<<<<<<<<<<<<< @@ -16670,20 +24955,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_23__mul__(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":948 + * return m3 + * + * def __mul__(M3 self, double x): # <<<<<<<<<<<<<< + * # Cython doesn't distinguish between mul and rmul. Hence type + * # check on self. + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.__mul__"); + __Pyx_AddTraceback("tpm.M3.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":955 +/* "src/tpm_vec.pxi":955 * return m3 * * def inv(self): # <<<<<<<<<<<<<< @@ -16691,40 +24983,54 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_23__mul__(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_24inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M3_24inv[] = "Inverse of the matrix.\n\n Returns\n -------\n m3 : tpm.M3\n Inverse matrix.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_24inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_49inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_2M3_48inv[] = "Inverse of the matrix.\n\n Returns\n -------\n m3 : tpm.M3\n Inverse matrix.\n\n "; +static PyObject *__pyx_pw_3tpm_2M3_49inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("inv (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_48inv(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_48inv(struct __pyx_obj_3tpm_M3 *__pyx_v_self) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("inv"); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("inv", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":964 + /* "src/tpm_vec.pxi":964 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3inv(self.getM3())) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 964; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 964, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":965 + /* "src/tpm_vec.pxi":965 * """ * m3 = M3() * m3.setM3(tpm_vec.m3inv(self.getM3())) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3inv(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 965; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3inv(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 965, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":966 + /* "src/tpm_vec.pxi":966 * m3 = M3() * m3.setM3(tpm_vec.m3inv(self.getM3())) * return m3 # <<<<<<<<<<<<<< @@ -16736,20 +25042,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_24inv(PyObject *__pyx_v_self, CYTHON_U __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":955 + * return m3 + * + * def inv(self): # <<<<<<<<<<<<<< + * """Inverse of the matrix. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.inv"); + __Pyx_AddTraceback("tpm.M3.inv", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":968 +/* "src/tpm_vec.pxi":968 * return m3 * * def m3m3(self, M3 other): # <<<<<<<<<<<<<< @@ -16757,41 +25070,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_24inv(PyObject *__pyx_v_self, CYTHON_U * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_25m3m3(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M3_25m3m3[] = "Product of 2 matrices.\n\n Returns\n -------\n m3 : tpm.M3\n Product.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_25m3m3(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_51m3m3(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static char __pyx_doc_3tpm_2M3_50m3m3[] = "Product of 2 matrices.\n\n Returns\n -------\n m3 : tpm.M3\n Product.\n\n "; +static PyObject *__pyx_pw_3tpm_2M3_51m3m3(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3m3 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_M3, 1, "other", 0))) __PYX_ERR(1, 968, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M3_50m3m3(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_50m3m3(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_other) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("m3m3"); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_M3, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 968; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3m3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":977 + /* "src/tpm_vec.pxi":977 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3m3(self.getM3(), other.getM3())) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 977; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 977, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":978 + /* "src/tpm_vec.pxi":978 * """ * m3 = M3() * m3.setM3(tpm_vec.m3m3(self.getM3(), other.getM3())) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3m3(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_other)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 978; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3m3(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_other->__pyx_vtab)->getM3(__pyx_v_other))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":979 + /* "src/tpm_vec.pxi":979 * m3 = M3() * m3.setM3(tpm_vec.m3m3(self.getM3(), other.getM3())) * return m3 # <<<<<<<<<<<<<< @@ -16803,20 +25137,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_25m3m3(PyObject *__pyx_v_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":968 + * return m3 + * + * def m3m3(self, M3 other): # <<<<<<<<<<<<<< + * """Product of 2 matrices. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.m3m3"); + __Pyx_AddTraceback("tpm.M3.m3m3", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":981 +/* "src/tpm_vec.pxi":981 * return m3 * * def m3v3(self, V3CP v3): # <<<<<<<<<<<<<< @@ -16824,41 +25165,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_25m3m3(PyObject *__pyx_v_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_26m3v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M3_26m3v3[] = "Product of an M3 matrix and a V3CP vector.\n\n Returns\n -------\n v : tpm.V3CP\n Product of matrix with Cartesian vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_26m3v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_53m3v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3); /*proto*/ +static char __pyx_doc_3tpm_2M3_52m3v3[] = "Product of an M3 matrix and a V3CP vector.\n\n Returns\n -------\n v : tpm.V3CP\n Product of matrix with Cartesian vector.\n\n "; +static PyObject *__pyx_pw_3tpm_2M3_53m3v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3v3 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v3), __pyx_ptype_3tpm_V3CP, 1, "v3", 0))) __PYX_ERR(1, 981, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M3_52m3v3(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_v3)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_52m3v3(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_v3) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("m3v3"); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v3), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "v3", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3v3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":990 + /* "src/tpm_vec.pxi":990 * * """ * v = V3CP() # <<<<<<<<<<<<<< * v.setV3(tpm_vec.m3v3(self.getM3(), v3.getV3())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 990, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":991 + /* "src/tpm_vec.pxi":991 * """ * v = V3CP() * v.setV3(tpm_vec.m3v3(self.getM3(), v3.getV3())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v), m3v3(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_v3)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 991; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v), m3v3(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 991, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":992 + /* "src/tpm_vec.pxi":992 * v = V3CP() * v.setV3(tpm_vec.m3v3(self.getM3(), v3.getV3())) * return v # <<<<<<<<<<<<<< @@ -16870,20 +25232,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_26m3v3(PyObject *__pyx_v_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":981 + * return m3 + * + * def m3v3(self, V3CP v3): # <<<<<<<<<<<<<< + * """Product of an M3 matrix and a V3CP vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.m3v3"); + __Pyx_AddTraceback("tpm.M3.m3v3", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":994 +/* "src/tpm_vec.pxi":994 * return v * * def m3v6(self, V6C v6): # <<<<<<<<<<<<<< @@ -16891,41 +25260,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_26m3v3(PyObject *__pyx_v_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_27m3v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M3_27m3v6[] = "Product of M3 matrix and V6C vector.\n\n Both position and velocity components are multiplied by M3.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with position set to that obtained by\n multipying this matrix and the position component of the\n given vector, and the velocity set to that obtained by\n multiplying this matrix and the velocity component of the\n given vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M3_27m3v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_55m3v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6); /*proto*/ +static char __pyx_doc_3tpm_2M3_54m3v6[] = "Product of M3 matrix and V6C vector.\n\n Both position and velocity components are multiplied by M3.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with position set to that obtained by\n multipying this matrix and the position component of the\n given vector, and the velocity set to that obtained by\n multiplying this matrix and the velocity component of the\n given vector.\n\n "; +static PyObject *__pyx_pw_3tpm_2M3_55m3v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3v6 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(1, 994, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M3_54m3v6(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_54m3v6(struct __pyx_obj_3tpm_M3 *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("m3v6"); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 994; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3v6", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1009 + /* "src/tpm_vec.pxi":1009 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_vec.m3v6(self.getM3(), v6.getV6())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1009; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1010 + /* "src/tpm_vec.pxi":1010 * """ * v = V6C() * v.setV6(tpm_vec.m3v6(self.getM3(), v6.getV6())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), m3v6(((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1010; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), m3v6(((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_self->__pyx_vtab)->getM3(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1010, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1011 + /* "src/tpm_vec.pxi":1011 * v = V6C() * v.setV6(tpm_vec.m3v6(self.getM3(), v6.getV6())) * return v # <<<<<<<<<<<<<< @@ -16937,20 +25327,140 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_27m3v6(PyObject *__pyx_v_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":994 + * return v + * + * def m3v6(self, V6C v6): # <<<<<<<<<<<<<< + * """Product of M3 matrix and V6C vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M3.m3v6"); + __Pyx_AddTraceback("tpm.M3.m3v6", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_57__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_57__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_56__reduce_cython__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_56__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M3 *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__23, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.M3.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M3_59__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M3_59__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M3_58__setstate_cython__(((struct __pyx_obj_3tpm_M3 *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M3_58__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M3 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.M3.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1033 +/* "src/tpm_vec.pxi":1033 * cdef tpm_vec.M6 _m6 * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -16958,29 +25468,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M3_27m3v6(PyObject *__pyx_v_self, PyObjec * */ -static int __pyx_pf_5pytpm_3tpm_2M6___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2M6___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2M6_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2M6_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_2M6___cinit__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2M6___cinit__(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1034 + /* "src/tpm_vec.pxi":1034 * * def __cinit__(self): * self._m6 = tpm_vec.m6I(1.0) # <<<<<<<<<<<<<< * * def __init__(self): */ - ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6 = m6I(1.0); + __pyx_v_self->_m6 = m6I(1.0); + + /* "src/tpm_vec.pxi":1033 + * cdef tpm_vec.M6 _m6 + * + * def __cinit__(self): # <<<<<<<<<<<<<< + * self._m6 = tpm_vec.m6I(1.0) + * + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1036 +/* "src/tpm_vec.pxi":1036 * self._m6 = tpm_vec.m6I(1.0) * * def __init__(self): # <<<<<<<<<<<<<< @@ -16988,29 +25520,51 @@ static int __pyx_pf_5pytpm_3tpm_2M6___cinit__(PyObject *__pyx_v_self, PyObject * * */ -static int __pyx_pf_5pytpm_3tpm_2M6_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_2M6_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_2M6_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_2M6_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - __Pyx_RefNannySetupContext("__init__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_2M6_2__init__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_2M6_2__init__(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1037 + /* "src/tpm_vec.pxi":1037 * * def __init__(self): * self._m6 = tpm_vec.m6I(1.0) # <<<<<<<<<<<<<< * * cdef tpm_vec.M6 getM6(self): */ - ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6 = m6I(1.0); + __pyx_v_self->_m6 = m6I(1.0); + + /* "src/tpm_vec.pxi":1036 + * self._m6 = tpm_vec.m6I(1.0) + * + * def __init__(self): # <<<<<<<<<<<<<< + * self._m6 = tpm_vec.m6I(1.0) + * + */ + /* function exit code */ __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1039 +/* "src/tpm_vec.pxi":1039 * self._m6 = tpm_vec.m6I(1.0) * * cdef tpm_vec.M6 getM6(self): # <<<<<<<<<<<<<< @@ -17018,11 +25572,12 @@ static int __pyx_pf_5pytpm_3tpm_2M6_1__init__(PyObject *__pyx_v_self, PyObject * * */ -static M6 __pyx_f_5pytpm_3tpm_2M6_getM6(struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_self) { +static M6 __pyx_f_3tpm_2M6_getM6(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { M6 __pyx_r; - __Pyx_RefNannySetupContext("getM6"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("getM6", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1040 + /* "src/tpm_vec.pxi":1040 * * cdef tpm_vec.M6 getM6(self): * return self._m6 # <<<<<<<<<<<<<< @@ -17032,12 +25587,21 @@ static M6 __pyx_f_5pytpm_3tpm_2M6_getM6(struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_ __pyx_r = __pyx_v_self->_m6; goto __pyx_L0; + /* "src/tpm_vec.pxi":1039 + * self._m6 = tpm_vec.m6I(1.0) + * + * cdef tpm_vec.M6 getM6(self): # <<<<<<<<<<<<<< + * return self._m6 + * + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1042 +/* "src/tpm_vec.pxi":1042 * return self._m6 * * cdef setM6(self, tpm_vec.M6 m6): # <<<<<<<<<<<<<< @@ -17045,11 +25609,12 @@ static M6 __pyx_f_5pytpm_3tpm_2M6_getM6(struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_ * */ -static PyObject *__pyx_f_5pytpm_3tpm_2M6_setM6(struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_self, M6 __pyx_v_m6) { +static PyObject *__pyx_f_3tpm_2M6_setM6(struct __pyx_obj_3tpm_M6 *__pyx_v_self, M6 __pyx_v_m6) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("setM6"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("setM6", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1043 + /* "src/tpm_vec.pxi":1043 * * cdef setM6(self, tpm_vec.M6 m6): * self._m6 = m6 # <<<<<<<<<<<<<< @@ -17058,13 +25623,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_2M6_setM6(struct __pyx_obj_5pytpm_3tpm_M6 */ __pyx_v_self->_m6 = __pyx_v_m6; + /* "src/tpm_vec.pxi":1042 + * return self._m6 + * + * cdef setM6(self, tpm_vec.M6 m6): # <<<<<<<<<<<<<< + * self._m6 = m6 + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1045 +/* "src/tpm_vec.pxi":1045 * self._m6 = m6 * * def __getPP(self): # <<<<<<<<<<<<<< @@ -17072,39 +25646,53 @@ static PyObject *__pyx_f_5pytpm_3tpm_2M6_setM6(struct __pyx_obj_5pytpm_3tpm_M6 * pp.setM3(self._m6.m[0][0]) */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_2__getPP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_2__getPP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_pp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_5__getPP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_5__getPP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getPP (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_4__getPP(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_4__getPP(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + struct __pyx_obj_3tpm_M3 *__pyx_v_pp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getPP"); - __pyx_v_pp = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getPP", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1046 + /* "src/tpm_vec.pxi":1046 * * def __getPP(self): * pp = M3() # <<<<<<<<<<<<<< * pp.setM3(self._m6.m[0][0]) * return pp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1046; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1046, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_pp)); - __pyx_v_pp = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_pp = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1047 + /* "src/tpm_vec.pxi":1047 * def __getPP(self): * pp = M3() * pp.setM3(self._m6.m[0][0]) # <<<<<<<<<<<<<< * return pp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_pp->__pyx_vtab)->setM3(__pyx_v_pp, ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[0])[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1047; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_pp->__pyx_vtab)->setM3(__pyx_v_pp, ((__pyx_v_self->_m6.m[0])[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1048 + /* "src/tpm_vec.pxi":1048 * pp = M3() * pp.setM3(self._m6.m[0][0]) * return pp # <<<<<<<<<<<<<< @@ -17116,20 +25704,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_2__getPP(PyObject *__pyx_v_self, CYTHO __pyx_r = ((PyObject *)__pyx_v_pp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1045 + * self._m6 = m6 + * + * def __getPP(self): # <<<<<<<<<<<<<< + * pp = M3() + * pp.setM3(self._m6.m[0][0]) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__getPP"); + __Pyx_AddTraceback("tpm.M6.__getPP", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_pp); + __Pyx_XDECREF((PyObject *)__pyx_v_pp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1050 +/* "src/tpm_vec.pxi":1050 * return pp * * def __setPP(self, M3 m3): # <<<<<<<<<<<<<< @@ -17137,33 +25732,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_2__getPP(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_3__setPP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_3__setPP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_7__setPP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_7__setPP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setPP (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_3tpm_M3, 1, "m3", 0))) __PYX_ERR(1, 1050, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_6__setPP(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_m3)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_6__setPP(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setPP"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_5pytpm_3tpm_M3, 1, "m3", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1050; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setPP", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1051 + /* "src/tpm_vec.pxi":1051 * * def __setPP(self, M3 m3): * self._m6.m[0][0] = m3.getM3() # <<<<<<<<<<<<<< * * pp = property(__getPP, __setPP, doc="PP component.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[0])[0]) = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)); + ((__pyx_v_self->_m6.m[0])[0]) = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->getM3(__pyx_v_m3); + + /* "src/tpm_vec.pxi":1050 + * return pp + * + * def __setPP(self, M3 m3): # <<<<<<<<<<<<<< + * self._m6.m[0][0] = m3.getM3() + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.M6.__setPP"); - __pyx_r = NULL; - __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1055 +/* "src/tpm_vec.pxi":1055 * pp = property(__getPP, __setPP, doc="PP component.") * * def __getPV(self): # <<<<<<<<<<<<<< @@ -17171,39 +25790,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_3__setPP(PyObject *__pyx_v_self, PyObj * pv.setM3(self._m6.m[0][1]) */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_4__getPV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_4__getPV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_pv; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_9__getPV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_9__getPV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getPV (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_8__getPV(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_8__getPV(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + struct __pyx_obj_3tpm_M3 *__pyx_v_pv = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getPV"); - __pyx_v_pv = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getPV", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1056 + /* "src/tpm_vec.pxi":1056 * * def __getPV(self): * pv = M3() # <<<<<<<<<<<<<< * pv.setM3(self._m6.m[0][1]) * return pv */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1056, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_pv)); - __pyx_v_pv = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_pv = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1057 + /* "src/tpm_vec.pxi":1057 * def __getPV(self): * pv = M3() * pv.setM3(self._m6.m[0][1]) # <<<<<<<<<<<<<< * return pv * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_pv->__pyx_vtab)->setM3(__pyx_v_pv, ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[0])[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1057; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_pv->__pyx_vtab)->setM3(__pyx_v_pv, ((__pyx_v_self->_m6.m[0])[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1057, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1058 + /* "src/tpm_vec.pxi":1058 * pv = M3() * pv.setM3(self._m6.m[0][1]) * return pv # <<<<<<<<<<<<<< @@ -17215,20 +25848,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_4__getPV(PyObject *__pyx_v_self, CYTHO __pyx_r = ((PyObject *)__pyx_v_pv); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1055 + * pp = property(__getPP, __setPP, doc="PP component.") + * + * def __getPV(self): # <<<<<<<<<<<<<< + * pv = M3() + * pv.setM3(self._m6.m[0][1]) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__getPV"); + __Pyx_AddTraceback("tpm.M6.__getPV", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_pv); + __Pyx_XDECREF((PyObject *)__pyx_v_pv); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1060 +/* "src/tpm_vec.pxi":1060 * return pv * * def __setPV(self, M3 m3): # <<<<<<<<<<<<<< @@ -17236,33 +25876,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_4__getPV(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_5__setPV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_5__setPV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setPV"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_5pytpm_3tpm_M3, 1, "m3", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1060; __pyx_clineno = __LINE__; goto __pyx_L1_error;} +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_11__setPV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_11__setPV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setPV (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_3tpm_M3, 1, "m3", 0))) __PYX_ERR(1, 1060, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_10__setPV(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_m3)); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1061 - * + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_10__setPV(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setPV", 0); + + /* "src/tpm_vec.pxi":1061 + * * def __setPV(self, M3 m3): * self._m6.m[0][1] = m3.getM3() # <<<<<<<<<<<<<< * * pv = property(__getPV, __setPV, doc="PV component.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[0])[1]) = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)); + ((__pyx_v_self->_m6.m[0])[1]) = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->getM3(__pyx_v_m3); + + /* "src/tpm_vec.pxi":1060 + * return pv + * + * def __setPV(self, M3 m3): # <<<<<<<<<<<<<< + * self._m6.m[0][1] = m3.getM3() + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.M6.__setPV"); - __pyx_r = NULL; - __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1065 +/* "src/tpm_vec.pxi":1065 * pv = property(__getPV, __setPV, doc="PV component.") * * def __getVP(self): # <<<<<<<<<<<<<< @@ -17270,39 +25934,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_5__setPV(PyObject *__pyx_v_self, PyObj * vp.setM3(self._m6.m[1][0]) */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_6__getVP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_6__getVP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_vp; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_13__getVP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_13__getVP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getVP (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_12__getVP(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_12__getVP(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + struct __pyx_obj_3tpm_M3 *__pyx_v_vp = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getVP"); - __pyx_v_vp = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getVP", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1066 + /* "src/tpm_vec.pxi":1066 * * def __getVP(self): * vp = M3() # <<<<<<<<<<<<<< * vp.setM3(self._m6.m[1][0]) * return vp */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1066; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_vp)); - __pyx_v_vp = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_vp = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1067 + /* "src/tpm_vec.pxi":1067 * def __getVP(self): * vp = M3() * vp.setM3(self._m6.m[1][0]) # <<<<<<<<<<<<<< * return vp * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_vp->__pyx_vtab)->setM3(__pyx_v_vp, ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[1])[0])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1067; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_vp->__pyx_vtab)->setM3(__pyx_v_vp, ((__pyx_v_self->_m6.m[1])[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1067, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1068 + /* "src/tpm_vec.pxi":1068 * vp = M3() * vp.setM3(self._m6.m[1][0]) * return vp # <<<<<<<<<<<<<< @@ -17314,20 +25992,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_6__getVP(PyObject *__pyx_v_self, CYTHO __pyx_r = ((PyObject *)__pyx_v_vp); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1065 + * pv = property(__getPV, __setPV, doc="PV component.") + * + * def __getVP(self): # <<<<<<<<<<<<<< + * vp = M3() + * vp.setM3(self._m6.m[1][0]) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__getVP"); + __Pyx_AddTraceback("tpm.M6.__getVP", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_vp); + __Pyx_XDECREF((PyObject *)__pyx_v_vp); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1070 +/* "src/tpm_vec.pxi":1070 * return vp * * def __setVP(self, M3 m3): # <<<<<<<<<<<<<< @@ -17335,33 +26020,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_6__getVP(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_7__setVP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_7__setVP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_15__setVP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_15__setVP(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setVP (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_3tpm_M3, 1, "m3", 0))) __PYX_ERR(1, 1070, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_14__setVP(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_m3)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_14__setVP(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setVP"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_5pytpm_3tpm_M3, 1, "m3", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1070; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setVP", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1071 + /* "src/tpm_vec.pxi":1071 * * def __setVP(self, M3 m3): * self._m6.m[1][0] = m3.getM3() # <<<<<<<<<<<<<< * * vp = property(__getVP, __setVP, doc="VP component.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[1])[0]) = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)); + ((__pyx_v_self->_m6.m[1])[0]) = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->getM3(__pyx_v_m3); + + /* "src/tpm_vec.pxi":1070 + * return vp + * + * def __setVP(self, M3 m3): # <<<<<<<<<<<<<< + * self._m6.m[1][0] = m3.getM3() + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.M6.__setVP"); - __pyx_r = NULL; - __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1075 +/* "src/tpm_vec.pxi":1075 * vp = property(__getVP, __setVP, doc="VP component.") * * def __getVV(self): # <<<<<<<<<<<<<< @@ -17369,39 +26078,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_7__setVP(PyObject *__pyx_v_self, PyObj * vv.setM3(self._m6.m[1][1]) */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_8__getVV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_8__getVV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_vv; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_17__getVV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_17__getVV(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getVV (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_16__getVV(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_16__getVV(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + struct __pyx_obj_3tpm_M3 *__pyx_v_vv = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getVV"); - __pyx_v_vv = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getVV", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1076 + /* "src/tpm_vec.pxi":1076 * * def __getVV(self): * vv = M3() # <<<<<<<<<<<<<< * vv.setM3(self._m6.m[1][1]) * return vv */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1076; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1076, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_vv)); - __pyx_v_vv = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_vv = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1077 + /* "src/tpm_vec.pxi":1077 * def __getVV(self): * vv = M3() * vv.setM3(self._m6.m[1][1]) # <<<<<<<<<<<<<< * return vv * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_vv->__pyx_vtab)->setM3(__pyx_v_vv, ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[1])[1])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1077; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_vv->__pyx_vtab)->setM3(__pyx_v_vv, ((__pyx_v_self->_m6.m[1])[1])); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1077, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1078 + /* "src/tpm_vec.pxi":1078 * vv = M3() * vv.setM3(self._m6.m[1][1]) * return vv # <<<<<<<<<<<<<< @@ -17413,20 +26136,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_8__getVV(PyObject *__pyx_v_self, CYTHO __pyx_r = ((PyObject *)__pyx_v_vv); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1075 + * vp = property(__getVP, __setVP, doc="VP component.") + * + * def __getVV(self): # <<<<<<<<<<<<<< + * vv = M3() + * vv.setM3(self._m6.m[1][1]) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__getVV"); + __Pyx_AddTraceback("tpm.M6.__getVV", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_vv); + __Pyx_XDECREF((PyObject *)__pyx_v_vv); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1080 +/* "src/tpm_vec.pxi":1080 * return vv * * def __setVV(self, M3 m3): # <<<<<<<<<<<<<< @@ -17434,33 +26164,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_8__getVV(PyObject *__pyx_v_self, CYTHO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_9__setVV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_9__setVV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_19__setVV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_19__setVV(PyObject *__pyx_v_self, PyObject *__pyx_v_m3) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setVV (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_3tpm_M3, 1, "m3", 0))) __PYX_ERR(1, 1080, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_18__setVV(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M3 *)__pyx_v_m3)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_18__setVV(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M3 *__pyx_v_m3) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__setVV"); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_m3), __pyx_ptype_5pytpm_3tpm_M3, 1, "m3", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setVV", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1081 + /* "src/tpm_vec.pxi":1081 * * def __setVV(self, M3 m3): * self._m6.m[1][1] = m3.getM3() # <<<<<<<<<<<<<< * * vv = property(__getVV, __setVV, doc="VV component.") */ - ((((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6.m[1])[1]) = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)->__pyx_vtab)->getM3(((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_v_m3)); + ((__pyx_v_self->_m6.m[1])[1]) = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->getM3(__pyx_v_m3); + + /* "src/tpm_vec.pxi":1080 + * return vv + * + * def __setVV(self, M3 m3): # <<<<<<<<<<<<<< + * self._m6.m[1][1] = m3.getM3() + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.M6.__setVV"); - __pyx_r = NULL; - __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1085 +/* "src/tpm_vec.pxi":1085 * vv = property(__getVV, __setVV, doc="VV component.") * * def __add__(M6 self, M6 other): # <<<<<<<<<<<<<< @@ -17468,41 +26222,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_9__setVV(PyObject *__pyx_v_self, PyObj * # check on self. */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_10__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_10__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_21__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_21__add__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__add__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_M6, 1, "self", 0))) __PYX_ERR(1, 1085, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_M6, 1, "other", 0))) __PYX_ERR(1, 1085, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_20__add__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M6 *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_20__add__(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M6 *__pyx_v_other) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__add__"); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_M6, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_M6, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__add__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1088 + /* "src/tpm_vec.pxi":1088 * # Cython doesn't distinguish between add and radd. Hence type * # check on self. * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_vec.m6sum(self.getM6(), other.getM6())) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1088, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1089 + /* "src/tpm_vec.pxi":1089 * # check on self. * m6 = M6() * m6.setM6(tpm_vec.m6sum(self.getM6(), other.getM6())) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6sum(((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_other)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1089; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6sum(((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_self->__pyx_vtab)->getM6(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_other->__pyx_vtab)->getM6(__pyx_v_other))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1090 + /* "src/tpm_vec.pxi":1090 * m6 = M6() * m6.setM6(tpm_vec.m6sum(self.getM6(), other.getM6())) * return m6 # <<<<<<<<<<<<<< @@ -17514,20 +26289,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_10__add__(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1085 + * vv = property(__getVV, __setVV, doc="VV component.") + * + * def __add__(M6 self, M6 other): # <<<<<<<<<<<<<< + * # Cython doesn't distinguish between add and radd. Hence type + * # check on self. + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__add__"); + __Pyx_AddTraceback("tpm.M6.__add__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1092 +/* "src/tpm_vec.pxi":1092 * return m6 * * def __sub__(M6 self, M6 other): # <<<<<<<<<<<<<< @@ -17535,41 +26317,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_10__add__(PyObject *__pyx_v_self, PyOb * m6 = M6() */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_11__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_11__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_23__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_23__sub__(PyObject *__pyx_v_self, PyObject *__pyx_v_other) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__sub__ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_M6, 1, "self", 0))) __PYX_ERR(1, 1092, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_3tpm_M6, 1, "other", 0))) __PYX_ERR(1, 1092, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_22__sub__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_M6 *)__pyx_v_other)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_22__sub__(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_M6 *__pyx_v_other) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__sub__"); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_M6, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_ptype_5pytpm_3tpm_M6, 1, "other", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__sub__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1094 + /* "src/tpm_vec.pxi":1094 * def __sub__(M6 self, M6 other): * # Cython does not differentiate sub and rsub; hence typecheck. * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_vec.m6diff(self.getM6(), other.getM6())) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1094; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1094, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1095 + /* "src/tpm_vec.pxi":1095 * # Cython does not differentiate sub and rsub; hence typecheck. * m6 = M6() * m6.setM6(tpm_vec.m6diff(self.getM6(), other.getM6())) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6diff(((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_other)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_other)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1095; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6diff(((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_self->__pyx_vtab)->getM6(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_other->__pyx_vtab)->getM6(__pyx_v_other))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1095, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1096 + /* "src/tpm_vec.pxi":1096 * m6 = M6() * m6.setM6(tpm_vec.m6diff(self.getM6(), other.getM6())) * return m6 # <<<<<<<<<<<<<< @@ -17581,20 +26384,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_11__sub__(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1092 + * return m6 + * + * def __sub__(M6 self, M6 other): # <<<<<<<<<<<<<< + * # Cython does not differentiate sub and rsub; hence typecheck. + * m6 = M6() + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__sub__"); + __Pyx_AddTraceback("tpm.M6.__sub__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1098 +/* "src/tpm_vec.pxi":1098 * return m6 * * def __mul__(M6 self, double x): # <<<<<<<<<<<<<< @@ -17602,50 +26412,71 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_11__sub__(PyObject *__pyx_v_self, PyOb * # check on self. */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_12__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_12__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_25__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_25__mul__(PyObject *__pyx_v_self, PyObject *__pyx_arg_x) { double __pyx_v_x; - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__mul__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__mul__ (wrapper)", 0); assert(__pyx_arg_x); { - __pyx_v_x = __pyx_PyFloat_AsDouble(__pyx_arg_x); if (unlikely((__pyx_v_x == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1098; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_x = __pyx_PyFloat_AsDouble(__pyx_arg_x); if (unlikely((__pyx_v_x == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1098, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.M6.__mul__"); + __Pyx_AddTraceback("tpm.M6.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_5pytpm_3tpm_M6, 1, "self", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1098; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_self), __pyx_ptype_3tpm_M6, 1, "self", 0))) __PYX_ERR(1, 1098, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_24__mul__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((double)__pyx_v_x)); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1101 + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_24__mul__(struct __pyx_obj_3tpm_M6 *__pyx_v_self, double __pyx_v_x) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__mul__", 0); + + /* "src/tpm_vec.pxi":1101 * # Cython doesn't distinguish between mul and rmul. Hence type * # check on self. * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_vec.m6scale(self.getM6(), x)) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1102 + /* "src/tpm_vec.pxi":1102 * # check on self. * m6 = M6() * m6.setM6(tpm_vec.m6scale(self.getM6(), x)) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6scale(((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)), __pyx_v_x)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6scale(((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_self->__pyx_vtab)->getM6(__pyx_v_self), __pyx_v_x)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1103 + /* "src/tpm_vec.pxi":1103 * m6 = M6() * m6.setM6(tpm_vec.m6scale(self.getM6(), x)) * return m6 # <<<<<<<<<<<<<< @@ -17657,20 +26488,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_12__mul__(PyObject *__pyx_v_self, PyOb __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1098 + * return m6 + * + * def __mul__(M6 self, double x): # <<<<<<<<<<<<<< + * # Cython doesn't distinguish between mul and rmul. Hence type + * # check on self. + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.__mul__"); + __Pyx_AddTraceback("tpm.M6.__mul__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1105 +/* "src/tpm_vec.pxi":1105 * return m6 * * def __str__(self): # <<<<<<<<<<<<<< @@ -17678,14 +26516,30 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_12__mul__(PyObject *__pyx_v_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_13__str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_13__str__(PyObject *__pyx_v_self) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_27__str__(PyObject *__pyx_v_self); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_27__str__(PyObject *__pyx_v_self) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_26__str__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_26__str__(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations char *__pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("__str__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__str__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1106 + /* "src/tpm_vec.pxi":1106 * * def __str__(self): * return tpm_vec.m6fmt(self._m6).decode("utf-8") # <<<<<<<<<<<<<< @@ -17693,19 +26547,26 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_13__str__(PyObject *__pyx_v_self) { * def inv(self): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = m6fmt(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->_m6); - __pyx_t_2 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_1, strlen(__pyx_t_1), NULL)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_t_2)); - __pyx_r = ((PyObject *)__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; + __pyx_t_1 = m6fmt(__pyx_v_self->_m6); + __pyx_t_2 = __Pyx_decode_c_string(__pyx_t_1, 0, strlen(__pyx_t_1), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1106, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_2); + __pyx_r = __pyx_t_2; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1105 + * return m6 + * + * def __str__(self): # <<<<<<<<<<<<<< + * return tpm_vec.m6fmt(self._m6).decode("utf-8") + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.M6.__str__"); + __Pyx_AddTraceback("tpm.M6.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -17713,7 +26574,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_13__str__(PyObject *__pyx_v_self) { return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1108 +/* "src/tpm_vec.pxi":1108 * return tpm_vec.m6fmt(self._m6).decode("utf-8") * * def inv(self): # <<<<<<<<<<<<<< @@ -17721,40 +26582,54 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_13__str__(PyObject *__pyx_v_self) { * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_14inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M6_14inv[] = "Inverse of M6 matrix.\n\n Returns\n -------\n m : tpm.M6\n Inverse matrix.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_14inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_29inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static char __pyx_doc_3tpm_2M6_28inv[] = "Inverse of M6 matrix.\n\n Returns\n -------\n m : tpm.M6\n Inverse matrix.\n\n "; +static PyObject *__pyx_pw_3tpm_2M6_29inv(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("inv (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_28inv(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_28inv(struct __pyx_obj_3tpm_M6 *__pyx_v_self) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("inv"); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("inv", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1117 + /* "src/tpm_vec.pxi":1117 * * """ * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_vec.m6inv(self.getM6())) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1118 + /* "src/tpm_vec.pxi":1118 * """ * m6 = M6() * m6.setM6(tpm_vec.m6inv(self.getM6())) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6inv(((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6inv(((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_self->__pyx_vtab)->getM6(__pyx_v_self))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1119 + /* "src/tpm_vec.pxi":1119 * m6 = M6() * m6.setM6(tpm_vec.m6inv(self.getM6())) * return m6 # <<<<<<<<<<<<<< @@ -17766,20 +26641,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_14inv(PyObject *__pyx_v_self, CYTHON_U __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1108 + * return tpm_vec.m6fmt(self._m6).decode("utf-8") + * + * def inv(self): # <<<<<<<<<<<<<< + * """Inverse of M6 matrix. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.inv"); + __Pyx_AddTraceback("tpm.M6.inv", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1121 +/* "src/tpm_vec.pxi":1121 * return m6 * * def m6v3(self, V3CP v3): # <<<<<<<<<<<<<< @@ -17787,41 +26669,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_14inv(PyObject *__pyx_v_self, CYTHON_U * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_15m6v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M6_15m6v3[] = "Product of M6 matrix and V3CP vector.\n\n Returns\n -------\n v : tpm.V3CP\n Cartesian vector obtained by multiplying the PP component\n of this matrix with the given Cartesian vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_15m6v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3) { - struct __pyx_obj_5pytpm_3tpm_V3CP *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_31m6v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3); /*proto*/ +static char __pyx_doc_3tpm_2M6_30m6v3[] = "Product of M6 matrix and V3CP vector.\n\n Returns\n -------\n v : tpm.V3CP\n Cartesian vector obtained by multiplying the PP component\n of this matrix with the given Cartesian vector.\n\n "; +static PyObject *__pyx_pw_3tpm_2M6_31m6v3(PyObject *__pyx_v_self, PyObject *__pyx_v_v3) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m6v3 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v3), __pyx_ptype_3tpm_V3CP, 1, "v3", 0))) __PYX_ERR(1, 1121, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_30m6v3(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_V3CP *)__pyx_v_v3)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_30m6v3(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_V3CP *__pyx_v_v3) { + struct __pyx_obj_3tpm_V3CP *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("m6v3"); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v3), __pyx_ptype_5pytpm_3tpm_V3CP, 1, "v3", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m6v3", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1131 + /* "src/tpm_vec.pxi":1131 * * """ * v = V3CP() # <<<<<<<<<<<<<< * v.setV3(tpm_vec.m6v3(self.getM6(), v3.getV3())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V3CP)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V3CP)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V3CP *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1132 + /* "src/tpm_vec.pxi":1132 * """ * v = V3CP() * v.setV3(tpm_vec.m6v3(self.getM6(), v3.getV3())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v), m6v3(((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V3CP *)((struct __pyx_obj_5pytpm_3tpm_V3CP *)__pyx_v_v3)->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_5pytpm_3tpm_V3 *)__pyx_v_v3)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v), m6v3(((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_self->__pyx_vtab)->getM6(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_V3CP *)__pyx_v_v3->__pyx_base.__pyx_vtab)->__pyx_base.getV3(((struct __pyx_obj_3tpm_V3 *)__pyx_v_v3)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1133 + /* "src/tpm_vec.pxi":1133 * v = V3CP() * v.setV3(tpm_vec.m6v3(self.getM6(), v3.getV3())) * return v # <<<<<<<<<<<<<< @@ -17833,20 +26736,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_15m6v3(PyObject *__pyx_v_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1121 + * return m6 + * + * def m6v3(self, V3CP v3): # <<<<<<<<<<<<<< + * """Product of M6 matrix and V3CP vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.m6v3"); + __Pyx_AddTraceback("tpm.M6.m6v3", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1135 +/* "src/tpm_vec.pxi":1135 * return v * * def m6v6(self, V6C v6): # <<<<<<<<<<<<<< @@ -17854,41 +26764,62 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_15m6v3(PyObject *__pyx_v_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_16m6v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_2M6_16m6v6[] = "Product of M6 matrix and V6C vector.\n\n Returns\n -------\n v : tpm.V6C\n Cartesian vector obtained by multiplying this matrix with\n the given Cartesian vector.\n\n "; -static PyObject *__pyx_pf_5pytpm_3tpm_2M6_16m6v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_33m6v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6); /*proto*/ +static char __pyx_doc_3tpm_2M6_32m6v6[] = "Product of M6 matrix and V6C vector.\n\n Returns\n -------\n v : tpm.V6C\n Cartesian vector obtained by multiplying this matrix with\n the given Cartesian vector.\n\n "; +static PyObject *__pyx_pw_3tpm_2M6_33m6v6(PyObject *__pyx_v_self, PyObject *__pyx_v_v6) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m6v6 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(1, 1135, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_2M6_32m6v6(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_32m6v6(struct __pyx_obj_3tpm_M6 *__pyx_v_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("m6v6"); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m6v6", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1145 + /* "src/tpm_vec.pxi":1145 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_vec.m6v6(self.getM6(), v6.getV6())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1146 + /* "src/tpm_vec.pxi":1146 * """ * v = V6C() * v.setV6(tpm_vec.m6v6(self.getM6(), v6.getV6())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), m6v6(((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)->__pyx_vtab)->getM6(((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_v_self)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), m6v6(((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_self->__pyx_vtab)->getM6(__pyx_v_self), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1147 + /* "src/tpm_vec.pxi":1147 * v = V6C() * v.setV6(tpm_vec.m6v6(self.getM6(), v6.getV6())) * return v # <<<<<<<<<<<<<< @@ -17900,180 +26831,341 @@ static PyObject *__pyx_pf_5pytpm_3tpm_2M6_16m6v6(PyObject *__pyx_v_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1135 + * return v + * + * def m6v6(self, V6C v6): # <<<<<<<<<<<<<< + * """Product of M6 matrix and V6C vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.M6.m6v6"); + __Pyx_AddTraceback("tpm.M6.m6v6", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1150 - * - * - * def m3rx(theta): # <<<<<<<<<<<<<< - * """A rotation matrix for rotation about X-axis. - * +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): */ -static PyObject *__pyx_pf_5pytpm_3tpm_36m3rx(PyObject *__pyx_self, PyObject *__pyx_v_theta); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_36m3rx[] = "A rotation matrix for rotation about X-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about X-axis.\n\n Notes\n -----\n The rotation matrix::\n\n 1 0 0\n 0 cos(theta) sin(theta)\n 0 -sin(theta) cos(theta)\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_36m3rx = {__Pyx_NAMESTR("m3rx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_36m3rx, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_36m3rx)}; -static PyObject *__pyx_pf_5pytpm_3tpm_36m3rx(PyObject *__pyx_self, PyObject *__pyx_v_theta) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_35__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_34__reduce_cython__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_34__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M6 *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - __Pyx_RefNannySetupContext("m3rx"); - __pyx_self = __pyx_self; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1172 - * - * """ - * m3 = M3() # <<<<<<<<<<<<<< - * m3.setM3(tpm_vec.m3Rx(theta)) - * return m3 - */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); - __pyx_t_1 = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1173 - * """ - * m3 = M3() - * m3.setM3(tpm_vec.m3Rx(theta)) # <<<<<<<<<<<<<< - * return m3 - * + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3Rx(__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1174 - * m3 = M3() - * m3.setM3(tpm_vec.m3Rx(theta)) - * return m3 # <<<<<<<<<<<<<< - * - * + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_m3)); - __pyx_r = ((PyObject *)__pyx_v_m3); - goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m3rx"); + __Pyx_AddTraceback("tpm.M6.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; - __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1177 - * - * - * def m3rxdot(theta, thetadot): # <<<<<<<<<<<<<< - * """Derivative of rotation matrix for rotation about X-axis. +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_2M6_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_2M6_37__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_2M6_36__setstate_cython__(((struct __pyx_obj_3tpm_M6 *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_2M6_36__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_M6 *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__26, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.M6.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_vec.pxi":1150 + * + * + * def m3rx(theta): # <<<<<<<<<<<<<< + * """A rotation matrix for rotation about X-axis. * */ -static PyObject *__pyx_pf_5pytpm_3tpm_37m3rxdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_37m3rxdot[] = "Derivative of rotation matrix for rotation about X-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n thetadot : float\n Rate of change of `theta` in radians/second.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about X-axis.\n\n Notes\n -----\n The rotation matrix::\n\n\n 0 0 0\n thetadot * 0 -sin(theta) cos(theta)\n 0 -cos(theta) -sin(theta)\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_37m3rxdot = {__Pyx_NAMESTR("m3rxdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_37m3rxdot, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_37m3rxdot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_37m3rxdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_theta = 0; - PyObject *__pyx_v_thetadot = 0; - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_73m3rx(PyObject *__pyx_self, PyObject *__pyx_v_theta); /*proto*/ +static char __pyx_doc_3tpm_72m3rx[] = "A rotation matrix for rotation about X-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about X-axis.\n\n Notes\n -----\n The rotation matrix::\n\n 1 0 0\n 0 cos(theta) sin(theta)\n 0 -sin(theta) cos(theta)\n\n "; +static PyMethodDef __pyx_mdef_3tpm_73m3rx = {"m3rx", (PyCFunction)__pyx_pw_3tpm_73m3rx, METH_O, __pyx_doc_3tpm_72m3rx}; +static PyObject *__pyx_pw_3tpm_73m3rx(PyObject *__pyx_self, PyObject *__pyx_v_theta) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3rx (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_72m3rx(__pyx_self, ((PyObject *)__pyx_v_theta)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_72m3rx(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; double __pyx_t_2; - double __pyx_t_3; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__theta,&__pyx_n_s__thetadot,0}; - __Pyx_RefNannySetupContext("m3rxdot"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3rx", 0); + + /* "src/tpm_vec.pxi":1172 + * + * """ + * m3 = M3() # <<<<<<<<<<<<<< + * m3.setM3(tpm_vec.m3Rx(theta)) + * return m3 + */ + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1172, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); + __pyx_t_1 = 0; + + /* "src/tpm_vec.pxi":1173 + * """ + * m3 = M3() + * m3.setM3(tpm_vec.m3Rx(theta)) # <<<<<<<<<<<<<< + * return m3 + * + */ + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1173, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3Rx(__pyx_t_2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1173, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + + /* "src/tpm_vec.pxi":1174 + * m3 = M3() + * m3.setM3(tpm_vec.m3Rx(theta)) + * return m3 # <<<<<<<<<<<<<< + * + * + */ + __Pyx_XDECREF(__pyx_r); + __Pyx_INCREF(((PyObject *)__pyx_v_m3)); + __pyx_r = ((PyObject *)__pyx_v_m3); + goto __pyx_L0; + + /* "src/tpm_vec.pxi":1150 + * + * + * def m3rx(theta): # <<<<<<<<<<<<<< + * """A rotation matrix for rotation about X-axis. + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.m3rx", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __pyx_L0:; + __Pyx_XDECREF((PyObject *)__pyx_v_m3); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_vec.pxi":1177 + * + * + * def m3rxdot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about X-axis. + * + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_75m3rxdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_74m3rxdot[] = "Derivative of rotation matrix for rotation about X-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n thetadot : float\n Rate of change of `theta` in radians/second.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about X-axis.\n\n Notes\n -----\n The rotation matrix::\n\n\n 0 0 0\n thetadot * 0 -sin(theta) cos(theta)\n 0 -cos(theta) -sin(theta)\n\n "; +static PyMethodDef __pyx_mdef_3tpm_75m3rxdot = {"m3rxdot", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_75m3rxdot, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_74m3rxdot}; +static PyObject *__pyx_pw_3tpm_75m3rxdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + PyObject *__pyx_v_theta = 0; + PyObject *__pyx_v_thetadot = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3rxdot (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_theta,&__pyx_n_s_thetadot,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__theta); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__thetadot); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("m3rxdot", 1, 2, 2, 1); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "m3rxdot") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_theta)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_thetadot)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("m3rxdot", 1, 2, 2, 1); __PYX_ERR(1, 1177, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "m3rxdot") < 0)) __PYX_ERR(1, 1177, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } __pyx_v_theta = values[0]; __pyx_v_thetadot = values[1]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_theta = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_thetadot = PyTuple_GET_ITEM(__pyx_args, 1); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("m3rxdot", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("m3rxdot", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 1177, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.m3rxdot"); + __Pyx_AddTraceback("tpm.m3rxdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_74m3rxdot(__pyx_self, __pyx_v_theta, __pyx_v_thetadot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1202 +static PyObject *__pyx_pf_3tpm_74m3rxdot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta, PyObject *__pyx_v_thetadot) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3rxdot", 0); + + /* "src/tpm_vec.pxi":1202 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3RxDot(theta, thetadot)) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1203 + /* "src/tpm_vec.pxi":1203 * """ * m3 = M3() * m3.setM3(tpm_vec.m3RxDot(theta, thetadot)) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_thetadot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3RxDot(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1203, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_thetadot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1203, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3RxDot(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1204 + /* "src/tpm_vec.pxi":1204 * m3 = M3() * m3.setM3(tpm_vec.m3RxDot(theta, thetadot)) * return m3 # <<<<<<<<<<<<<< @@ -18085,20 +27177,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_37m3rxdot(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1177 + * + * + * def m3rxdot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about X-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m3rxdot"); + __Pyx_AddTraceback("tpm.m3rxdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1207 +/* "src/tpm_vec.pxi":1207 * * * def m3ry(theta): # <<<<<<<<<<<<<< @@ -18106,44 +27205,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_37m3rxdot(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_38m3ry(PyObject *__pyx_self, PyObject *__pyx_v_theta); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_38m3ry[] = "A rotation matrix for rotation about Y-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Y-axis.\n\n Notes\n -----\n The rotation matrix::\n\n cos(theta) 0 -sin(theta)\n 0 1 0\n sin(theta) 0 cos(theta)\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_38m3ry = {__Pyx_NAMESTR("m3ry"), (PyCFunction)__pyx_pf_5pytpm_3tpm_38m3ry, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_38m3ry)}; -static PyObject *__pyx_pf_5pytpm_3tpm_38m3ry(PyObject *__pyx_self, PyObject *__pyx_v_theta) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_77m3ry(PyObject *__pyx_self, PyObject *__pyx_v_theta); /*proto*/ +static char __pyx_doc_3tpm_76m3ry[] = "A rotation matrix for rotation about Y-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Y-axis.\n\n Notes\n -----\n The rotation matrix::\n\n cos(theta) 0 -sin(theta)\n 0 1 0\n sin(theta) 0 cos(theta)\n\n "; +static PyMethodDef __pyx_mdef_3tpm_77m3ry = {"m3ry", (PyCFunction)__pyx_pw_3tpm_77m3ry, METH_O, __pyx_doc_3tpm_76m3ry}; +static PyObject *__pyx_pw_3tpm_77m3ry(PyObject *__pyx_self, PyObject *__pyx_v_theta) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3ry (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_76m3ry(__pyx_self, ((PyObject *)__pyx_v_theta)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_76m3ry(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; double __pyx_t_2; - __Pyx_RefNannySetupContext("m3ry"); - __pyx_self = __pyx_self; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3ry", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1229 + /* "src/tpm_vec.pxi":1229 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3Ry(theta)) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1230 + /* "src/tpm_vec.pxi":1230 * """ * m3 = M3() * m3.setM3(tpm_vec.m3Ry(theta)) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3Ry(__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1230, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3Ry(__pyx_t_2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1231 + /* "src/tpm_vec.pxi":1231 * m3 = M3() * m3.setM3(tpm_vec.m3Ry(theta)) * return m3 # <<<<<<<<<<<<<< @@ -18155,20 +27267,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_38m3ry(PyObject *__pyx_self, PyObject *__p __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1207 + * + * + * def m3ry(theta): # <<<<<<<<<<<<<< + * """A rotation matrix for rotation about Y-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m3ry"); + __Pyx_AddTraceback("tpm.m3ry", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1234 +/* "src/tpm_vec.pxi":1234 * * * def m3rydot(theta, thetadot): # <<<<<<<<<<<<<< @@ -18176,89 +27295,110 @@ static PyObject *__pyx_pf_5pytpm_3tpm_38m3ry(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_39m3rydot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_39m3rydot[] = "Derivative of rotation matrix for rotation about Y-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n thetadot : float\n Rate of change of `theta` in radians/second.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Y-axis.\n\n Notes\n -----\n The rotation matrix::\n\n -sin(theta) 0 -cos(theta)\n thetadot * 0 0 0\n cos(theta) 0 -sin(theta)\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_39m3rydot = {__Pyx_NAMESTR("m3rydot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_39m3rydot, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_39m3rydot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_39m3rydot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_79m3rydot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_78m3rydot[] = "Derivative of rotation matrix for rotation about Y-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n thetadot : float\n Rate of change of `theta` in radians/second.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Y-axis.\n\n Notes\n -----\n The rotation matrix::\n\n -sin(theta) 0 -cos(theta)\n thetadot * 0 0 0\n cos(theta) 0 -sin(theta)\n\n "; +static PyMethodDef __pyx_mdef_3tpm_79m3rydot = {"m3rydot", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_79m3rydot, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_78m3rydot}; +static PyObject *__pyx_pw_3tpm_79m3rydot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_theta = 0; PyObject *__pyx_v_thetadot = 0; - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__theta,&__pyx_n_s__thetadot,0}; - __Pyx_RefNannySetupContext("m3rydot"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3rydot (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_theta,&__pyx_n_s_thetadot,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__theta); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__thetadot); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("m3rydot", 1, 2, 2, 1); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "m3rydot") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_theta)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_thetadot)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("m3rydot", 1, 2, 2, 1); __PYX_ERR(1, 1234, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "m3rydot") < 0)) __PYX_ERR(1, 1234, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } __pyx_v_theta = values[0]; __pyx_v_thetadot = values[1]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_theta = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_thetadot = PyTuple_GET_ITEM(__pyx_args, 1); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("m3rydot", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("m3rydot", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 1234, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.m3rydot"); + __Pyx_AddTraceback("tpm.m3rydot", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_78m3rydot(__pyx_self, __pyx_v_theta, __pyx_v_thetadot); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1258 + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_78m3rydot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta, PyObject *__pyx_v_thetadot) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3rydot", 0); + + /* "src/tpm_vec.pxi":1258 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3RyDot(theta, thetadot)) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1258, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1259 + /* "src/tpm_vec.pxi":1259 * """ * m3 = M3() * m3.setM3(tpm_vec.m3RyDot(theta, thetadot)) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_thetadot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3RyDot(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1259, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_thetadot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1259, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3RyDot(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1260 + /* "src/tpm_vec.pxi":1260 * m3 = M3() * m3.setM3(tpm_vec.m3RyDot(theta, thetadot)) * return m3 # <<<<<<<<<<<<<< @@ -18270,20 +27410,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_39m3rydot(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1234 + * + * + * def m3rydot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about Y-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m3rydot"); + __Pyx_AddTraceback("tpm.m3rydot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1263 +/* "src/tpm_vec.pxi":1263 * * * def m3rz(theta): # <<<<<<<<<<<<<< @@ -18291,44 +27438,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_39m3rydot(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_40m3rz(PyObject *__pyx_self, PyObject *__pyx_v_theta); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_40m3rz[] = "Rotation matrix for rotation about Z-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Z-axis.\n\n Notes\n -----\n The rotation matrix::\n\n cos(theta) sin(theta) 0\n -sin(theta) cos(theta) 0\n 0 0 1\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_40m3rz = {__Pyx_NAMESTR("m3rz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_40m3rz, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_40m3rz)}; -static PyObject *__pyx_pf_5pytpm_3tpm_40m3rz(PyObject *__pyx_self, PyObject *__pyx_v_theta) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_81m3rz(PyObject *__pyx_self, PyObject *__pyx_v_theta); /*proto*/ +static char __pyx_doc_3tpm_80m3rz[] = "Rotation matrix for rotation about Z-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Z-axis.\n\n Notes\n -----\n The rotation matrix::\n\n cos(theta) sin(theta) 0\n -sin(theta) cos(theta) 0\n 0 0 1\n\n "; +static PyMethodDef __pyx_mdef_3tpm_81m3rz = {"m3rz", (PyCFunction)__pyx_pw_3tpm_81m3rz, METH_O, __pyx_doc_3tpm_80m3rz}; +static PyObject *__pyx_pw_3tpm_81m3rz(PyObject *__pyx_self, PyObject *__pyx_v_theta) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3rz (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_80m3rz(__pyx_self, ((PyObject *)__pyx_v_theta)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_80m3rz(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; double __pyx_t_2; - __Pyx_RefNannySetupContext("m3rz"); - __pyx_self = __pyx_self; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3rz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1285 + /* "src/tpm_vec.pxi":1285 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3Rz(theta)) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1286 + /* "src/tpm_vec.pxi":1286 * """ * m3 = M3() * m3.setM3(tpm_vec.m3Rz(theta)) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3Rz(__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1286, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3Rz(__pyx_t_2)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1287 + /* "src/tpm_vec.pxi":1287 * m3 = M3() * m3.setM3(tpm_vec.m3Rz(theta)) * return m3 # <<<<<<<<<<<<<< @@ -18340,20 +27500,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_40m3rz(PyObject *__pyx_self, PyObject *__p __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1263 + * + * + * def m3rz(theta): # <<<<<<<<<<<<<< + * """Rotation matrix for rotation about Z-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m3rz"); + __Pyx_AddTraceback("tpm.m3rz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1290 +/* "src/tpm_vec.pxi":1290 * * * def m3rzdot(theta, thetadot): # <<<<<<<<<<<<<< @@ -18361,89 +27528,110 @@ static PyObject *__pyx_pf_5pytpm_3tpm_40m3rz(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_41m3rzdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_41m3rzdot[] = "Derivative of rotation matrix for rotation about Z-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n thetadot : float\n Rate of change of `theta` in radians/second.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Z-axis.\n\n Notes\n -----\n The rotation matrix::\n\n -sin(theta) cos(theta) 0\n thetadot * -cos(theta) -sin(theta) 0\n 0 0 0\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_41m3rzdot = {__Pyx_NAMESTR("m3rzdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_41m3rzdot, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_41m3rzdot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_41m3rzdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_83m3rzdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_82m3rzdot[] = "Derivative of rotation matrix for rotation about Z-axis.\n\n Parameters\n ----------\n theta : float\n Rotation angle in radians.\n thetadot : float\n Rate of change of `theta` in radians/second.\n\n Returns\n -------\n m3 : tpm.M3\n A rotation matrix about Z-axis.\n\n Notes\n -----\n The rotation matrix::\n\n -sin(theta) cos(theta) 0\n thetadot * -cos(theta) -sin(theta) 0\n 0 0 0\n\n "; +static PyMethodDef __pyx_mdef_3tpm_83m3rzdot = {"m3rzdot", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_83m3rzdot, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_82m3rzdot}; +static PyObject *__pyx_pw_3tpm_83m3rzdot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_theta = 0; PyObject *__pyx_v_thetadot = 0; - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__theta,&__pyx_n_s__thetadot,0}; - __Pyx_RefNannySetupContext("m3rzdot"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m3rzdot (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_theta,&__pyx_n_s_thetadot,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__theta); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__thetadot); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("m3rzdot", 1, 2, 2, 1); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1290; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "m3rzdot") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1290; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_theta)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_thetadot)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("m3rzdot", 1, 2, 2, 1); __PYX_ERR(1, 1290, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "m3rzdot") < 0)) __PYX_ERR(1, 1290, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } __pyx_v_theta = values[0]; __pyx_v_thetadot = values[1]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_theta = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_thetadot = PyTuple_GET_ITEM(__pyx_args, 1); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("m3rzdot", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1290; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("m3rzdot", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 1290, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.m3rzdot"); + __Pyx_AddTraceback("tpm.m3rzdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_82m3rzdot(__pyx_self, __pyx_v_theta, __pyx_v_thetadot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1314 +static PyObject *__pyx_pf_3tpm_82m3rzdot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_theta, PyObject *__pyx_v_thetadot) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m3rzdot", 0); + + /* "src/tpm_vec.pxi":1314 * * """ * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(tpm_vec.m3RzDot(theta, thetadot)) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1315 + /* "src/tpm_vec.pxi":1315 * """ * m3 = M3() * m3.setM3(tpm_vec.m3RzDot(theta, thetadot)) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_thetadot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3RzDot(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_theta); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1315, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_thetadot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1315, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, m3RzDot(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1316 + /* "src/tpm_vec.pxi":1316 * m3 = M3() * m3.setM3(tpm_vec.m3RzDot(theta, thetadot)) * return m3 # <<<<<<<<<<<<<< @@ -18455,20 +27643,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_41m3rzdot(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1290 + * + * + * def m3rzdot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about Z-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m3rzdot"); + __Pyx_AddTraceback("tpm.m3rzdot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1319 +/* "src/tpm_vec.pxi":1319 * * * def m6qx(x, xdot): # <<<<<<<<<<<<<< @@ -18476,89 +27671,110 @@ static PyObject *__pyx_pf_5pytpm_3tpm_41m3rzdot(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_42m6qx(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_42m6qx[] = "An M6 matrix for rotation about X-axis.\n\n Parameters\n ----------\n x : float\n Angle of rotation in radians.\n xdot : float\n Rate of change angle of rotation in radians/second.\n\n Returns\n -------\n m : tpm.M6\n An M6 matrix for rotating a V6 vector about the X-axis.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_42m6qx = {__Pyx_NAMESTR("m6qx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_42m6qx, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_42m6qx)}; -static PyObject *__pyx_pf_5pytpm_3tpm_42m6qx(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_85m6qx(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_84m6qx[] = "An M6 matrix for rotation about X-axis.\n\n Parameters\n ----------\n x : float\n Angle of rotation in radians.\n xdot : float\n Rate of change angle of rotation in radians/second.\n\n Returns\n -------\n m : tpm.M6\n An M6 matrix for rotating a V6 vector about the X-axis.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_85m6qx = {"m6qx", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_85m6qx, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_84m6qx}; +static PyObject *__pyx_pw_3tpm_85m6qx(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_x = 0; PyObject *__pyx_v_xdot = 0; - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__x,&__pyx_n_s__xdot,0}; - __Pyx_RefNannySetupContext("m6qx"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m6qx (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_x,&__pyx_n_s_xdot,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xdot); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("m6qx", 1, 2, 2, 1); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "m6qx") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_x)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xdot)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("m6qx", 1, 2, 2, 1); __PYX_ERR(1, 1319, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "m6qx") < 0)) __PYX_ERR(1, 1319, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } __pyx_v_x = values[0]; __pyx_v_xdot = values[1]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_x = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_xdot = PyTuple_GET_ITEM(__pyx_args, 1); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("m6qx", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("m6qx", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 1319, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.m6qx"); + __Pyx_AddTraceback("tpm.m6qx", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_84m6qx(__pyx_self, __pyx_v_x, __pyx_v_xdot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_84m6qx(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x, PyObject *__pyx_v_xdot) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m6qx", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1335 + /* "src/tpm_vec.pxi":1335 * * """ * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_vec.m6Qx(x, xdot)) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1335, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1336 + /* "src/tpm_vec.pxi":1336 * """ * m6 = M6() * m6.setM6(tpm_vec.m6Qx(x, xdot)) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_xdot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6Qx(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_x); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1336, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_xdot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1336, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6Qx(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1336, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1337 + /* "src/tpm_vec.pxi":1337 * m6 = M6() * m6.setM6(tpm_vec.m6Qx(x, xdot)) * return m6 # <<<<<<<<<<<<<< @@ -18570,20 +27786,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_42m6qx(PyObject *__pyx_self, PyObject *__p __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1319 + * + * + * def m6qx(x, xdot): # <<<<<<<<<<<<<< + * """An M6 matrix for rotation about X-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m6qx"); + __Pyx_AddTraceback("tpm.m6qx", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1340 +/* "src/tpm_vec.pxi":1340 * * * def m6qy(y, ydot): # <<<<<<<<<<<<<< @@ -18591,89 +27814,110 @@ static PyObject *__pyx_pf_5pytpm_3tpm_42m6qx(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_43m6qy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_43m6qy[] = "An M6 matrix for rotation about Y-axis.\n\n Parameters\n ----------\n x : float\n Angle of rotation in radians.\n xdot : float\n Rate of change of angle of rotation in radians/second.\n\n Returns\n -------\n m : tpm.M6\n An M6 matrix for rotating a V6 vector about the Y-axis.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_43m6qy = {__Pyx_NAMESTR("m6qy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_43m6qy, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_43m6qy)}; -static PyObject *__pyx_pf_5pytpm_3tpm_43m6qy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_87m6qy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_86m6qy[] = "An M6 matrix for rotation about Y-axis.\n\n Parameters\n ----------\n x : float\n Angle of rotation in radians.\n xdot : float\n Rate of change of angle of rotation in radians/second.\n\n Returns\n -------\n m : tpm.M6\n An M6 matrix for rotating a V6 vector about the Y-axis.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_87m6qy = {"m6qy", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_87m6qy, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_86m6qy}; +static PyObject *__pyx_pw_3tpm_87m6qy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_y = 0; PyObject *__pyx_v_ydot = 0; - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__y,&__pyx_n_s__ydot,0}; - __Pyx_RefNannySetupContext("m6qy"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m6qy (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_y,&__pyx_n_s_ydot,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ydot); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("m6qy", 1, 2, 2, 1); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1340; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "m6qy") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1340; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_y)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ydot)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("m6qy", 1, 2, 2, 1); __PYX_ERR(1, 1340, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "m6qy") < 0)) __PYX_ERR(1, 1340, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } __pyx_v_y = values[0]; __pyx_v_ydot = values[1]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_y = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_ydot = PyTuple_GET_ITEM(__pyx_args, 1); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("m6qy", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1340; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("m6qy", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 1340, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.m6qy"); + __Pyx_AddTraceback("tpm.m6qy", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_86m6qy(__pyx_self, __pyx_v_y, __pyx_v_ydot); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1356 - * - * """ - * m6 = M6() # <<<<<<<<<<<<<< - * m6.setM6(tpm_vec.m6Qy(y, ydot)) - * return m6 - */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1356; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); - __pyx_t_1 = 0; + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_86m6qy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_y, PyObject *__pyx_v_ydot) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m6qy", 0); + + /* "src/tpm_vec.pxi":1356 + * + * """ + * m6 = M6() # <<<<<<<<<<<<<< + * m6.setM6(tpm_vec.m6Qy(y, ydot)) + * return m6 + */ + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1356, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); + __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1357 + /* "src/tpm_vec.pxi":1357 * """ * m6 = M6() * m6.setM6(tpm_vec.m6Qy(y, ydot)) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1357; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_ydot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1357; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6Qy(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1357; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_y); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1357, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_ydot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1357, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6Qy(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1358 + /* "src/tpm_vec.pxi":1358 * m6 = M6() * m6.setM6(tpm_vec.m6Qy(y, ydot)) * return m6 # <<<<<<<<<<<<<< @@ -18685,20 +27929,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_43m6qy(PyObject *__pyx_self, PyObject *__p __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1340 + * + * + * def m6qy(y, ydot): # <<<<<<<<<<<<<< + * """An M6 matrix for rotation about Y-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m6qy"); + __Pyx_AddTraceback("tpm.m6qy", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1361 +/* "src/tpm_vec.pxi":1361 * * * def m6qz(z, zdot): # <<<<<<<<<<<<<< @@ -18706,88 +27957,109 @@ static PyObject *__pyx_pf_5pytpm_3tpm_43m6qy(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_44m6qz(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_44m6qz[] = "An M6 matrix for rotation about Z-axis.\n\n Parameters\n ----------\n x : float\n Angle of rotation in radians.\n xdot : float\n Rate of change or angle of rotation in radians/second.\n\n Returns\n -------\n m : tpm.M6\n An M6 matrix for rotating a V6 vector about the Z-axis.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_44m6qz = {__Pyx_NAMESTR("m6qz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_44m6qz, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_44m6qz)}; -static PyObject *__pyx_pf_5pytpm_3tpm_44m6qz(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_89m6qz(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_88m6qz[] = "An M6 matrix for rotation about Z-axis.\n\n Parameters\n ----------\n x : float\n Angle of rotation in radians.\n xdot : float\n Rate of change or angle of rotation in radians/second.\n\n Returns\n -------\n m : tpm.M6\n An M6 matrix for rotating a V6 vector about the Z-axis.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_89m6qz = {"m6qz", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_89m6qz, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_88m6qz}; +static PyObject *__pyx_pw_3tpm_89m6qz(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_z = 0; PyObject *__pyx_v_zdot = 0; - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__z,&__pyx_n_s__zdot,0}; - __Pyx_RefNannySetupContext("m6qz"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("m6qz (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_z,&__pyx_n_s_zdot,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__z); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zdot); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("m6qz", 1, 2, 2, 1); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1361; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "m6qz") < 0)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1361; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_z)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zdot)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("m6qz", 1, 2, 2, 1); __PYX_ERR(1, 1361, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "m6qz") < 0)) __PYX_ERR(1, 1361, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } __pyx_v_z = values[0]; __pyx_v_zdot = values[1]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_z = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_zdot = PyTuple_GET_ITEM(__pyx_args, 1); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("m6qz", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1361; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("m6qz", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(1, 1361, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.m6qz"); + __Pyx_AddTraceback("tpm.m6qz", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_88m6qz(__pyx_self, __pyx_v_z, __pyx_v_zdot); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_88m6qz(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_z, PyObject *__pyx_v_zdot) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("m6qz", 0); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1377 + /* "src/tpm_vec.pxi":1377 * * """ * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_vec.m6Qz(z, zdot)) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1378 + /* "src/tpm_vec.pxi":1378 * """ * m6 = M6() * m6.setM6(tpm_vec.m6Qz(z, zdot)) # <<<<<<<<<<<<<< * return m6 */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1378; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_zdot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1378; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6Qz(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1378; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_z); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1378, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_zdot); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(1, 1378, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, m6Qz(__pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1378, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1379 + /* "src/tpm_vec.pxi":1379 * m6 = M6() * m6.setM6(tpm_vec.m6Qz(z, zdot)) * return m6 # <<<<<<<<<<<<<< @@ -18797,20 +28069,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_44m6qz(PyObject *__pyx_self, PyObject *__p __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_vec.pxi":1361 + * + * + * def m6qz(z, zdot): # <<<<<<<<<<<<<< + * """An M6 matrix for rotation about Z-axis. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.m6qz"); + __Pyx_AddTraceback("tpm.m6qz", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":177 +/* "src/tpm_tpm.pxi":177 * cdef tpm_tpm.TPM_TSTATE _tstate * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -18818,43 +28097,66 @@ static PyObject *__pyx_pf_5pytpm_3tpm_44m6qz(PyObject *__pyx_self, PyObject *__p * # of pytpm.pyx. */ -static int __pyx_pf_5pytpm_3tpm_6TSTATE___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_6TSTATE___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_6TSTATE_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_6TSTATE_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { int __pyx_r; - TPM_TSTATE *__pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - __Pyx_RefNannySetupContext("__cinit__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_6TSTATE___cinit__(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_6TSTATE___cinit__(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_t_2; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":180 + /* "src/tpm_tpm.pxi":180 * # Can refer to tpm_astro since it will be included at the top * # of pytpm.pyx. * tpm_astro.tpm_data(&self._tstate, TPM_INIT) # <<<<<<<<<<<<<< * * def __init__(self, utc=None, delta_at=None, delta_ut=0.0, lon=0.0, */ - __pyx_t_1 = (&((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__TPM_INIT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_t_2); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - tpm_data(__pyx_t_1, __pyx_t_3); + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_TPM_INIT); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 180, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(4, 180, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + tpm_data((&__pyx_v_self->_tstate), __pyx_t_2); + + /* "src/tpm_tpm.pxi":177 + * cdef tpm_tpm.TPM_TSTATE _tstate + * + * def __cinit__(self): # <<<<<<<<<<<<<< + * # Can refer to tpm_astro since it will be included at the top + * # of pytpm.pyx. + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__cinit__"); + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.TSTATE.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":182 +/* "src/tpm_tpm.pxi":182 * tpm_astro.tpm_data(&self._tstate, TPM_INIT) * * def __init__(self, utc=None, delta_at=None, delta_ut=0.0, lon=0.0, # <<<<<<<<<<<<<< @@ -18862,8 +28164,9 @@ static int __pyx_pf_5pytpm_3tpm_6TSTATE___cinit__(PyObject *__pyx_v_self, PyObje * P=1013.25, H=0.0, wavelength=0.550): */ -static int __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_6TSTATE_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_6TSTATE_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_utc = 0; PyObject *__pyx_v_delta_at = 0; PyObject *__pyx_v_delta_ut = 0; @@ -18876,107 +28179,165 @@ static int __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__(PyObject *__pyx_v_self, PyObje PyObject *__pyx_v_P = 0; PyObject *__pyx_v_H = 0; PyObject *__pyx_v_wavelength = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - int __pyx_t_1; - double __pyx_t_2; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__utc,&__pyx_n_s__delta_at,&__pyx_n_s__delta_ut,&__pyx_n_s__lon,&__pyx_n_s__lat,&__pyx_n_s__alt,&__pyx_n_s__xpole,&__pyx_n_s__ypole,&__pyx_n_s__T,&__pyx_n_s__P,&__pyx_n_s__H,&__pyx_n_s__wavelength,0}; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_utc,&__pyx_n_s_delta_at,&__pyx_n_s_delta_ut,&__pyx_n_s_lon,&__pyx_n_s_lat,&__pyx_n_s_alt,&__pyx_n_s_xpole,&__pyx_n_s_ypole,&__pyx_n_s_T,&__pyx_n_s_P,&__pyx_n_s_H,&__pyx_n_s_wavelength,0}; PyObject* values[12] = {0,0,0,0,0,0,0,0,0,0,0,0}; values[0] = ((PyObject *)Py_None); values[1] = ((PyObject *)Py_None); - values[2] = __pyx_k_57; - values[3] = __pyx_k_58; - values[4] = __pyx_k_59; - values[5] = __pyx_k_60; - values[6] = __pyx_k_61; - values[7] = __pyx_k_62; - values[8] = __pyx_k_63; - values[9] = __pyx_k_64; - values[10] = __pyx_k_65; - values[11] = __pyx_k_66; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 12: values[11] = PyTuple_GET_ITEM(__pyx_args, 11); - case 11: values[10] = PyTuple_GET_ITEM(__pyx_args, 10); - case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); - case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); - case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); - case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__utc); - if (value) { values[0] = value; kw_args--; } - } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__delta_at); - if (value) { values[1] = value; kw_args--; } - } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__delta_ut); - if (value) { values[2] = value; kw_args--; } - } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__lon); - if (value) { values[3] = value; kw_args--; } - } - case 4: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__lat); - if (value) { values[4] = value; kw_args--; } - } - case 5: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alt); - if (value) { values[5] = value; kw_args--; } + values[2] = ((PyObject *)__pyx_float_0_0); + values[3] = ((PyObject *)__pyx_float_0_0); + values[4] = ((PyObject *)__pyx_float_0_0); + values[5] = ((PyObject *)__pyx_float_0_0); + values[6] = ((PyObject *)__pyx_float_0_0); + values[7] = ((PyObject *)__pyx_float_0_0); + values[8] = ((PyObject *)__pyx_float_273_15); + values[9] = ((PyObject *)__pyx_float_1013_25); + values[10] = ((PyObject *)__pyx_float_0_0); + values[11] = ((PyObject *)__pyx_float_0_550); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 12: values[11] = PyTuple_GET_ITEM(__pyx_args, 11); + CYTHON_FALLTHROUGH; + case 11: values[10] = PyTuple_GET_ITEM(__pyx_args, 10); + CYTHON_FALLTHROUGH; + case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + CYTHON_FALLTHROUGH; + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 6: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__xpole); - if (value) { values[6] = value; kw_args--; } - } - case 7: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ypole); - if (value) { values[7] = value; kw_args--; } - } - case 8: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__T); - if (value) { values[8] = value; kw_args--; } - } - case 9: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__P); - if (value) { values[9] = value; kw_args--; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_utc); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta_at); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta_ut); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lon); + if (value) { values[3] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 4: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lat); + if (value) { values[4] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 5: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alt); + if (value) { values[5] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 6: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_xpole); + if (value) { values[6] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 7: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ypole); + if (value) { values[7] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 8: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_T); + if (value) { values[8] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 9: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_P); + if (value) { values[9] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 10: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_H); + if (value) { values[10] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 11: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_wavelength); + if (value) { values[11] = value; kw_args--; } + } } - case 10: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__H); - if (value) { values[10] = value; kw_args--; } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(4, 182, __pyx_L3_error) } - case 11: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__wavelength); - if (value) { values[11] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 12: values[11] = PyTuple_GET_ITEM(__pyx_args, 11); + CYTHON_FALLTHROUGH; + case 11: values[10] = PyTuple_GET_ITEM(__pyx_args, 10); + CYTHON_FALLTHROUGH; + case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9); + CYTHON_FALLTHROUGH; + case 9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8); + CYTHON_FALLTHROUGH; + case 8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7); + CYTHON_FALLTHROUGH; + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_utc = values[0]; __pyx_v_delta_at = values[1]; __pyx_v_delta_ut = values[2]; @@ -18989,46 +28350,34 @@ static int __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__(PyObject *__pyx_v_self, PyObje __pyx_v_P = values[9]; __pyx_v_H = values[10]; __pyx_v_wavelength = values[11]; - } else { - __pyx_v_utc = ((PyObject *)Py_None); - __pyx_v_delta_at = ((PyObject *)Py_None); - __pyx_v_delta_ut = __pyx_k_57; - __pyx_v_lon = __pyx_k_58; - __pyx_v_lat = __pyx_k_59; - __pyx_v_alt = __pyx_k_60; - __pyx_v_xpole = __pyx_k_61; - __pyx_v_ypole = __pyx_k_62; - __pyx_v_T = __pyx_k_63; - __pyx_v_P = __pyx_k_64; - __pyx_v_H = __pyx_k_65; - __pyx_v_wavelength = __pyx_k_66; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 12: __pyx_v_wavelength = PyTuple_GET_ITEM(__pyx_args, 11); - case 11: __pyx_v_H = PyTuple_GET_ITEM(__pyx_args, 10); - case 10: __pyx_v_P = PyTuple_GET_ITEM(__pyx_args, 9); - case 9: __pyx_v_T = PyTuple_GET_ITEM(__pyx_args, 8); - case 8: __pyx_v_ypole = PyTuple_GET_ITEM(__pyx_args, 7); - case 7: __pyx_v_xpole = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: __pyx_v_alt = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: __pyx_v_lat = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: __pyx_v_lon = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_delta_ut = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_delta_at = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_utc = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 12, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[3]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("__init__", 0, 0, 12, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(4, 182, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__init__"); + __Pyx_AddTraceback("tpm.TSTATE.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_6TSTATE_2__init__(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), __pyx_v_utc, __pyx_v_delta_at, __pyx_v_delta_ut, __pyx_v_lon, __pyx_v_lat, __pyx_v_alt, __pyx_v_xpole, __pyx_v_ypole, __pyx_v_T, __pyx_v_P, __pyx_v_H, __pyx_v_wavelength); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_6TSTATE_2__init__(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_utc, PyObject *__pyx_v_delta_at, PyObject *__pyx_v_delta_ut, PyObject *__pyx_v_lon, PyObject *__pyx_v_lat, PyObject *__pyx_v_alt, PyObject *__pyx_v_xpole, PyObject *__pyx_v_ypole, PyObject *__pyx_v_T, PyObject *__pyx_v_P, PyObject *__pyx_v_H, PyObject *__pyx_v_wavelength) { + int __pyx_r; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + int __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":187 + /* "src/tpm_tpm.pxi":187 * # If utc and delta_at is None, then just use the value set by * # __cinit__. * if utc is not None: # <<<<<<<<<<<<<< @@ -19036,155 +28385,178 @@ static int __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__(PyObject *__pyx_v_self, PyObje * if delta_at is not None: */ __pyx_t_1 = (__pyx_v_utc != Py_None); - if (__pyx_t_1) { + __pyx_t_2 = (__pyx_t_1 != 0); + if (__pyx_t_2) { - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":188 + /* "src/tpm_tpm.pxi":188 * # __cinit__. * if utc is not None: * self._tstate.utc = utc # <<<<<<<<<<<<<< * if delta_at is not None: * self._tstate.delta_at = delta_at */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.utc = __pyx_t_2; - goto __pyx_L6; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 188, __pyx_L1_error) + __pyx_v_self->_tstate.utc = __pyx_t_3; + + /* "src/tpm_tpm.pxi":187 + * # If utc and delta_at is None, then just use the value set by + * # __cinit__. + * if utc is not None: # <<<<<<<<<<<<<< + * self._tstate.utc = utc + * if delta_at is not None: + */ } - __pyx_L6:; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":189 + /* "src/tpm_tpm.pxi":189 * if utc is not None: * self._tstate.utc = utc * if delta_at is not None: # <<<<<<<<<<<<<< * self._tstate.delta_at = delta_at * self._tstate.delta_ut = delta_ut */ - __pyx_t_1 = (__pyx_v_delta_at != Py_None); + __pyx_t_2 = (__pyx_v_delta_at != Py_None); + __pyx_t_1 = (__pyx_t_2 != 0); if (__pyx_t_1) { - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":190 + /* "src/tpm_tpm.pxi":190 * self._tstate.utc = utc * if delta_at is not None: * self._tstate.delta_at = delta_at # <<<<<<<<<<<<<< * self._tstate.delta_ut = delta_ut * self._tstate.lon = lon */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_delta_at); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.delta_at = __pyx_t_2; - goto __pyx_L7; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta_at); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 190, __pyx_L1_error) + __pyx_v_self->_tstate.delta_at = __pyx_t_3; + + /* "src/tpm_tpm.pxi":189 + * if utc is not None: + * self._tstate.utc = utc + * if delta_at is not None: # <<<<<<<<<<<<<< + * self._tstate.delta_at = delta_at + * self._tstate.delta_ut = delta_ut + */ } - __pyx_L7:; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":191 + /* "src/tpm_tpm.pxi":191 * if delta_at is not None: * self._tstate.delta_at = delta_at * self._tstate.delta_ut = delta_ut # <<<<<<<<<<<<<< * self._tstate.lon = lon * self._tstate.lat = lat */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_delta_ut); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.delta_ut = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta_ut); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 191, __pyx_L1_error) + __pyx_v_self->_tstate.delta_ut = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":192 + /* "src/tpm_tpm.pxi":192 * self._tstate.delta_at = delta_at * self._tstate.delta_ut = delta_ut * self._tstate.lon = lon # <<<<<<<<<<<<<< * self._tstate.lat = lat * self._tstate.alt = alt */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_lon); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.lon = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_lon); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 192, __pyx_L1_error) + __pyx_v_self->_tstate.lon = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":193 + /* "src/tpm_tpm.pxi":193 * self._tstate.delta_ut = delta_ut * self._tstate.lon = lon * self._tstate.lat = lat # <<<<<<<<<<<<<< * self._tstate.alt = alt * self._tstate.xpole = xpole */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.lat = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 193, __pyx_L1_error) + __pyx_v_self->_tstate.lat = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":194 + /* "src/tpm_tpm.pxi":194 * self._tstate.lon = lon * self._tstate.lat = lat * self._tstate.alt = alt # <<<<<<<<<<<<<< * self._tstate.xpole = xpole * self._tstate.ypole = ypole */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.alt = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 194, __pyx_L1_error) + __pyx_v_self->_tstate.alt = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":195 + /* "src/tpm_tpm.pxi":195 * self._tstate.lat = lat * self._tstate.alt = alt * self._tstate.xpole = xpole # <<<<<<<<<<<<<< * self._tstate.ypole = ypole * self._tstate.T = T */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_xpole); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.xpole = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_xpole); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 195, __pyx_L1_error) + __pyx_v_self->_tstate.xpole = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":196 + /* "src/tpm_tpm.pxi":196 * self._tstate.alt = alt * self._tstate.xpole = xpole * self._tstate.ypole = ypole # <<<<<<<<<<<<<< * self._tstate.T = T * self._tstate.P = P */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_ypole); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.ypole = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_ypole); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 196, __pyx_L1_error) + __pyx_v_self->_tstate.ypole = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":197 + /* "src/tpm_tpm.pxi":197 * self._tstate.xpole = xpole * self._tstate.ypole = ypole * self._tstate.T = T # <<<<<<<<<<<<<< * self._tstate.P = P * self._tstate.H = H */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_T); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.T = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_T); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 197, __pyx_L1_error) + __pyx_v_self->_tstate.T = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":198 + /* "src/tpm_tpm.pxi":198 * self._tstate.ypole = ypole * self._tstate.T = T * self._tstate.P = P # <<<<<<<<<<<<<< * self._tstate.H = H * self._tstate.wavelength = wavelength */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_P); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.P = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_P); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 198, __pyx_L1_error) + __pyx_v_self->_tstate.P = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":199 + /* "src/tpm_tpm.pxi":199 * self._tstate.T = T * self._tstate.P = P * self._tstate.H = H # <<<<<<<<<<<<<< * self._tstate.wavelength = wavelength * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_H); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.H = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_H); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 199, __pyx_L1_error) + __pyx_v_self->_tstate.H = __pyx_t_3; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":200 + /* "src/tpm_tpm.pxi":200 * self._tstate.P = P * self._tstate.H = H * self._tstate.wavelength = wavelength # <<<<<<<<<<<<<< * * cdef tpm_tpm.TPM_TSTATE __get_tstate(self): */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_wavelength); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.wavelength = __pyx_t_2; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_wavelength); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 200, __pyx_L1_error) + __pyx_v_self->_tstate.wavelength = __pyx_t_3; + + /* "src/tpm_tpm.pxi":182 + * tpm_astro.tpm_data(&self._tstate, TPM_INIT) + * + * def __init__(self, utc=None, delta_at=None, delta_ut=0.0, lon=0.0, # <<<<<<<<<<<<<< + * lat=0.0, alt=0.0, xpole=0.0, ypole=0.0, T=273.15, + * P=1013.25, H=0.0, wavelength=0.550): + */ + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__init__"); + __Pyx_AddTraceback("tpm.TSTATE.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":202 +/* "src/tpm_tpm.pxi":202 * self._tstate.wavelength = wavelength * * cdef tpm_tpm.TPM_TSTATE __get_tstate(self): # <<<<<<<<<<<<<< @@ -19192,11 +28564,12 @@ static int __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__(PyObject *__pyx_v_self, PyObje * return self._tstate */ -static TPM_TSTATE __pyx_f_5pytpm_3tpm_6TSTATE___get_tstate(struct __pyx_obj_5pytpm_3tpm_TSTATE *__pyx_v_self) { +static TPM_TSTATE __pyx_f_3tpm_6TSTATE___get_tstate(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { TPM_TSTATE __pyx_r; - __Pyx_RefNannySetupContext("__get_tstate"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__get_tstate", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":204 + /* "src/tpm_tpm.pxi":204 * cdef tpm_tpm.TPM_TSTATE __get_tstate(self): * """Return underlying TSTATE; only for use from Cython.""" * return self._tstate # <<<<<<<<<<<<<< @@ -19206,12 +28579,21 @@ static TPM_TSTATE __pyx_f_5pytpm_3tpm_6TSTATE___get_tstate(struct __pyx_obj_5py __pyx_r = __pyx_v_self->_tstate; goto __pyx_L0; + /* "src/tpm_tpm.pxi":202 + * self._tstate.wavelength = wavelength + * + * cdef tpm_tpm.TPM_TSTATE __get_tstate(self): # <<<<<<<<<<<<<< + * """Return underlying TSTATE; only for use from Cython.""" + * return self._tstate + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":206 +/* "src/tpm_tpm.pxi":206 * return self._tstate * * cdef __set_tstate(self, tpm_tpm.TPM_TSTATE t): # <<<<<<<<<<<<<< @@ -19219,11 +28601,12 @@ static TPM_TSTATE __pyx_f_5pytpm_3tpm_6TSTATE___get_tstate(struct __pyx_obj_5py * # No checking is done on the given tstate. */ -static PyObject *__pyx_f_5pytpm_3tpm_6TSTATE___set_tstate(struct __pyx_obj_5pytpm_3tpm_TSTATE *__pyx_v_self, TPM_TSTATE __pyx_v_t) { +static PyObject *__pyx_f_3tpm_6TSTATE___set_tstate(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, TPM_TSTATE __pyx_v_t) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__set_tstate"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__set_tstate", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":209 + /* "src/tpm_tpm.pxi":209 * """Set underlying TSTATE; only for use from Cython.""" * # No checking is done on the given tstate. * self._tstate = t # <<<<<<<<<<<<<< @@ -19232,13 +28615,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_6TSTATE___set_tstate(struct __pyx_obj_5pyt */ __pyx_v_self->_tstate = __pyx_v_t; + /* "src/tpm_tpm.pxi":206 + * return self._tstate + * + * cdef __set_tstate(self, tpm_tpm.TPM_TSTATE t): # <<<<<<<<<<<<<< + * """Set underlying TSTATE; only for use from Cython.""" + * # No checking is done on the given tstate. + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":211 +/* "src/tpm_tpm.pxi":211 * self._tstate = t * * def __getutc(self): # <<<<<<<<<<<<<< @@ -19246,13 +28638,29 @@ static PyObject *__pyx_f_5pytpm_3tpm_6TSTATE___set_tstate(struct __pyx_obj_5pyt * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_2__getutc(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_2__getutc(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_5__getutc(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_5__getutc(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getutc (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_4__getutc(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_4__getutc(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getutc"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getutc", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":212 + /* "src/tpm_tpm.pxi":212 * * def __getutc(self): * return self._tstate.utc # <<<<<<<<<<<<<< @@ -19260,17 +28668,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_2__getutc(PyObject *__pyx_v_self, * def __setutc(self, utc): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.utc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.utc); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":211 + * self._tstate = t + * + * def __getutc(self): # <<<<<<<<<<<<<< + * return self._tstate.utc + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getutc"); + __Pyx_AddTraceback("tpm.TSTATE.__getutc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19278,7 +28693,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_2__getutc(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":214 +/* "src/tpm_tpm.pxi":214 * return self._tstate.utc * * def __setutc(self, utc): # <<<<<<<<<<<<<< @@ -19286,26 +28701,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_2__getutc(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_3__setutc(PyObject *__pyx_v_self, PyObject *__pyx_v_utc); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_3__setutc(PyObject *__pyx_v_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_7__setutc(PyObject *__pyx_v_self, PyObject *__pyx_v_utc); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_7__setutc(PyObject *__pyx_v_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setutc (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_6__setutc(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_6__setutc(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setutc"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setutc", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":215 + /* "src/tpm_tpm.pxi":215 * * def __setutc(self, utc): * self._tstate.utc = utc # <<<<<<<<<<<<<< * * utc = property(__getutc, __setutc, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.utc = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 215, __pyx_L1_error) + __pyx_v_self->_tstate.utc = __pyx_t_1; + + /* "src/tpm_tpm.pxi":214 + * return self._tstate.utc + * + * def __setutc(self, utc): # <<<<<<<<<<<<<< + * self._tstate.utc = utc + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setutc"); + __Pyx_AddTraceback("tpm.TSTATE.__setutc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19313,7 +28753,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_3__setutc(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":220 +/* "src/tpm_tpm.pxi":220 * doc="UTC as JD. Defines NOW, i.e., current time.") * * def __getdelta_at(self): # <<<<<<<<<<<<<< @@ -19321,13 +28761,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_3__setutc(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_4__getdelta_at(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_4__getdelta_at(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_9__getdelta_at(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_9__getdelta_at(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdelta_at (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_8__getdelta_at(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_8__getdelta_at(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdelta_at"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdelta_at", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":221 + /* "src/tpm_tpm.pxi":221 * * def __getdelta_at(self): * return self._tstate.delta_at # <<<<<<<<<<<<<< @@ -19335,17 +28791,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_4__getdelta_at(PyObject *__pyx_v_s * def __setdelta_at(self, delta_at): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.delta_at); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.delta_at); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":220 + * doc="UTC as JD. Defines NOW, i.e., current time.") + * + * def __getdelta_at(self): # <<<<<<<<<<<<<< + * return self._tstate.delta_at + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getdelta_at"); + __Pyx_AddTraceback("tpm.TSTATE.__getdelta_at", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19353,7 +28816,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_4__getdelta_at(PyObject *__pyx_v_s return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":223 +/* "src/tpm_tpm.pxi":223 * return self._tstate.delta_at * * def __setdelta_at(self, delta_at): # <<<<<<<<<<<<<< @@ -19361,26 +28824,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_4__getdelta_at(PyObject *__pyx_v_s * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_5__setdelta_at(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_at); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_5__setdelta_at(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_at) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_11__setdelta_at(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_at); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_11__setdelta_at(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_at) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdelta_at (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_10__setdelta_at(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_delta_at)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_10__setdelta_at(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_delta_at) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setdelta_at"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdelta_at", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":224 + /* "src/tpm_tpm.pxi":224 * * def __setdelta_at(self, delta_at): * self._tstate.delta_at = delta_at # <<<<<<<<<<<<<< * * delta_at = property(__getdelta_at, __setdelta_at, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta_at); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.delta_at = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta_at); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 224, __pyx_L1_error) + __pyx_v_self->_tstate.delta_at = __pyx_t_1; + /* "src/tpm_tpm.pxi":223 + * return self._tstate.delta_at + * + * def __setdelta_at(self, delta_at): # <<<<<<<<<<<<<< + * self._tstate.delta_at = delta_at + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setdelta_at"); + __Pyx_AddTraceback("tpm.TSTATE.__setdelta_at", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19388,7 +28876,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_5__setdelta_at(PyObject *__pyx_v_s return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":229 +/* "src/tpm_tpm.pxi":229 * doc="DELTA_AT = TAI - UTC (s)") * * def __getdelta_ut(self): # <<<<<<<<<<<<<< @@ -19396,13 +28884,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_5__setdelta_at(PyObject *__pyx_v_s * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_6__getdelta_ut(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_6__getdelta_ut(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_13__getdelta_ut(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_13__getdelta_ut(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getdelta_ut (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_12__getdelta_ut(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_12__getdelta_ut(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getdelta_ut"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getdelta_ut", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":230 + /* "src/tpm_tpm.pxi":230 * * def __getdelta_ut(self): * return self._tstate.delta_ut # <<<<<<<<<<<<<< @@ -19410,17 +28914,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_6__getdelta_ut(PyObject *__pyx_v_s * def __setdelta_ut(self, delta_ut): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.delta_ut); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.delta_ut); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":229 + * doc="DELTA_AT = TAI - UTC (s)") + * + * def __getdelta_ut(self): # <<<<<<<<<<<<<< + * return self._tstate.delta_ut + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getdelta_ut"); + __Pyx_AddTraceback("tpm.TSTATE.__getdelta_ut", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19428,7 +28939,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_6__getdelta_ut(PyObject *__pyx_v_s return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":232 +/* "src/tpm_tpm.pxi":232 * return self._tstate.delta_ut * * def __setdelta_ut(self, delta_ut): # <<<<<<<<<<<<<< @@ -19436,26 +28947,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_6__getdelta_ut(PyObject *__pyx_v_s * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_7__setdelta_ut(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_ut); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_7__setdelta_ut(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_ut) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_15__setdelta_ut(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_ut); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_15__setdelta_ut(PyObject *__pyx_v_self, PyObject *__pyx_v_delta_ut) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setdelta_ut (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_14__setdelta_ut(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_delta_ut)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_14__setdelta_ut(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_delta_ut) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setdelta_ut"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setdelta_ut", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":233 + /* "src/tpm_tpm.pxi":233 * * def __setdelta_ut(self, delta_ut): * self._tstate.delta_ut = delta_ut # <<<<<<<<<<<<<< * * delta_ut = property(__getdelta_ut, __setdelta_ut, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta_ut); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.delta_ut = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_delta_ut); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 233, __pyx_L1_error) + __pyx_v_self->_tstate.delta_ut = __pyx_t_1; + + /* "src/tpm_tpm.pxi":232 + * return self._tstate.delta_ut + * + * def __setdelta_ut(self, delta_ut): # <<<<<<<<<<<<<< + * self._tstate.delta_ut = delta_ut + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setdelta_ut"); + __Pyx_AddTraceback("tpm.TSTATE.__setdelta_ut", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19463,7 +28999,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_7__setdelta_ut(PyObject *__pyx_v_s return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":238 +/* "src/tpm_tpm.pxi":238 * doc="DELTA_UT = UT1 - UTC (s)") * * def __getlon(self): # <<<<<<<<<<<<<< @@ -19471,13 +29007,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_7__setdelta_ut(PyObject *__pyx_v_s * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_8__getlon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_8__getlon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_17__getlon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_17__getlon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getlon (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_16__getlon(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_16__getlon(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getlon"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getlon", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":239 + /* "src/tpm_tpm.pxi":239 * * def __getlon(self): * return self._tstate.lon # <<<<<<<<<<<<<< @@ -19485,17 +29037,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_8__getlon(PyObject *__pyx_v_self, * def __setlon(self, lon): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.lon); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.lon); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":238 + * doc="DELTA_UT = UT1 - UTC (s)") + * + * def __getlon(self): # <<<<<<<<<<<<<< + * return self._tstate.lon + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getlon"); + __Pyx_AddTraceback("tpm.TSTATE.__getlon", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19503,7 +29062,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_8__getlon(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":241 +/* "src/tpm_tpm.pxi":241 * return self._tstate.lon * * def __setlon(self, lon): # <<<<<<<<<<<<<< @@ -19511,34 +29070,59 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_8__getlon(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_9__setlon(PyObject *__pyx_v_self, PyObject *__pyx_v_lon); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_9__setlon(PyObject *__pyx_v_self, PyObject *__pyx_v_lon) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_19__setlon(PyObject *__pyx_v_self, PyObject *__pyx_v_lon); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_19__setlon(PyObject *__pyx_v_self, PyObject *__pyx_v_lon) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setlon (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_18__setlon(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_lon)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_18__setlon(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_lon) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setlon"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setlon", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":242 + /* "src/tpm_tpm.pxi":242 * * def __setlon(self, lon): * self._tstate.lon = lon # <<<<<<<<<<<<<< * * lon = property(__getlon, __setlon, doc= */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_lon); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 242; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.lon = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_lon); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 242, __pyx_L1_error) + __pyx_v_self->_tstate.lon = __pyx_t_1; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setlon"); - __pyx_r = NULL; + /* "src/tpm_tpm.pxi":241 + * return self._tstate.lon + * + * def __setlon(self, lon): # <<<<<<<<<<<<<< + * self._tstate.lon = lon + * + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_AddTraceback("tpm.TSTATE.__setlon", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":247 +/* "src/tpm_tpm.pxi":247 * "East longitude in radians.") * * def __getlat(self): # <<<<<<<<<<<<<< @@ -19546,13 +29130,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_9__setlon(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_10__getlat(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_10__getlat(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_21__getlat(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_21__getlat(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getlat (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_20__getlat(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_20__getlat(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getlat"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getlat", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":248 + /* "src/tpm_tpm.pxi":248 * * def __getlat(self): * return self._tstate.lat # <<<<<<<<<<<<<< @@ -19560,17 +29160,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_10__getlat(PyObject *__pyx_v_self, * def __setlat(self, lat): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.lat); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.lat); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 248, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":247 + * "East longitude in radians.") + * + * def __getlat(self): # <<<<<<<<<<<<<< + * return self._tstate.lat + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getlat"); + __Pyx_AddTraceback("tpm.TSTATE.__getlat", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19578,7 +29185,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_10__getlat(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":250 +/* "src/tpm_tpm.pxi":250 * return self._tstate.lat * * def __setlat(self, lat): # <<<<<<<<<<<<<< @@ -19586,26 +29193,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_10__getlat(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_11__setlat(PyObject *__pyx_v_self, PyObject *__pyx_v_lat); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_11__setlat(PyObject *__pyx_v_self, PyObject *__pyx_v_lat) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_23__setlat(PyObject *__pyx_v_self, PyObject *__pyx_v_lat); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_23__setlat(PyObject *__pyx_v_self, PyObject *__pyx_v_lat) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setlat (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_22__setlat(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_lat)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_22__setlat(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_lat) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setlat"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setlat", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":251 + /* "src/tpm_tpm.pxi":251 * * def __setlat(self, lat): * self._tstate.lat = lat # <<<<<<<<<<<<<< * * lat = property(__getlat, __setlat, doc= */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.lat = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 251, __pyx_L1_error) + __pyx_v_self->_tstate.lat = __pyx_t_1; + + /* "src/tpm_tpm.pxi":250 + * return self._tstate.lat + * + * def __setlat(self, lat): # <<<<<<<<<<<<<< + * self._tstate.lat = lat + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setlat"); + __Pyx_AddTraceback("tpm.TSTATE.__setlat", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19613,7 +29245,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_11__setlat(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":256 +/* "src/tpm_tpm.pxi":256 * "Latitude in radians.") * * def __getalt(self): # <<<<<<<<<<<<<< @@ -19621,13 +29253,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_11__setlat(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_12__getalt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_12__getalt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_25__getalt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_25__getalt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getalt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_24__getalt(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_24__getalt(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getalt"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getalt", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":257 + /* "src/tpm_tpm.pxi":257 * * def __getalt(self): * return self._tstate.alt # <<<<<<<<<<<<<< @@ -19635,17 +29283,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_12__getalt(PyObject *__pyx_v_self, * def __setalt(self, alt): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.alt); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.alt); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 257, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":256 + * "Latitude in radians.") + * + * def __getalt(self): # <<<<<<<<<<<<<< + * return self._tstate.alt + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getalt"); + __Pyx_AddTraceback("tpm.TSTATE.__getalt", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19653,7 +29308,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_12__getalt(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":259 +/* "src/tpm_tpm.pxi":259 * return self._tstate.alt * * def __setalt(self, alt): # <<<<<<<<<<<<<< @@ -19661,26 +29316,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_12__getalt(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_13__setalt(PyObject *__pyx_v_self, PyObject *__pyx_v_alt); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_13__setalt(PyObject *__pyx_v_self, PyObject *__pyx_v_alt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_27__setalt(PyObject *__pyx_v_self, PyObject *__pyx_v_alt); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_27__setalt(PyObject *__pyx_v_self, PyObject *__pyx_v_alt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setalt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_26__setalt(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_alt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_26__setalt(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_alt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setalt"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setalt", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":260 + /* "src/tpm_tpm.pxi":260 * * def __setalt(self, alt): * self._tstate.alt = alt # <<<<<<<<<<<<<< * * alt = property(__getalt, __setalt, doc= */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.alt = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 260, __pyx_L1_error) + __pyx_v_self->_tstate.alt = __pyx_t_1; + /* "src/tpm_tpm.pxi":259 + * return self._tstate.alt + * + * def __setalt(self, alt): # <<<<<<<<<<<<<< + * self._tstate.alt = alt + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setalt"); + __Pyx_AddTraceback("tpm.TSTATE.__setalt", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19688,7 +29368,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_13__setalt(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":265 +/* "src/tpm_tpm.pxi":265 * "Altitude above geoid in meters.") * * def __getxpole(self): # <<<<<<<<<<<<<< @@ -19696,13 +29376,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_13__setalt(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_14__getxpole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_14__getxpole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_29__getxpole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_29__getxpole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getxpole (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_28__getxpole(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_28__getxpole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getxpole"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getxpole", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":266 + /* "src/tpm_tpm.pxi":266 * * def __getxpole(self): * return self._tstate.xpole # <<<<<<<<<<<<<< @@ -19710,17 +29406,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_14__getxpole(PyObject *__pyx_v_sel * def __setxpole(self, xpole): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.xpole); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 266; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.xpole); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":265 + * "Altitude above geoid in meters.") + * + * def __getxpole(self): # <<<<<<<<<<<<<< + * return self._tstate.xpole + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getxpole"); + __Pyx_AddTraceback("tpm.TSTATE.__getxpole", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19728,7 +29431,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_14__getxpole(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":268 +/* "src/tpm_tpm.pxi":268 * return self._tstate.xpole * * def __setxpole(self, xpole): # <<<<<<<<<<<<<< @@ -19736,26 +29439,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_14__getxpole(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_15__setxpole(PyObject *__pyx_v_self, PyObject *__pyx_v_xpole); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_15__setxpole(PyObject *__pyx_v_self, PyObject *__pyx_v_xpole) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_31__setxpole(PyObject *__pyx_v_self, PyObject *__pyx_v_xpole); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_31__setxpole(PyObject *__pyx_v_self, PyObject *__pyx_v_xpole) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setxpole (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_30__setxpole(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_xpole)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_30__setxpole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_xpole) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setxpole"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setxpole", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":269 + /* "src/tpm_tpm.pxi":269 * * def __setxpole(self, xpole): * self._tstate.xpole = xpole # <<<<<<<<<<<<<< * * xpole = property(__getxpole, __setxpole, doc= */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xpole); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.xpole = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_xpole); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 269, __pyx_L1_error) + __pyx_v_self->_tstate.xpole = __pyx_t_1; + + /* "src/tpm_tpm.pxi":268 + * return self._tstate.xpole + * + * def __setxpole(self, xpole): # <<<<<<<<<<<<<< + * self._tstate.xpole = xpole + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setxpole"); + __Pyx_AddTraceback("tpm.TSTATE.__setxpole", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19763,7 +29491,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_15__setxpole(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":274 +/* "src/tpm_tpm.pxi":274 * "Polar motion in radians.") * * def __getypole(self): # <<<<<<<<<<<<<< @@ -19771,13 +29499,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_15__setxpole(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_16__getypole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_16__getypole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_33__getypole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_33__getypole(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getypole (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_32__getypole(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_32__getypole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getypole"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getypole", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":275 + /* "src/tpm_tpm.pxi":275 * * def __getypole(self): * return self._tstate.ypole # <<<<<<<<<<<<<< @@ -19785,17 +29529,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_16__getypole(PyObject *__pyx_v_sel * def __setypole(self, ypole): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.ypole); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.ypole); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":274 + * "Polar motion in radians.") + * + * def __getypole(self): # <<<<<<<<<<<<<< + * return self._tstate.ypole + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getypole"); + __Pyx_AddTraceback("tpm.TSTATE.__getypole", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19803,7 +29554,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_16__getypole(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":277 +/* "src/tpm_tpm.pxi":277 * return self._tstate.ypole * * def __setypole(self, ypole): # <<<<<<<<<<<<<< @@ -19811,26 +29562,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_16__getypole(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_17__setypole(PyObject *__pyx_v_self, PyObject *__pyx_v_ypole); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_17__setypole(PyObject *__pyx_v_self, PyObject *__pyx_v_ypole) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_35__setypole(PyObject *__pyx_v_self, PyObject *__pyx_v_ypole); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_35__setypole(PyObject *__pyx_v_self, PyObject *__pyx_v_ypole) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setypole (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_34__setypole(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_ypole)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_34__setypole(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_ypole) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setypole"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setypole", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":278 + /* "src/tpm_tpm.pxi":278 * * def __setypole(self, ypole): * self._tstate.ypole = ypole # <<<<<<<<<<<<<< * * ypole = property(__getypole, __setypole, doc= */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ypole); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.ypole = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ypole); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 278, __pyx_L1_error) + __pyx_v_self->_tstate.ypole = __pyx_t_1; + + /* "src/tpm_tpm.pxi":277 + * return self._tstate.ypole + * + * def __setypole(self, ypole): # <<<<<<<<<<<<<< + * self._tstate.ypole = ypole + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setypole"); + __Pyx_AddTraceback("tpm.TSTATE.__setypole", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19838,7 +29614,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_17__setypole(PyObject *__pyx_v_sel return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":283 +/* "src/tpm_tpm.pxi":283 * "Polar motion in radians.") * * def __getT(self): # <<<<<<<<<<<<<< @@ -19846,13 +29622,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_17__setypole(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_18__getT(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_18__getT(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_37__getT(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_37__getT(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getT (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_36__getT(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_36__getT(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getT"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getT", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":284 + /* "src/tpm_tpm.pxi":284 * * def __getT(self): * return self._tstate.T # <<<<<<<<<<<<<< @@ -19860,17 +29652,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_18__getT(PyObject *__pyx_v_self, C * def __setT(self, T): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.T); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.T); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":283 + * "Polar motion in radians.") + * + * def __getT(self): # <<<<<<<<<<<<<< + * return self._tstate.T + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getT"); + __Pyx_AddTraceback("tpm.TSTATE.__getT", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19878,7 +29677,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_18__getT(PyObject *__pyx_v_self, C return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":286 +/* "src/tpm_tpm.pxi":286 * return self._tstate.T * * def __setT(self, T): # <<<<<<<<<<<<<< @@ -19886,26 +29685,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_18__getT(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_19__setT(PyObject *__pyx_v_self, PyObject *__pyx_v_T); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_19__setT(PyObject *__pyx_v_self, PyObject *__pyx_v_T) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_39__setT(PyObject *__pyx_v_self, PyObject *__pyx_v_T); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_39__setT(PyObject *__pyx_v_self, PyObject *__pyx_v_T) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setT (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_38__setT(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_T)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_38__setT(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_T) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setT"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setT", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":287 + /* "src/tpm_tpm.pxi":287 * * def __setT(self, T): * self._tstate.T = T # <<<<<<<<<<<<<< * * T = property(__getT, __setT, doc="Ambient temperature in Kelvins.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_T); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.T = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_T); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 287, __pyx_L1_error) + __pyx_v_self->_tstate.T = __pyx_t_1; + + /* "src/tpm_tpm.pxi":286 + * return self._tstate.T + * + * def __setT(self, T): # <<<<<<<<<<<<<< + * self._tstate.T = T + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setT"); + __Pyx_AddTraceback("tpm.TSTATE.__setT", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19913,7 +29737,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_19__setT(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":291 +/* "src/tpm_tpm.pxi":291 * T = property(__getT, __setT, doc="Ambient temperature in Kelvins.") * * def __getP(self): # <<<<<<<<<<<<<< @@ -19921,13 +29745,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_19__setT(PyObject *__pyx_v_self, P * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_20__getP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_20__getP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_41__getP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_41__getP(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getP (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_40__getP(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_40__getP(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getP"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getP", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":292 + /* "src/tpm_tpm.pxi":292 * * def __getP(self): * return self._tstate.P # <<<<<<<<<<<<<< @@ -19935,17 +29775,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_20__getP(PyObject *__pyx_v_self, C * def __setP(self, P): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.P); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.P); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":291 + * T = property(__getT, __setT, doc="Ambient temperature in Kelvins.") + * + * def __getP(self): # <<<<<<<<<<<<<< + * return self._tstate.P + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getP"); + __Pyx_AddTraceback("tpm.TSTATE.__getP", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19953,7 +29800,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_20__getP(PyObject *__pyx_v_self, C return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":294 +/* "src/tpm_tpm.pxi":294 * return self._tstate.P * * def __setP(self, P): # <<<<<<<<<<<<<< @@ -19961,26 +29808,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_20__getP(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_21__setP(PyObject *__pyx_v_self, PyObject *__pyx_v_P); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_21__setP(PyObject *__pyx_v_self, PyObject *__pyx_v_P) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_43__setP(PyObject *__pyx_v_self, PyObject *__pyx_v_P); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_43__setP(PyObject *__pyx_v_self, PyObject *__pyx_v_P) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setP (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_42__setP(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_P)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_42__setP(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_P) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setP"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setP", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":295 + /* "src/tpm_tpm.pxi":295 * * def __setP(self, P): * self._tstate.P = P # <<<<<<<<<<<<<< * * P = property(__getP, __setP, doc="Ambient pressure in millibars.") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_P); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.P = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_P); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 295, __pyx_L1_error) + __pyx_v_self->_tstate.P = __pyx_t_1; + /* "src/tpm_tpm.pxi":294 + * return self._tstate.P + * + * def __setP(self, P): # <<<<<<<<<<<<<< + * self._tstate.P = P + * + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setP"); + __Pyx_AddTraceback("tpm.TSTATE.__setP", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -19988,7 +29860,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_21__setP(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":299 +/* "src/tpm_tpm.pxi":299 * P = property(__getP, __setP, doc="Ambient pressure in millibars.") * * def __getH(self): # <<<<<<<<<<<<<< @@ -19996,13 +29868,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_21__setP(PyObject *__pyx_v_self, P * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_22__getH(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_22__getH(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_45__getH(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_45__getH(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getH (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_44__getH(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_44__getH(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getH"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getH", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":300 + /* "src/tpm_tpm.pxi":300 * * def __getH(self): * return self._tstate.H # <<<<<<<<<<<<<< @@ -20010,17 +29898,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_22__getH(PyObject *__pyx_v_self, C * def __setH(self, H): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.H); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.H); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 300, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":299 + * P = property(__getP, __setP, doc="Ambient pressure in millibars.") + * + * def __getH(self): # <<<<<<<<<<<<<< + * return self._tstate.H + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getH"); + __Pyx_AddTraceback("tpm.TSTATE.__getH", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20028,7 +29923,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_22__getH(PyObject *__pyx_v_self, C return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":302 +/* "src/tpm_tpm.pxi":302 * return self._tstate.H * * def __setH(self, H): # <<<<<<<<<<<<<< @@ -20036,26 +29931,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_22__getH(PyObject *__pyx_v_self, C * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_23__setH(PyObject *__pyx_v_self, PyObject *__pyx_v_H); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_23__setH(PyObject *__pyx_v_self, PyObject *__pyx_v_H) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_47__setH(PyObject *__pyx_v_self, PyObject *__pyx_v_H); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_47__setH(PyObject *__pyx_v_self, PyObject *__pyx_v_H) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setH (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_46__setH(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_H)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_46__setH(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_H) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setH"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setH", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":303 + /* "src/tpm_tpm.pxi":303 * * def __setH(self, H): * self._tstate.H = H # <<<<<<<<<<<<<< * * H = property(__getH, __setH, doc="Ambient humidity (0-1).") */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_H); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 303; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.H = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_H); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 303, __pyx_L1_error) + __pyx_v_self->_tstate.H = __pyx_t_1; + + /* "src/tpm_tpm.pxi":302 + * return self._tstate.H + * + * def __setH(self, H): # <<<<<<<<<<<<<< + * self._tstate.H = H + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setH"); + __Pyx_AddTraceback("tpm.TSTATE.__setH", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20063,7 +29983,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_23__setH(PyObject *__pyx_v_self, P return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":307 +/* "src/tpm_tpm.pxi":307 * H = property(__getH, __setH, doc="Ambient humidity (0-1).") * * def __getwavelength(self): # <<<<<<<<<<<<<< @@ -20071,13 +29991,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_23__setH(PyObject *__pyx_v_self, P * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_24__getwavelength(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_24__getwavelength(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_49__getwavelength(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_49__getwavelength(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getwavelength (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_48__getwavelength(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_48__getwavelength(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getwavelength"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getwavelength", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":308 + /* "src/tpm_tpm.pxi":308 * * def __getwavelength(self): * return self._tstate.wavelength # <<<<<<<<<<<<<< @@ -20085,17 +30021,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_24__getwavelength(PyObject *__pyx_ * def __setwavelength(self, wavelength): */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.wavelength); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.wavelength); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 308, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":307 + * H = property(__getH, __setH, doc="Ambient humidity (0-1).") + * + * def __getwavelength(self): # <<<<<<<<<<<<<< + * return self._tstate.wavelength + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getwavelength"); + __Pyx_AddTraceback("tpm.TSTATE.__getwavelength", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20103,7 +30046,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_24__getwavelength(PyObject *__pyx_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":310 +/* "src/tpm_tpm.pxi":310 * return self._tstate.wavelength * * def __setwavelength(self, wavelength): # <<<<<<<<<<<<<< @@ -20111,26 +30054,51 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_24__getwavelength(PyObject *__pyx_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_25__setwavelength(PyObject *__pyx_v_self, PyObject *__pyx_v_wavelength); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_25__setwavelength(PyObject *__pyx_v_self, PyObject *__pyx_v_wavelength) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_51__setwavelength(PyObject *__pyx_v_self, PyObject *__pyx_v_wavelength); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_51__setwavelength(PyObject *__pyx_v_self, PyObject *__pyx_v_wavelength) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setwavelength (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_50__setwavelength(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v_wavelength)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_50__setwavelength(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, PyObject *__pyx_v_wavelength) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; - __Pyx_RefNannySetupContext("__setwavelength"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setwavelength", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":311 + /* "src/tpm_tpm.pxi":311 * * def __setwavelength(self, wavelength): * self._tstate.wavelength = wavelength # <<<<<<<<<<<<<< * * wavelength = property(__getwavelength, __setwavelength, */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_wavelength); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.wavelength = __pyx_t_1; + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_wavelength); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(4, 311, __pyx_L1_error) + __pyx_v_self->_tstate.wavelength = __pyx_t_1; + + /* "src/tpm_tpm.pxi":310 + * return self._tstate.wavelength + * + * def __setwavelength(self, wavelength): # <<<<<<<<<<<<<< + * self._tstate.wavelength = wavelength + * + */ + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__setwavelength"); + __Pyx_AddTraceback("tpm.TSTATE.__setwavelength", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20138,7 +30106,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_25__setwavelength(PyObject *__pyx_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":316 +/* "src/tpm_tpm.pxi":316 * doc="Observing wavelength in microns.") * * def __gettai(self): # <<<<<<<<<<<<<< @@ -20146,13 +30114,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_25__setwavelength(PyObject *__pyx_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_26__gettai(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_26__gettai(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_53__gettai(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_53__gettai(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gettai (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_52__gettai(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_52__gettai(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gettai"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gettai", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":317 + /* "src/tpm_tpm.pxi":317 * * def __gettai(self): * return self._tstate.tai # <<<<<<<<<<<<<< @@ -20160,17 +30144,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_26__gettai(PyObject *__pyx_v_self, * tai = property(__gettai, doc="International Atomic Time.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.tai); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.tai); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":316 + * doc="Observing wavelength in microns.") + * + * def __gettai(self): # <<<<<<<<<<<<<< + * return self._tstate.tai + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__gettai"); + __Pyx_AddTraceback("tpm.TSTATE.__gettai", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20178,7 +30169,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_26__gettai(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":321 +/* "src/tpm_tpm.pxi":321 * tai = property(__gettai, doc="International Atomic Time.") * * def __gettdt(self): # <<<<<<<<<<<<<< @@ -20186,13 +30177,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_26__gettai(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_27__gettdt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_27__gettdt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_55__gettdt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_55__gettdt(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gettdt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_54__gettdt(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_54__gettdt(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gettdt"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gettdt", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":322 + /* "src/tpm_tpm.pxi":322 * * def __gettdt(self): * return self._tstate.tdt # <<<<<<<<<<<<<< @@ -20200,17 +30207,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_27__gettdt(PyObject *__pyx_v_self, * tdt = property(__gettdt, */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.tdt); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.tdt); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":321 + * tai = property(__gettai, doc="International Atomic Time.") + * + * def __gettdt(self): # <<<<<<<<<<<<<< + * return self._tstate.tdt + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__gettdt"); + __Pyx_AddTraceback("tpm.TSTATE.__gettdt", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20218,7 +30232,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_27__gettdt(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":327 +/* "src/tpm_tpm.pxi":327 * doc="Terrestrial Dynamic Time (Terrestrial Time).") * * def __gettdb(self): # <<<<<<<<<<<<<< @@ -20226,13 +30240,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_27__gettdt(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_28__gettdb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_28__gettdb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_57__gettdb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_57__gettdb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__gettdb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_56__gettdb(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_56__gettdb(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__gettdb"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__gettdb", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":328 + /* "src/tpm_tpm.pxi":328 * * def __gettdb(self): * return self._tstate.tdb # <<<<<<<<<<<<<< @@ -20240,17 +30270,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_28__gettdb(PyObject *__pyx_v_self, * tdb = property(__gettdb, doc="Barycentric Dynamic Time.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.tdb); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.tdb); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__gettdb"); + /* "src/tpm_tpm.pxi":327 + * doc="Terrestrial Dynamic Time (Terrestrial Time).") + * + * def __gettdb(self): # <<<<<<<<<<<<<< + * return self._tstate.tdb + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.TSTATE.__gettdb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20258,7 +30295,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_28__gettdb(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":332 +/* "src/tpm_tpm.pxi":332 * tdb = property(__gettdb, doc="Barycentric Dynamic Time.") * * def __getobliquity(self): # <<<<<<<<<<<<<< @@ -20266,13 +30303,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_28__gettdb(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_29__getobliquity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_29__getobliquity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_59__getobliquity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_59__getobliquity(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getobliquity (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_58__getobliquity(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_58__getobliquity(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getobliquity"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getobliquity", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":333 + /* "src/tpm_tpm.pxi":333 * * def __getobliquity(self): * return self._tstate.obliquity # <<<<<<<<<<<<<< @@ -20280,17 +30333,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_29__getobliquity(PyObject *__pyx_v * obliquity = property(__getobliquity, doc= */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.obliquity); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.obliquity); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 333, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":332 + * tdb = property(__gettdb, doc="Barycentric Dynamic Time.") + * + * def __getobliquity(self): # <<<<<<<<<<<<<< + * return self._tstate.obliquity + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getobliquity"); + __Pyx_AddTraceback("tpm.TSTATE.__getobliquity", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20298,7 +30358,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_29__getobliquity(PyObject *__pyx_v return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":338 +/* "src/tpm_tpm.pxi":338 * "Obliquity of the Ecliptic.") * * def __getnut_lon(self): # <<<<<<<<<<<<<< @@ -20306,13 +30366,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_29__getobliquity(PyObject *__pyx_v * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_30__getnut_lon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_30__getnut_lon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_61__getnut_lon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_61__getnut_lon(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getnut_lon (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_60__getnut_lon(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_60__getnut_lon(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getnut_lon"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getnut_lon", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":339 + /* "src/tpm_tpm.pxi":339 * * def __getnut_lon(self): * return self._tstate.nut_lon # <<<<<<<<<<<<<< @@ -20320,17 +30396,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_30__getnut_lon(PyObject *__pyx_v_s * nut_lon = property(__getnut_lon, doc="Nutation in longitude.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.nut_lon); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.nut_lon); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 339, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":338 + * "Obliquity of the Ecliptic.") + * + * def __getnut_lon(self): # <<<<<<<<<<<<<< + * return self._tstate.nut_lon + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getnut_lon"); + __Pyx_AddTraceback("tpm.TSTATE.__getnut_lon", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20338,7 +30421,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_30__getnut_lon(PyObject *__pyx_v_s return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":343 +/* "src/tpm_tpm.pxi":343 * nut_lon = property(__getnut_lon, doc="Nutation in longitude.") * * def __getnut_obl(self): # <<<<<<<<<<<<<< @@ -20346,13 +30429,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_30__getnut_lon(PyObject *__pyx_v_s * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_31__getnut_obl(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_31__getnut_obl(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_63__getnut_obl(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_63__getnut_obl(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getnut_obl (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_62__getnut_obl(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_62__getnut_obl(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getnut_obl"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getnut_obl", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":344 + /* "src/tpm_tpm.pxi":344 * * def __getnut_obl(self): * return self._tstate.nut_obl # <<<<<<<<<<<<<< @@ -20360,17 +30459,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_31__getnut_obl(PyObject *__pyx_v_s * nut_obl = property(__getnut_obl, doc="Nutation in obliquity.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.nut_obl); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.nut_obl); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":343 + * nut_lon = property(__getnut_lon, doc="Nutation in longitude.") + * + * def __getnut_obl(self): # <<<<<<<<<<<<<< + * return self._tstate.nut_obl + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getnut_obl"); + __Pyx_AddTraceback("tpm.TSTATE.__getnut_obl", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20378,7 +30484,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_31__getnut_obl(PyObject *__pyx_v_s return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":348 +/* "src/tpm_tpm.pxi":348 * nut_obl = property(__getnut_obl, doc="Nutation in obliquity.") * * def __getnm(self): # <<<<<<<<<<<<<< @@ -20386,39 +30492,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_31__getnut_obl(PyObject *__pyx_v_s * m3.setM3(self._tstate.nm) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_32__getnm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_32__getnm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M3 *__pyx_v_m3; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_65__getnm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_65__getnm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getnm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_64__getnm(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_64__getnm(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_M3 *__pyx_v_m3 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getnm"); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getnm", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":349 + /* "src/tpm_tpm.pxi":349 * * def __getnm(self): * m3 = M3() # <<<<<<<<<<<<<< * m3.setM3(self._tstate.nm) * return m3 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M3)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M3)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m3)); - __pyx_v_m3 = ((struct __pyx_obj_5pytpm_3tpm_M3 *)__pyx_t_1); + __pyx_v_m3 = ((struct __pyx_obj_3tpm_M3 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":350 + /* "src/tpm_tpm.pxi":350 * def __getnm(self): * m3 = M3() * m3.setM3(self._tstate.nm) # <<<<<<<<<<<<<< * return m3 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.nm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M3 *)__pyx_v_m3->__pyx_vtab)->setM3(__pyx_v_m3, __pyx_v_self->_tstate.nm); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":351 + /* "src/tpm_tpm.pxi":351 * m3 = M3() * m3.setM3(self._tstate.nm) * return m3 # <<<<<<<<<<<<<< @@ -20430,20 +30550,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_32__getnm(PyObject *__pyx_v_self, __pyx_r = ((PyObject *)__pyx_v_m3); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":348 + * nut_obl = property(__getnut_obl, doc="Nutation in obliquity.") + * + * def __getnm(self): # <<<<<<<<<<<<<< + * m3 = M3() + * m3.setM3(self._tstate.nm) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getnm"); + __Pyx_AddTraceback("tpm.TSTATE.__getnm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m3); + __Pyx_XDECREF((PyObject *)__pyx_v_m3); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":355 +/* "src/tpm_tpm.pxi":355 * nm = property(__getnm, doc="Nutation matrix for NOW.") * * def __getpm(self): # <<<<<<<<<<<<<< @@ -20451,39 +30578,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_32__getnm(PyObject *__pyx_v_self, * m6.setM6(self._tstate.pm) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_33__getpm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_33__getpm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_67__getpm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_67__getpm(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getpm (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_66__getpm(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_66__getpm(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getpm"); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getpm", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":356 + /* "src/tpm_tpm.pxi":356 * * def __getpm(self): * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(self._tstate.pm) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":357 + /* "src/tpm_tpm.pxi":357 * def __getpm(self): * m6 = M6() * m6.setM6(self._tstate.pm) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.pm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, __pyx_v_self->_tstate.pm); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":358 + /* "src/tpm_tpm.pxi":358 * m6 = M6() * m6.setM6(self._tstate.pm) * return m6 # <<<<<<<<<<<<<< @@ -20495,20 +30636,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_33__getpm(PyObject *__pyx_v_self, __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":355 + * nm = property(__getnm, doc="Nutation matrix for NOW.") + * + * def __getpm(self): # <<<<<<<<<<<<<< + * m6 = M6() + * m6.setM6(self._tstate.pm) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getpm"); + __Pyx_AddTraceback("tpm.TSTATE.__getpm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":362 +/* "src/tpm_tpm.pxi":362 * pm = property(__getpm, doc="Precession matrix from J2000 to NOW.") * * def __getut1(self): # <<<<<<<<<<<<<< @@ -20516,13 +30664,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_33__getpm(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_34__getut1(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_34__getut1(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_69__getut1(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_69__getut1(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getut1 (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_68__getut1(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_68__getut1(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getut1"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getut1", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":363 + /* "src/tpm_tpm.pxi":363 * * def __getut1(self): * return self._tstate.ut1 # <<<<<<<<<<<<<< @@ -20530,17 +30694,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_34__getut1(PyObject *__pyx_v_self, * ut1 = property(__getut1, doc="Universal time.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.ut1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.ut1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":362 + * pm = property(__getpm, doc="Precession matrix from J2000 to NOW.") + * + * def __getut1(self): # <<<<<<<<<<<<<< + * return self._tstate.ut1 + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getut1"); + __Pyx_AddTraceback("tpm.TSTATE.__getut1", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20548,7 +30719,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_34__getut1(PyObject *__pyx_v_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":367 +/* "src/tpm_tpm.pxi":367 * ut1 = property(__getut1, doc="Universal time.") * * def __getgmst(self): # <<<<<<<<<<<<<< @@ -20556,13 +30727,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_34__getut1(PyObject *__pyx_v_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_35__getgmst(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_35__getgmst(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_71__getgmst(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_71__getgmst(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getgmst (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_70__getgmst(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_70__getgmst(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getgmst"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getgmst", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":368 + /* "src/tpm_tpm.pxi":368 * * def __getgmst(self): * return self._tstate.gmst # <<<<<<<<<<<<<< @@ -20570,17 +30757,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_35__getgmst(PyObject *__pyx_v_self * gmst = property(__getgmst, doc="Greewich Mean Sidereal Time.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.gmst); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.gmst); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":367 + * ut1 = property(__getut1, doc="Universal time.") + * + * def __getgmst(self): # <<<<<<<<<<<<<< + * return self._tstate.gmst + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getgmst"); + __Pyx_AddTraceback("tpm.TSTATE.__getgmst", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20588,7 +30782,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_35__getgmst(PyObject *__pyx_v_self return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":372 +/* "src/tpm_tpm.pxi":372 * gmst = property(__getgmst, doc="Greewich Mean Sidereal Time.") * * def __getgast(self): # <<<<<<<<<<<<<< @@ -20596,13 +30790,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_35__getgmst(PyObject *__pyx_v_self * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_36__getgast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_36__getgast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_73__getgast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_73__getgast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getgast (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_72__getgast(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_72__getgast(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getgast"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getgast", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":373 + /* "src/tpm_tpm.pxi":373 * * def __getgast(self): * return self._tstate.gast # <<<<<<<<<<<<<< @@ -20610,17 +30820,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_36__getgast(PyObject *__pyx_v_self * gast = property(__getgast, doc="Greewich Apparent Sidereal Time.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.gast); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 373; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.gast); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 373, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":372 + * gmst = property(__getgmst, doc="Greewich Mean Sidereal Time.") + * + * def __getgast(self): # <<<<<<<<<<<<<< + * return self._tstate.gast + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getgast"); + __Pyx_AddTraceback("tpm.TSTATE.__getgast", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20628,7 +30845,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_36__getgast(PyObject *__pyx_v_self return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":377 +/* "src/tpm_tpm.pxi":377 * gast = property(__getgast, doc="Greewich Apparent Sidereal Time.") * * def __getlast(self): # <<<<<<<<<<<<<< @@ -20636,13 +30853,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_36__getgast(PyObject *__pyx_v_self * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_37__getlast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_37__getlast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_75__getlast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_75__getlast(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getlast (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_74__getlast(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_74__getlast(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getlast"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getlast", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":378 + /* "src/tpm_tpm.pxi":378 * * def __getlast(self): * return self._tstate.last # <<<<<<<<<<<<<< @@ -20650,17 +30883,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_37__getlast(PyObject *__pyx_v_self * last = property(__getlast, doc="Local Apparent Sidereal Time.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.last); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.last); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 378, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":377 + * gast = property(__getgast, doc="Greewich Apparent Sidereal Time.") + * + * def __getlast(self): # <<<<<<<<<<<<<< + * return self._tstate.last + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getlast"); + __Pyx_AddTraceback("tpm.TSTATE.__getlast", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -20668,7 +30908,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_37__getlast(PyObject *__pyx_v_self return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":382 +/* "src/tpm_tpm.pxi":382 * last = property(__getlast, doc="Local Apparent Sidereal Time.") * * def __geteb(self): # <<<<<<<<<<<<<< @@ -20676,39 +30916,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_37__getlast(PyObject *__pyx_v_self * v6.setV6(self._tstate.eb) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_38__geteb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_38__geteb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_77__geteb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_77__geteb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__geteb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_76__geteb(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_76__geteb(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__geteb"); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__geteb", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":383 + /* "src/tpm_tpm.pxi":383 * * def __geteb(self): * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(self._tstate.eb) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 383, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":384 + /* "src/tpm_tpm.pxi":384 * def __geteb(self): * v6 = V6C() * v6.setV6(self._tstate.eb) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.eb); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), __pyx_v_self->_tstate.eb); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 384, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":385 + /* "src/tpm_tpm.pxi":385 * v6 = V6C() * v6.setV6(self._tstate.eb) * return v6 # <<<<<<<<<<<<<< @@ -20720,20 +30974,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_38__geteb(PyObject *__pyx_v_self, __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":382 + * last = property(__getlast, doc="Local Apparent Sidereal Time.") + * + * def __geteb(self): # <<<<<<<<<<<<<< + * v6 = V6C() + * v6.setV6(self._tstate.eb) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__geteb"); + __Pyx_AddTraceback("tpm.TSTATE.__geteb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":389 +/* "src/tpm_tpm.pxi":389 * eb = property(__geteb, doc="Barycentric Earth state vector.") * * def __geteh(self): # <<<<<<<<<<<<<< @@ -20741,39 +31002,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_38__geteb(PyObject *__pyx_v_self, * v6.setV6(self._tstate.eh) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_39__geteh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_39__geteh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_79__geteh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_79__geteh(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__geteh (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_78__geteh(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_78__geteh(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__geteh"); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__geteh", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":390 + /* "src/tpm_tpm.pxi":390 * * def __geteh(self): * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(self._tstate.eh) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 390; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 390, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":391 + /* "src/tpm_tpm.pxi":391 * def __geteh(self): * v6 = V6C() * v6.setV6(self._tstate.eh) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.eh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 391; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), __pyx_v_self->_tstate.eh); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":392 + /* "src/tpm_tpm.pxi":392 * v6 = V6C() * v6.setV6(self._tstate.eh) * return v6 # <<<<<<<<<<<<<< @@ -20785,20 +31060,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_39__geteh(PyObject *__pyx_v_self, __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":389 + * eb = property(__geteb, doc="Barycentric Earth state vector.") + * + * def __geteh(self): # <<<<<<<<<<<<<< + * v6 = V6C() + * v6.setV6(self._tstate.eh) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__geteh"); + __Pyx_AddTraceback("tpm.TSTATE.__geteh", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":396 +/* "src/tpm_tpm.pxi":396 * eh = property(__geteh, doc="Heliocentric Earth state vector.") * * def __getobs_m(self): # <<<<<<<<<<<<<< @@ -20806,39 +31088,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_39__geteh(PyObject *__pyx_v_self, * v6.setV6(self._tstate.obs_m) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_40__getobs_m(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_40__getobs_m(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_81__getobs_m(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_81__getobs_m(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getobs_m (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_80__getobs_m(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_80__getobs_m(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getobs_m"); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getobs_m", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":397 + /* "src/tpm_tpm.pxi":397 * * def __getobs_m(self): * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(self._tstate.obs_m) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 397, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":398 + /* "src/tpm_tpm.pxi":398 * def __getobs_m(self): * v6 = V6C() * v6.setV6(self._tstate.obs_m) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.obs_m); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), __pyx_v_self->_tstate.obs_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":399 + /* "src/tpm_tpm.pxi":399 * v6 = V6C() * v6.setV6(self._tstate.obs_m) * return v6 # <<<<<<<<<<<<<< @@ -20850,20 +31146,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_40__getobs_m(PyObject *__pyx_v_sel __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":396 + * eh = property(__geteh, doc="Heliocentric Earth state vector.") + * + * def __getobs_m(self): # <<<<<<<<<<<<<< + * v6 = V6C() + * v6.setV6(self._tstate.obs_m) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getobs_m"); + __Pyx_AddTraceback("tpm.TSTATE.__getobs_m", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":404 +/* "src/tpm_tpm.pxi":404 * "Geocentric Earth-fixed mean state vector.") * * def __getobs_t(self): # <<<<<<<<<<<<<< @@ -20871,39 +31174,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_40__getobs_m(PyObject *__pyx_v_sel * v6.setV6(self._tstate.obs_t) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_41__getobs_t(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_41__getobs_t(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_83__getobs_t(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_83__getobs_t(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getobs_t (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_82__getobs_t(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_82__getobs_t(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getobs_t"); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getobs_t", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":405 + /* "src/tpm_tpm.pxi":405 * * def __getobs_t(self): * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(self._tstate.obs_t) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 405, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":406 + /* "src/tpm_tpm.pxi":406 * def __getobs_t(self): * v6 = V6C() * v6.setV6(self._tstate.obs_t) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.obs_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 406; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), __pyx_v_self->_tstate.obs_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":407 + /* "src/tpm_tpm.pxi":407 * v6 = V6C() * v6.setV6(self._tstate.obs_t) * return v6 # <<<<<<<<<<<<<< @@ -20915,20 +31232,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_41__getobs_t(PyObject *__pyx_v_sel __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":404 + * "Geocentric Earth-fixed mean state vector.") + * + * def __getobs_t(self): # <<<<<<<<<<<<<< + * v6 = V6C() + * v6.setV6(self._tstate.obs_t) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getobs_t"); + __Pyx_AddTraceback("tpm.TSTATE.__getobs_t", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":412 +/* "src/tpm_tpm.pxi":412 * "Geocentric Earth-fixed true state vector.") * * def __getobs_s(self): # <<<<<<<<<<<<<< @@ -20936,39 +31260,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_41__getobs_t(PyObject *__pyx_v_sel * v6.setV6(self._tstate.obs_s) */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_42__getobs_s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_42__getobs_s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_85__getobs_s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_85__getobs_s(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getobs_s (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_84__getobs_s(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_84__getobs_s(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getobs_s"); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getobs_s", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":413 + /* "src/tpm_tpm.pxi":413 * * def __getobs_s(self): * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(self._tstate.obs_s) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 413, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":414 + /* "src/tpm_tpm.pxi":414 * def __getobs_s(self): * v6 = V6C() * v6.setV6(self._tstate.obs_s) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.obs_s); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), __pyx_v_self->_tstate.obs_s); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 414, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":415 + /* "src/tpm_tpm.pxi":415 * v6 = V6C() * v6.setV6(self._tstate.obs_s) * return v6 # <<<<<<<<<<<<<< @@ -20980,20 +31318,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_42__getobs_s(PyObject *__pyx_v_sel __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":412 + * "Geocentric Earth-fixed true state vector.") + * + * def __getobs_s(self): # <<<<<<<<<<<<<< + * v6 = V6C() + * v6.setV6(self._tstate.obs_s) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getobs_s"); + __Pyx_AddTraceback("tpm.TSTATE.__getobs_s", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":420 +/* "src/tpm_tpm.pxi":420 * "Geocentric space-fixed true state vector.") * * def __getrefa(self): # <<<<<<<<<<<<<< @@ -21001,13 +31346,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_42__getobs_s(PyObject *__pyx_v_sel * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_43__getrefa(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_43__getrefa(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_87__getrefa(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_87__getrefa(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getrefa (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_86__getrefa(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_86__getrefa(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getrefa"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getrefa", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":421 + /* "src/tpm_tpm.pxi":421 * * def __getrefa(self): * return self._tstate.refa # <<<<<<<<<<<<<< @@ -21015,17 +31376,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_43__getrefa(PyObject *__pyx_v_self * refa = property(__getrefa, doc="Refraction coefficient.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.refa); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.refa); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":420 + * "Geocentric space-fixed true state vector.") + * + * def __getrefa(self): # <<<<<<<<<<<<<< + * return self._tstate.refa + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getrefa"); + __Pyx_AddTraceback("tpm.TSTATE.__getrefa", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -21033,7 +31401,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_43__getrefa(PyObject *__pyx_v_self return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":425 +/* "src/tpm_tpm.pxi":425 * refa = property(__getrefa, doc="Refraction coefficient.") * * def __getrefb(self): # <<<<<<<<<<<<<< @@ -21041,13 +31409,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_43__getrefa(PyObject *__pyx_v_self * */ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_44__getrefb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_44__getrefb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_89__getrefb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_89__getrefb(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getrefb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_88__getrefb(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_88__getrefb(struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("__getrefb"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getrefb", 0); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":426 + /* "src/tpm_tpm.pxi":426 * * def __getrefb(self): * return self._tstate.refb # <<<<<<<<<<<<<< @@ -21055,17 +31439,24 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_44__getrefb(PyObject *__pyx_v_self * refb = property(__getrefb, doc="Refraction coefficient.") */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(((struct __pyx_obj_5pytpm_3tpm_TSTATE *)__pyx_v_self)->_tstate.refb); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(__pyx_v_self->_tstate.refb); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_tpm.pxi":425 + * refa = property(__getrefa, doc="Refraction coefficient.") + * + * def __getrefb(self): # <<<<<<<<<<<<<< + * return self._tstate.refb + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.TSTATE.__getrefb"); + __Pyx_AddTraceback("tpm.TSTATE.__getrefb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -21073,87 +31464,228 @@ static PyObject *__pyx_pf_5pytpm_3tpm_6TSTATE_44__getrefb(PyObject *__pyx_v_self return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":27 - * - * - * def tpm_data(TSTATE tstate, int action): # <<<<<<<<<<<<<< - * """Compute and set dependent TSTATE data. - * +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): */ -static PyObject *__pyx_pf_5pytpm_3tpm_45tpm_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_45tpm_data[] = "Compute and set dependent TSTATE data.\n\n Given a TSTATE and an action, this function will perform the action\n and set the various dependent properties of the TSTATE object.\n\n Parameters\n ----------\n tstate : tpm.TSTATE\n The TPM state structure to be changed.\n action : int\n The action to perform.\n\n Notes\n -----\n The `action` can be one of\n\n + ``TPM_INIT``\n Perform initialization.\n + ``TPM_FAST``\n Calculate all fast changing properties.\n + ``TPM_MEDIUM``\n Calculate all properties that change at a medium rate.\n + ``TPM_SLOW``\n Calculate all properties that change slowly.\n + ``TPM_REFRACTION``\n Cacluate refraction coefficients.\n + ``TPM_ALL``\n Perform all calculations except ``TPM_REFRACTION``.\n\n The TPM manual has more details on these quantities.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_45tpm_data = {__Pyx_NAMESTR("tpm_data"), (PyCFunction)__pyx_pf_5pytpm_3tpm_45tpm_data, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_45tpm_data)}; -static PyObject *__pyx_pf_5pytpm_3tpm_45tpm_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_TSTATE *__pyx_v_tstate = 0; - int __pyx_v_action; - PyObject *__pyx_r = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__tstate,&__pyx_n_s__action,0}; - __Pyx_RefNannySetupContext("tpm_data"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); - PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__tstate); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__action); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("tpm_data", 1, 2, 2, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "tpm_data") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_tstate = ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)values[0]); - __pyx_v_action = __Pyx_PyInt_AsInt(values[1]); if (unlikely((__pyx_v_action == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_tstate = ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_action = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_action == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("tpm_data", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.tpm_data"); +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_91__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_91__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_90__reduce_cython__(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self)); + + /* function exit code */ __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tstate), __pyx_ptype_5pytpm_3tpm_TSTATE, 1, "tstate", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":60 - * - * """ - * tpm_astro.tpm_data(&tstate._tstate, action) # <<<<<<<<<<<<<< +static PyObject *__pyx_pf_3tpm_6TSTATE_90__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_TSTATE *__pyx_v_self) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__27, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.TSTATE.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_6TSTATE_93__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_6TSTATE_93__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_6TSTATE_92__setstate_cython__(((struct __pyx_obj_3tpm_TSTATE *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_6TSTATE_92__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_TSTATE *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__28, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.TSTATE.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_astro.pxi":27 + * * + * def tpm_data(TSTATE tstate, int action): # <<<<<<<<<<<<<< + * """Compute and set dependent TSTATE data. * */ - tpm_data((&__pyx_v_tstate->_tstate), __pyx_v_action); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_91tpm_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_90tpm_data[] = "Compute and set dependent TSTATE data.\n\n Given a TSTATE and an action, this function will perform the action\n and set the various dependent properties of the TSTATE object.\n\n Parameters\n ----------\n tstate : tpm.TSTATE\n The TPM state structure to be changed.\n action : int\n The action to perform.\n\n Notes\n -----\n The `action` can be one of\n\n + ``TPM_INIT``\n Perform initialization.\n + ``TPM_FAST``\n Calculate all fast changing properties.\n + ``TPM_MEDIUM``\n Calculate all properties that change at a medium rate.\n + ``TPM_SLOW``\n Calculate all properties that change slowly.\n + ``TPM_REFRACTION``\n Cacluate refraction coefficients.\n + ``TPM_ALL``\n Perform all calculations except ``TPM_REFRACTION``.\n\n The TPM manual has more details on these quantities.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_91tpm_data = {"tpm_data", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_91tpm_data, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_90tpm_data}; +static PyObject *__pyx_pw_3tpm_91tpm_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_TSTATE *__pyx_v_tstate = 0; + int __pyx_v_action; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tpm_data (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tstate,&__pyx_n_s_action,0}; + PyObject* values[2] = {0,0}; + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tstate)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_action)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("tpm_data", 1, 2, 2, 1); __PYX_ERR(2, 27, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "tpm_data") < 0)) __PYX_ERR(2, 27, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + } + __pyx_v_tstate = ((struct __pyx_obj_3tpm_TSTATE *)values[0]); + __pyx_v_action = __Pyx_PyInt_As_int(values[1]); if (unlikely((__pyx_v_action == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 27, __pyx_L3_error) + } + goto __pyx_L4_argument_unpacking_done; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("tpm_data", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 27, __pyx_L3_error) + __pyx_L3_error:; + __Pyx_AddTraceback("tpm.tpm_data", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tstate), __pyx_ptype_3tpm_TSTATE, 1, "tstate", 0))) __PYX_ERR(2, 27, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_90tpm_data(__pyx_self, __pyx_v_tstate, __pyx_v_action); + + /* function exit code */ goto __pyx_L0; __pyx_L1_error:; - __Pyx_AddTraceback("pytpm.tpm.tpm_data"); __pyx_r = NULL; __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_90tpm_data(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_TSTATE *__pyx_v_tstate, int __pyx_v_action) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tpm_data", 0); + + /* "src/tpm_astro.pxi":60 + * + * """ + * tpm_astro.tpm_data(&tstate._tstate, action) # <<<<<<<<<<<<<< + * + * + */ + tpm_data((&__pyx_v_tstate->_tstate), __pyx_v_action); + + /* "src/tpm_astro.pxi":27 + * + * + * def tpm_data(TSTATE tstate, int action): # <<<<<<<<<<<<<< + * """Compute and set dependent TSTATE data. + * + */ + + /* function exit code */ + __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":80 +/* "src/tpm_astro.pxi":80 * cdef S_PVEC _pvec * * def __cinit__(self): # <<<<<<<<<<<<<< @@ -21161,21 +31693,38 @@ static PyObject *__pyx_pf_5pytpm_3tpm_45tpm_data(PyObject *__pyx_self, PyObject * cdef int i = 0 */ -static int __pyx_pf_5pytpm_3tpm_4PVEC___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_pf_5pytpm_3tpm_4PVEC___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_4PVEC_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static int __pyx_pw_3tpm_4PVEC_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); + if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { + __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} + if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_4PVEC___cinit__(((struct __pyx_obj_3tpm_PVEC *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_4PVEC___cinit__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self) { int __pyx_v_i; int __pyx_r; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; long __pyx_t_2; - int __pyx_t_3; + long __pyx_t_3; int __pyx_t_4; - Py_ssize_t __pyx_t_5; - __Pyx_RefNannySetupContext("__cinit__"); - if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { - __Pyx_RaiseArgtupleInvalid("__cinit__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} - if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__cinit__", 0))) return -1; + int __pyx_t_5; + Py_ssize_t __pyx_t_6; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__cinit__", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":82 + /* "src/tpm_astro.pxi":82 * def __cinit__(self): * """Initialize the array of V6 vectors.""" * cdef int i = 0 # <<<<<<<<<<<<<< @@ -21184,145 +31733,155 @@ static int __pyx_pf_5pytpm_3tpm_4PVEC___cinit__(PyObject *__pyx_v_self, PyObject */ __pyx_v_i = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":83 + /* "src/tpm_astro.pxi":83 * """Initialize the array of V6 vectors.""" * cdef int i = 0 * for i in range(N_TPM_STATES): # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].type = CARTESIAN * self._pvec.pvec[i].v[POS].v[0] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__N_TPM_STATES); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_N_TPM_STATES); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsLong(__pyx_t_1); if (unlikely((__pyx_t_2 == (long)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_long(__pyx_t_1); if (unlikely((__pyx_t_2 == (long)-1) && PyErr_Occurred())) __PYX_ERR(2, 83, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) { - __pyx_v_i = __pyx_t_3; + __pyx_t_3 = __pyx_t_2; + for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { + __pyx_v_i = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":84 + /* "src/tpm_astro.pxi":84 * cdef int i = 0 * for i in range(N_TPM_STATES): * self._pvec.pvec[i].v[POS].type = CARTESIAN # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].v[0] = 0.0 * self._pvec.pvec[i].v[POS].v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 84, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 84, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).type = __pyx_t_4; + ((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).type = __pyx_t_5; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":85 + /* "src/tpm_astro.pxi":85 * for i in range(N_TPM_STATES): * self._pvec.pvec[i].v[POS].type = CARTESIAN * self._pvec.pvec[i].v[POS].v[0] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].v[1] = 0.0 * self._pvec.pvec[i].v[POS].v[2] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[0]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":86 + /* "src/tpm_astro.pxi":86 * self._pvec.pvec[i].v[POS].type = CARTESIAN * self._pvec.pvec[i].v[POS].v[0] = 0.0 * self._pvec.pvec[i].v[POS].v[1] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].v[2] = 0.0 * self._pvec.pvec[i].v[VEL].type = CARTESIAN */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 86, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[1]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":87 + /* "src/tpm_astro.pxi":87 * self._pvec.pvec[i].v[POS].v[0] = 0.0 * self._pvec.pvec[i].v[POS].v[1] = 0.0 * self._pvec.pvec[i].v[POS].v[2] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].type = CARTESIAN * self._pvec.pvec[i].v[VEL].v[0] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 87, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[2]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[2]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":88 + /* "src/tpm_astro.pxi":88 * self._pvec.pvec[i].v[POS].v[1] = 0.0 * self._pvec.pvec[i].v[POS].v[2] = 0.0 * self._pvec.pvec[i].v[VEL].type = CARTESIAN # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].v[0] = 0.0 * self._pvec.pvec[i].v[VEL].v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 88, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 88, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 88, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 88, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).type = __pyx_t_4; + ((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).type = __pyx_t_5; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":89 + /* "src/tpm_astro.pxi":89 * self._pvec.pvec[i].v[POS].v[2] = 0.0 * self._pvec.pvec[i].v[VEL].type = CARTESIAN * self._pvec.pvec[i].v[VEL].v[0] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].v[1] = 0.0 * self._pvec.pvec[i].v[VEL].v[2] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 89, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[0]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":90 + /* "src/tpm_astro.pxi":90 * self._pvec.pvec[i].v[VEL].type = CARTESIAN * self._pvec.pvec[i].v[VEL].v[0] = 0.0 * self._pvec.pvec[i].v[VEL].v[1] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].v[2] = 0.0 * */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 90, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[1]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":91 + /* "src/tpm_astro.pxi":91 * self._pvec.pvec[i].v[VEL].v[0] = 0.0 * self._pvec.pvec[i].v[VEL].v[1] = 0.0 * self._pvec.pvec[i].v[VEL].v[2] = 0.0 # <<<<<<<<<<<<<< * * def __init__(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 91, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[2]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[2]) = 0.0; } + /* "src/tpm_astro.pxi":80 + * cdef S_PVEC _pvec + * + * def __cinit__(self): # <<<<<<<<<<<<<< + * """Initialize the array of V6 vectors.""" + * cdef int i = 0 + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.PVEC.__cinit__"); + __Pyx_AddTraceback("tpm.PVEC.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":93 +/* "src/tpm_astro.pxi":93 * self._pvec.pvec[i].v[VEL].v[2] = 0.0 * * def __init__(self): # <<<<<<<<<<<<<< @@ -21330,23 +31889,42 @@ static int __pyx_pf_5pytpm_3tpm_4PVEC___cinit__(PyObject *__pyx_v_self, PyObject * # Repeating the __cinit__ code. */ -static int __pyx_pf_5pytpm_3tpm_4PVEC_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4PVEC_1__init__[] = "Initialize the array of V6 vectors."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4PVEC_1__init__; -static int __pyx_pf_5pytpm_3tpm_4PVEC_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static int __pyx_pw_3tpm_4PVEC_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_4PVEC_2__init__[] = "Initialize the array of V6 vectors."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4PVEC_2__init__; +#endif +static int __pyx_pw_3tpm_4PVEC_3__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + int __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); + if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { + __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} + if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; + __pyx_r = __pyx_pf_3tpm_4PVEC_2__init__(((struct __pyx_obj_3tpm_PVEC *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_4PVEC_2__init__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self) { int __pyx_v_i; int __pyx_r; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; long __pyx_t_2; - int __pyx_t_3; + long __pyx_t_3; int __pyx_t_4; - Py_ssize_t __pyx_t_5; - __Pyx_RefNannySetupContext("__init__"); - if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;} - if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1; + int __pyx_t_5; + Py_ssize_t __pyx_t_6; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__init__", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":96 + /* "src/tpm_astro.pxi":96 * """Initialize the array of V6 vectors.""" * # Repeating the __cinit__ code. * cdef int i = 0 # <<<<<<<<<<<<<< @@ -21355,145 +31933,155 @@ static int __pyx_pf_5pytpm_3tpm_4PVEC_1__init__(PyObject *__pyx_v_self, PyObject */ __pyx_v_i = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":97 + /* "src/tpm_astro.pxi":97 * # Repeating the __cinit__ code. * cdef int i = 0 * for i in range(N_TPM_STATES): # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].type = CARTESIAN * self._pvec.pvec[i].v[POS].v[0] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__N_TPM_STATES); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_N_TPM_STATES); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyInt_AsLong(__pyx_t_1); if (unlikely((__pyx_t_2 == (long)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_As_long(__pyx_t_1); if (unlikely((__pyx_t_2 == (long)-1) && PyErr_Occurred())) __PYX_ERR(2, 97, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) { - __pyx_v_i = __pyx_t_3; + __pyx_t_3 = __pyx_t_2; + for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { + __pyx_v_i = __pyx_t_4; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":98 + /* "src/tpm_astro.pxi":98 * cdef int i = 0 * for i in range(N_TPM_STATES): * self._pvec.pvec[i].v[POS].type = CARTESIAN # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].v[0] = 0.0 * self._pvec.pvec[i].v[POS].v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 98, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 98, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).type = __pyx_t_4; + ((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).type = __pyx_t_5; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":99 + /* "src/tpm_astro.pxi":99 * for i in range(N_TPM_STATES): * self._pvec.pvec[i].v[POS].type = CARTESIAN * self._pvec.pvec[i].v[POS].v[0] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].v[1] = 0.0 * self._pvec.pvec[i].v[POS].v[2] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 99, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[0]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":100 + /* "src/tpm_astro.pxi":100 * self._pvec.pvec[i].v[POS].type = CARTESIAN * self._pvec.pvec[i].v[POS].v[0] = 0.0 * self._pvec.pvec[i].v[POS].v[1] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[POS].v[2] = 0.0 * self._pvec.pvec[i].v[VEL].type = CARTESIAN */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 100, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[1]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":101 + /* "src/tpm_astro.pxi":101 * self._pvec.pvec[i].v[POS].v[0] = 0.0 * self._pvec.pvec[i].v[POS].v[1] = 0.0 * self._pvec.pvec[i].v[POS].v[2] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].type = CARTESIAN * self._pvec.pvec[i].v[VEL].v[0] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 101, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[2]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[2]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":102 + /* "src/tpm_astro.pxi":102 * self._pvec.pvec[i].v[POS].v[1] = 0.0 * self._pvec.pvec[i].v[POS].v[2] = 0.0 * self._pvec.pvec[i].v[VEL].type = CARTESIAN # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].v[0] = 0.0 * self._pvec.pvec[i].v[VEL].v[1] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyInt_AsInt(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 102, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 102, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - ((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).type = __pyx_t_4; + ((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).type = __pyx_t_5; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":103 + /* "src/tpm_astro.pxi":103 * self._pvec.pvec[i].v[POS].v[2] = 0.0 * self._pvec.pvec[i].v[VEL].type = CARTESIAN * self._pvec.pvec[i].v[VEL].v[0] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].v[1] = 0.0 * self._pvec.pvec[i].v[VEL].v[2] = 0.0 */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 103, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[0]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[0]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":104 + /* "src/tpm_astro.pxi":104 * self._pvec.pvec[i].v[VEL].type = CARTESIAN * self._pvec.pvec[i].v[VEL].v[0] = 0.0 * self._pvec.pvec[i].v[VEL].v[1] = 0.0 # <<<<<<<<<<<<<< * self._pvec.pvec[i].v[VEL].v[2] = 0.0 * */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 104, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[1]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[1]) = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":105 + /* "src/tpm_astro.pxi":105 * self._pvec.pvec[i].v[VEL].v[0] = 0.0 * self._pvec.pvec[i].v[VEL].v[1] = 0.0 * self._pvec.pvec[i].v[VEL].v[2] = 0.0 # <<<<<<<<<<<<<< * * cdef S_PVEC __get_pvec(self): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_5 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 105, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (((((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_i]).v[__pyx_t_5]).v[2]) = 0.0; + (((__pyx_v_self->_pvec.pvec[__pyx_v_i]).v[__pyx_t_6]).v[2]) = 0.0; } + /* "src/tpm_astro.pxi":93 + * self._pvec.pvec[i].v[VEL].v[2] = 0.0 + * + * def __init__(self): # <<<<<<<<<<<<<< + * """Initialize the array of V6 vectors.""" + * # Repeating the __cinit__ code. + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.PVEC.__init__"); + __Pyx_AddTraceback("tpm.PVEC.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":107 +/* "src/tpm_astro.pxi":107 * self._pvec.pvec[i].v[VEL].v[2] = 0.0 * * cdef S_PVEC __get_pvec(self): # <<<<<<<<<<<<<< @@ -21501,11 +32089,12 @@ static int __pyx_pf_5pytpm_3tpm_4PVEC_1__init__(PyObject *__pyx_v_self, PyObject * # No checks to see if all of the elements are Cartesian. */ -static __pyx_t_5pytpm_3tpm_S_PVEC __pyx_f_5pytpm_3tpm_4PVEC___get_pvec(struct __pyx_obj_5pytpm_3tpm_PVEC *__pyx_v_self) { - __pyx_t_5pytpm_3tpm_S_PVEC __pyx_r; - __Pyx_RefNannySetupContext("__get_pvec"); +static __pyx_t_3tpm_S_PVEC __pyx_f_3tpm_4PVEC___get_pvec(struct __pyx_obj_3tpm_PVEC *__pyx_v_self) { + __pyx_t_3tpm_S_PVEC __pyx_r; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__get_pvec", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":110 + /* "src/tpm_astro.pxi":110 * """Return the underlying C array; only for use from Cython.""" * # No checks to see if all of the elements are Cartesian. * return self._pvec # <<<<<<<<<<<<<< @@ -21515,12 +32104,21 @@ static __pyx_t_5pytpm_3tpm_S_PVEC __pyx_f_5pytpm_3tpm_4PVEC___get_pvec(struct _ __pyx_r = __pyx_v_self->_pvec; goto __pyx_L0; + /* "src/tpm_astro.pxi":107 + * self._pvec.pvec[i].v[VEL].v[2] = 0.0 + * + * cdef S_PVEC __get_pvec(self): # <<<<<<<<<<<<<< + * """Return the underlying C array; only for use from Cython.""" + * # No checks to see if all of the elements are Cartesian. + */ + + /* function exit code */ __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":112 +/* "src/tpm_astro.pxi":112 * return self._pvec * * cdef __set_pvec(self, S_PVEC spv): # <<<<<<<<<<<<<< @@ -21528,11 +32126,12 @@ static __pyx_t_5pytpm_3tpm_S_PVEC __pyx_f_5pytpm_3tpm_4PVEC___get_pvec(struct _ * # No checks to see if all of the elements are Cartesian. */ -static PyObject *__pyx_f_5pytpm_3tpm_4PVEC___set_pvec(struct __pyx_obj_5pytpm_3tpm_PVEC *__pyx_v_self, __pyx_t_5pytpm_3tpm_S_PVEC __pyx_v_spv) { +static PyObject *__pyx_f_3tpm_4PVEC___set_pvec(struct __pyx_obj_3tpm_PVEC *__pyx_v_self, __pyx_t_3tpm_S_PVEC __pyx_v_spv) { PyObject *__pyx_r = NULL; - __Pyx_RefNannySetupContext("__set_pvec"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__set_pvec", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":115 + /* "src/tpm_astro.pxi":115 * """Set the underlying C array; only for use from Cython.""" * # No checks to see if all of the elements are Cartesian. * self._pvec = spv # <<<<<<<<<<<<<< @@ -21541,13 +32140,22 @@ static PyObject *__pyx_f_5pytpm_3tpm_4PVEC___set_pvec(struct __pyx_obj_5pytpm_3 */ __pyx_v_self->_pvec = __pyx_v_spv; + /* "src/tpm_astro.pxi":112 + * return self._pvec + * + * cdef __set_pvec(self, S_PVEC spv): # <<<<<<<<<<<<<< + * """Set the underlying C array; only for use from Cython.""" + * # No checks to see if all of the elements are Cartesian. + */ + + /* function exit code */ __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":117 +/* "src/tpm_astro.pxi":117 * self._pvec = spv * * def __getitem__(self, int index): # <<<<<<<<<<<<<< @@ -21555,122 +32163,150 @@ static PyObject *__pyx_f_5pytpm_3tpm_4PVEC___set_pvec(struct __pyx_obj_5pytpm_3 * if type(index) != type(1): */ -static PyObject *__pyx_pf_5pytpm_3tpm_4PVEC_2__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4PVEC_2__getitem__[] = "Return V6 at given index; 0 <= index < N_TPM_STATES."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4PVEC_2__getitem__; -static PyObject *__pyx_pf_5pytpm_3tpm_4PVEC_2__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4PVEC_5__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index); /*proto*/ +static char __pyx_doc_3tpm_4PVEC_4__getitem__[] = "Return V6 at given index; 0 <= index < N_TPM_STATES."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4PVEC_4__getitem__; +#endif +static PyObject *__pyx_pw_3tpm_4PVEC_5__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index) { int __pyx_v_index; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6c; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__getitem__"); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__getitem__ (wrapper)", 0); assert(__pyx_arg_index); { - __pyx_v_index = __Pyx_PyInt_AsInt(__pyx_arg_index); if (unlikely((__pyx_v_index == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_index = __Pyx_PyInt_As_int(__pyx_arg_index); if (unlikely((__pyx_v_index == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 117, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.PVEC.__getitem__"); + __Pyx_AddTraceback("tpm.PVEC.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_4PVEC_4__getitem__(((struct __pyx_obj_3tpm_PVEC *)__pyx_v_self), ((int)__pyx_v_index)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4PVEC_4__getitem__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self, int __pyx_v_index) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6c = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_t_5; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__getitem__", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":119 + /* "src/tpm_astro.pxi":119 * def __getitem__(self, int index): * """Return V6 at given index; 0 <= index < N_TPM_STATES.""" * if type(index) != type(1): # <<<<<<<<<<<<<< * raise TypeError, "Index must be an integer." * if not (0 <= index < N_TPM_STATES): */ - __pyx_t_1 = PyInt_FromLong(__pyx_v_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_index); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_t_1)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_t_1)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 119, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(2, 119, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { + if (unlikely(__pyx_t_3)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":120 + /* "src/tpm_astro.pxi":120 * """Return V6 at given index; 0 <= index < N_TPM_STATES.""" * if type(index) != type(1): * raise TypeError, "Index must be an integer." # <<<<<<<<<<<<<< * if not (0 <= index < N_TPM_STATES): * raise IndexError, \ */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_67), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L5; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Index_must_be_an_integer, 0, 0); + __PYX_ERR(2, 120, __pyx_L1_error) + + /* "src/tpm_astro.pxi":119 + * def __getitem__(self, int index): + * """Return V6 at given index; 0 <= index < N_TPM_STATES.""" + * if type(index) != type(1): # <<<<<<<<<<<<<< + * raise TypeError, "Index must be an integer." + * if not (0 <= index < N_TPM_STATES): + */ } - __pyx_L5:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":121 + /* "src/tpm_astro.pxi":121 * if type(index) != type(1): * raise TypeError, "Index must be an integer." * if not (0 <= index < N_TPM_STATES): # <<<<<<<<<<<<<< * raise IndexError, \ * "Index must be in 0 <= index < N_TPM_STATES." */ - __pyx_t_2 = PyInt_FromLong(__pyx_v_index); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_index); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_RichCompare(__pyx_int_0, __pyx_t_2, Py_LE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = PyObject_RichCompare(__pyx_int_0, __pyx_t_2, Py_LE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 121, __pyx_L1_error) if (__Pyx_PyObject_IsTrue(__pyx_t_1)) { __Pyx_DECREF(__pyx_t_1); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__N_TPM_STATES); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_N_TPM_STATES); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_LT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 121, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(2, 121, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = (!__pyx_t_3); - if (__pyx_t_5) { + __pyx_t_5 = ((!__pyx_t_3) != 0); + if (unlikely(__pyx_t_5)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":122 + /* "src/tpm_astro.pxi":122 * raise TypeError, "Index must be an integer." * if not (0 <= index < N_TPM_STATES): * raise IndexError, \ # <<<<<<<<<<<<<< * "Index must be in 0 <= index < N_TPM_STATES." * v6c = V6C() */ - __Pyx_Raise(__pyx_builtin_IndexError, ((PyObject *)__pyx_kp_s_68), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L6; + __Pyx_Raise(__pyx_builtin_IndexError, __pyx_kp_s_Index_must_be_in_0_index_N_TPM_S, 0, 0); + __PYX_ERR(2, 122, __pyx_L1_error) + + /* "src/tpm_astro.pxi":121 + * if type(index) != type(1): + * raise TypeError, "Index must be an integer." + * if not (0 <= index < N_TPM_STATES): # <<<<<<<<<<<<<< + * raise IndexError, \ + * "Index must be in 0 <= index < N_TPM_STATES." + */ } - __pyx_L6:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":124 + /* "src/tpm_astro.pxi":124 * raise IndexError, \ * "Index must be in 0 <= index < N_TPM_STATES." * v6c = V6C() # <<<<<<<<<<<<<< * v6c.setV6(self._pvec.pvec[index]) * return v6c */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6c)); - __pyx_v_v6c = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6c = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":125 + /* "src/tpm_astro.pxi":125 * "Index must be in 0 <= index < N_TPM_STATES." * v6c = V6C() * v6c.setV6(self._pvec.pvec[index]) # <<<<<<<<<<<<<< * return v6c * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c), (((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_index])); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c), (__pyx_v_self->_pvec.pvec[__pyx_v_index])); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 125, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":126 + /* "src/tpm_astro.pxi":126 * v6c = V6C() * v6c.setV6(self._pvec.pvec[index]) * return v6c # <<<<<<<<<<<<<< @@ -21682,22 +32318,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4PVEC_2__getitem__(PyObject *__pyx_v_self, __pyx_r = ((PyObject *)__pyx_v_v6c); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":117 + * self._pvec = spv + * + * def __getitem__(self, int index): # <<<<<<<<<<<<<< + * """Return V6 at given index; 0 <= index < N_TPM_STATES.""" + * if type(index) != type(1): + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.PVEC.__getitem__"); + __Pyx_AddTraceback("tpm.PVEC.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6c); + __Pyx_XDECREF((PyObject *)__pyx_v_v6c); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":128 +/* "src/tpm_astro.pxi":128 * return v6c * * def __setitem__(self, int index, V6C v6c): # <<<<<<<<<<<<<< @@ -21705,351 +32348,551 @@ static PyObject *__pyx_pf_5pytpm_3tpm_4PVEC_2__getitem__(PyObject *__pyx_v_self, * if type(index) != type(1): */ -static int __pyx_pf_5pytpm_3tpm_4PVEC_3__setitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index, PyObject *__pyx_v_v6c); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_4PVEC_3__setitem__[] = "Set V6 at given index; 0 <= index < N_TPM_STATES."; -struct wrapperbase __pyx_wrapperbase_5pytpm_3tpm_4PVEC_3__setitem__; -static int __pyx_pf_5pytpm_3tpm_4PVEC_3__setitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index, PyObject *__pyx_v_v6c) { +/* Python wrapper */ +static int __pyx_pw_3tpm_4PVEC_7__setitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index, PyObject *__pyx_v_v6c); /*proto*/ +static char __pyx_doc_3tpm_4PVEC_6__setitem__[] = "Set V6 at given index; 0 <= index < N_TPM_STATES."; +#if CYTHON_COMPILING_IN_CPYTHON +struct wrapperbase __pyx_wrapperbase_3tpm_4PVEC_6__setitem__; +#endif +static int __pyx_pw_3tpm_4PVEC_7__setitem__(PyObject *__pyx_v_self, PyObject *__pyx_arg_index, PyObject *__pyx_v_v6c) { int __pyx_v_index; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; int __pyx_r; - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - __Pyx_RefNannySetupContext("__setitem__"); + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setitem__ (wrapper)", 0); assert(__pyx_arg_index); { - __pyx_v_index = __Pyx_PyInt_AsInt(__pyx_arg_index); if (unlikely((__pyx_v_index == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_index = __Pyx_PyInt_As_int(__pyx_arg_index); if (unlikely((__pyx_v_index == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 128, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.PVEC.__setitem__"); + __Pyx_AddTraceback("tpm.PVEC.__setitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6c), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6c", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6c), __pyx_ptype_3tpm_V6C, 1, "v6c", 0))) __PYX_ERR(2, 128, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_4PVEC_6__setitem__(((struct __pyx_obj_3tpm_PVEC *)__pyx_v_self), ((int)__pyx_v_index), ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6c)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = -1; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static int __pyx_pf_3tpm_4PVEC_6__setitem__(struct __pyx_obj_3tpm_PVEC *__pyx_v_self, int __pyx_v_index, struct __pyx_obj_3tpm_V6C *__pyx_v_v6c) { + int __pyx_r; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_t_5; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setitem__", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":130 + /* "src/tpm_astro.pxi":130 * def __setitem__(self, int index, V6C v6c): * """Set V6 at given index; 0 <= index < N_TPM_STATES.""" * if type(index) != type(1): # <<<<<<<<<<<<<< * raise TypeError, "Index must be an integer." * if not (0 <= index < N_TPM_STATES): */ - __pyx_t_1 = PyInt_FromLong(__pyx_v_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_index); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_t_1)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_t_1)), ((PyObject *)Py_TYPE(__pyx_int_1)), Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 130, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(2, 130, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { + if (unlikely(__pyx_t_3)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":131 + /* "src/tpm_astro.pxi":131 * """Set V6 at given index; 0 <= index < N_TPM_STATES.""" * if type(index) != type(1): * raise TypeError, "Index must be an integer." # <<<<<<<<<<<<<< * if not (0 <= index < N_TPM_STATES): * raise IndexError, \ */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_67), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L5; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Index_must_be_an_integer, 0, 0); + __PYX_ERR(2, 131, __pyx_L1_error) + + /* "src/tpm_astro.pxi":130 + * def __setitem__(self, int index, V6C v6c): + * """Set V6 at given index; 0 <= index < N_TPM_STATES.""" + * if type(index) != type(1): # <<<<<<<<<<<<<< + * raise TypeError, "Index must be an integer." + * if not (0 <= index < N_TPM_STATES): + */ } - __pyx_L5:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":132 + /* "src/tpm_astro.pxi":132 * if type(index) != type(1): * raise TypeError, "Index must be an integer." * if not (0 <= index < N_TPM_STATES): # <<<<<<<<<<<<<< * raise IndexError, \ * "Index must be in 0 <= index < N_TPM_STATES." */ - __pyx_t_2 = PyInt_FromLong(__pyx_v_index); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_index); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_RichCompare(__pyx_int_0, __pyx_t_2, Py_LE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = PyObject_RichCompare(__pyx_int_0, __pyx_t_2, Py_LE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 132, __pyx_L1_error) if (__Pyx_PyObject_IsTrue(__pyx_t_1)) { __Pyx_DECREF(__pyx_t_1); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__N_TPM_STATES); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_N_TPM_STATES); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_LT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 132, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(2, 132, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = (!__pyx_t_3); - if (__pyx_t_5) { + __pyx_t_5 = ((!__pyx_t_3) != 0); + if (unlikely(__pyx_t_5)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":133 + /* "src/tpm_astro.pxi":133 * raise TypeError, "Index must be an integer." * if not (0 <= index < N_TPM_STATES): * raise IndexError, \ # <<<<<<<<<<<<<< * "Index must be in 0 <= index < N_TPM_STATES." * if type(v6c) != type(V6C()): */ - __Pyx_Raise(__pyx_builtin_IndexError, ((PyObject *)__pyx_kp_s_68), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L6; + __Pyx_Raise(__pyx_builtin_IndexError, __pyx_kp_s_Index_must_be_in_0_index_N_TPM_S, 0, 0); + __PYX_ERR(2, 133, __pyx_L1_error) + + /* "src/tpm_astro.pxi":132 + * if type(index) != type(1): + * raise TypeError, "Index must be an integer." + * if not (0 <= index < N_TPM_STATES): # <<<<<<<<<<<<<< + * raise IndexError, \ + * "Index must be in 0 <= index < N_TPM_STATES." + */ } - __pyx_L6:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":135 + /* "src/tpm_astro.pxi":135 * raise IndexError, \ * "Index must be in 0 <= index < N_TPM_STATES." * if type(v6c) != type(V6C()): # <<<<<<<<<<<<<< * raise TypeError, "Value must be a V6C object." * self._pvec.pvec[index] = v6c.getV6() */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_v6c)), ((PyObject *)Py_TYPE(__pyx_t_1)), Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_v6c))), ((PyObject *)Py_TYPE(__pyx_t_1)), Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 135, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(2, 135, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_5) { + if (unlikely(__pyx_t_5)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":136 + /* "src/tpm_astro.pxi":136 * "Index must be in 0 <= index < N_TPM_STATES." * if type(v6c) != type(V6C()): * raise TypeError, "Value must be a V6C object." # <<<<<<<<<<<<<< * self._pvec.pvec[index] = v6c.getV6() * */ - __Pyx_Raise(__pyx_builtin_TypeError, ((PyObject *)__pyx_kp_s_69), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L7; + __Pyx_Raise(__pyx_builtin_TypeError, __pyx_kp_s_Value_must_be_a_V6C_object, 0, 0); + __PYX_ERR(2, 136, __pyx_L1_error) + + /* "src/tpm_astro.pxi":135 + * raise IndexError, \ + * "Index must be in 0 <= index < N_TPM_STATES." + * if type(v6c) != type(V6C()): # <<<<<<<<<<<<<< + * raise TypeError, "Value must be a V6C object." + * self._pvec.pvec[index] = v6c.getV6() + */ } - __pyx_L7:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":137 + /* "src/tpm_astro.pxi":137 * if type(v6c) != type(V6C()): * raise TypeError, "Value must be a V6C object." * self._pvec.pvec[index] = v6c.getV6() # <<<<<<<<<<<<<< * * */ - (((struct __pyx_obj_5pytpm_3tpm_PVEC *)__pyx_v_self)->_pvec.pvec[__pyx_v_index]) = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6c)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6c)); + (__pyx_v_self->_pvec.pvec[__pyx_v_index]) = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6c->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6c)); + /* "src/tpm_astro.pxi":128 + * return v6c + * + * def __setitem__(self, int index, V6C v6c): # <<<<<<<<<<<<<< + * """Set V6 at given index; 0 <= index < N_TPM_STATES.""" + * if type(index) != type(1): + */ + + /* function exit code */ __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.PVEC.__setitem__"); + __Pyx_AddTraceback("tpm.PVEC.__setitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":140 - * - * - * def tpm(PVEC pvec, int s1, int s2, double ep, double eq, TSTATE tstate): # <<<<<<<<<<<<<< - * """Apply transition between to states. - * +/* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): */ -static PyObject *__pyx_pf_5pytpm_3tpm_46tpm(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_46tpm[] = "Apply transition between to states.\n\n On completion the `pvec` object will contain state vectors obtained\n during all transitions needed for the `s1` to `s2`\n transition. Specifically, `pvec[s2]` will have the V6C vector\n corresponding to the target state `s2`.\n\n Parameters\n ----------\n pvec : tpm.PVEC\n A PVEC object with appropriate V6 members.\n s1 : int\n Starting state (0 <= s1 < N_TPM_STATES).\n s2 : int\n End state (0 <= s2 < N_TPM_STATES).\n ep : float\n Epoch of state vector corresponding to `s1`, as a Julian date.\n eq : float\n Equinox as a Julian date. It can be of s1 and or s2, depending\n on the specific transition.\n tstate : tpm.TSTATE\n A TSTATE object with appropriate initial values.\n\n Returns\n -------\n s : int\n Final state (must be equal to `s2`).\n\n Notes\n -----\n This is the main TPM function. It looks up the state tables and\n performs all required transformations to take the state vector at\n `pvec[s1]` from state `s1` to state `s2`. It stores the\n resulting state vector in `pvec[s2]`. Intermediate states are\n stored in their respective positions in `pvec`.\n\n For more information see the TPM manual.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_46tpm = {__Pyx_NAMESTR("tpm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_46tpm, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_46tpm)}; -static PyObject *__pyx_pf_5pytpm_3tpm_46tpm(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_PVEC *__pyx_v_pvec = 0; - int __pyx_v_s1; - int __pyx_v_s2; - double __pyx_v_ep; - double __pyx_v_eq; - struct __pyx_obj_5pytpm_3tpm_TSTATE *__pyx_v_tstate = 0; - __pyx_t_5pytpm_3tpm_S_PVEC __pyx_v_spvec; - TPM_TSTATE __pyx_v_ststate; - int __pyx_v_t; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4PVEC_9__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ +static PyObject *__pyx_pw_3tpm_4PVEC_9__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4PVEC_8__reduce_cython__(((struct __pyx_obj_3tpm_PVEC *)__pyx_v_self)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4PVEC_8__reduce_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_PVEC *__pyx_v_self) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_t_5; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__pvec,&__pyx_n_s__s1,&__pyx_n_s__s2,&__pyx_n_s__ep,&__pyx_n_s__eq,&__pyx_n_s__tstate,0}; - __Pyx_RefNannySetupContext("tpm"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__reduce_cython__", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__29, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 2, __pyx_L1_error) + + /* "(tree fragment)":1 + * def __reduce_cython__(self): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.PVEC.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_4PVEC_11__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ +static PyObject *__pyx_pw_3tpm_4PVEC_11__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_4PVEC_10__setstate_cython__(((struct __pyx_obj_3tpm_PVEC *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_4PVEC_10__setstate_cython__(CYTHON_UNUSED struct __pyx_obj_3tpm_PVEC *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__setstate_cython__", 0); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__30, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_Raise(__pyx_t_1, 0, 0, 0); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __PYX_ERR(3, 4, __pyx_L1_error) + + /* "(tree fragment)":3 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.PVEC.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +/* "src/tpm_astro.pxi":140 + * + * + * def tpm(PVEC pvec, int s1, int s2, double ep, double eq, TSTATE tstate): # <<<<<<<<<<<<<< + * """Apply transition between to states. + * + */ + +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_93tpm(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_92tpm[] = "Apply transition between to states.\n\n On completion the `pvec` object will contain state vectors obtained\n during all transitions needed for the `s1` to `s2`\n transition. Specifically, `pvec[s2]` will have the V6C vector\n corresponding to the target state `s2`.\n\n Parameters\n ----------\n pvec : tpm.PVEC\n A PVEC object with appropriate V6 members.\n s1 : int\n Starting state (0 <= s1 < N_TPM_STATES).\n s2 : int\n End state (0 <= s2 < N_TPM_STATES).\n ep : float\n Epoch of state vector corresponding to `s1`, as a Julian date.\n eq : float\n Equinox as a Julian date. It can be of s1 and or s2, depending\n on the specific transition.\n tstate : tpm.TSTATE\n A TSTATE object with appropriate initial values.\n\n Returns\n -------\n s : int\n Final state (must be equal to `s2`).\n\n Notes\n -----\n This is the main TPM function. It looks up the state tables and\n performs all required transformations to take the state vector at\n `pvec[s1]` from state `s1` to state `s2`. It stores the\n resulting state vector in `pvec[s2]`. Intermediate states are\n stored in their respective positions in `pvec`.\n\n For more information see the TPM manual.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_93tpm = {"tpm", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_93tpm, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_92tpm}; +static PyObject *__pyx_pw_3tpm_93tpm(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_PVEC *__pyx_v_pvec = 0; + int __pyx_v_s1; + int __pyx_v_s2; + double __pyx_v_ep; + double __pyx_v_eq; + struct __pyx_obj_3tpm_TSTATE *__pyx_v_tstate = 0; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tpm (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pvec,&__pyx_n_s_s1,&__pyx_n_s_s2,&__pyx_n_s_ep,&__pyx_n_s_eq,&__pyx_n_s_tstate,0}; PyObject* values[6] = {0,0,0,0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pvec); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__s1); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__s2); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ep); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 3); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 4: - values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__eq); - if (likely(values[4])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 4); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pvec)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_s1)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 1); __PYX_ERR(2, 140, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_s2)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 2); __PYX_ERR(2, 140, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_ep)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 3); __PYX_ERR(2, 140, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 4: + if (likely((values[4] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_eq)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 4); __PYX_ERR(2, 140, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 5: + if (likely((values[5] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tstate)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 5); __PYX_ERR(2, 140, __pyx_L3_error) + } } - case 5: - values[5] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__tstate); - if (likely(values[5])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, 5); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "tpm") < 0)) __PYX_ERR(2, 140, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 6) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[5] = PyTuple_GET_ITEM(__pyx_args, 5); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "tpm") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_pvec = ((struct __pyx_obj_5pytpm_3tpm_PVEC *)values[0]); - __pyx_v_s1 = __Pyx_PyInt_AsInt(values[1]); if (unlikely((__pyx_v_s1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_s2 = __Pyx_PyInt_AsInt(values[2]); if (unlikely((__pyx_v_s2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_ep = __pyx_PyFloat_AsDouble(values[3]); if (unlikely((__pyx_v_ep == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_eq = __pyx_PyFloat_AsDouble(values[4]); if (unlikely((__pyx_v_eq == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_tstate = ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)values[5]); - } else if (PyTuple_GET_SIZE(__pyx_args) != 6) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_pvec = ((struct __pyx_obj_5pytpm_3tpm_PVEC *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_s1 = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_s1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_s2 = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 2)); if (unlikely((__pyx_v_s2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_ep = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 3)); if (unlikely((__pyx_v_ep == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_eq = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 4)); if (unlikely((__pyx_v_eq == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_tstate = ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)PyTuple_GET_ITEM(__pyx_args, 5)); + __pyx_v_pvec = ((struct __pyx_obj_3tpm_PVEC *)values[0]); + __pyx_v_s1 = __Pyx_PyInt_As_int(values[1]); if (unlikely((__pyx_v_s1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 140, __pyx_L3_error) + __pyx_v_s2 = __Pyx_PyInt_As_int(values[2]); if (unlikely((__pyx_v_s2 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 140, __pyx_L3_error) + __pyx_v_ep = __pyx_PyFloat_AsDouble(values[3]); if (unlikely((__pyx_v_ep == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 140, __pyx_L3_error) + __pyx_v_eq = __pyx_PyFloat_AsDouble(values[4]); if (unlikely((__pyx_v_eq == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 140, __pyx_L3_error) + __pyx_v_tstate = ((struct __pyx_obj_3tpm_TSTATE *)values[5]); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("tpm", 1, 6, 6, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 140, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.tpm"); + __Pyx_AddTraceback("tpm.tpm", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pvec), __pyx_ptype_5pytpm_3tpm_PVEC, 1, "pvec", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tstate), __pyx_ptype_5pytpm_3tpm_TSTATE, 1, "tstate", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pvec), __pyx_ptype_3tpm_PVEC, 1, "pvec", 0))) __PYX_ERR(2, 140, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_tstate), __pyx_ptype_3tpm_TSTATE, 1, "tstate", 0))) __PYX_ERR(2, 140, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_92tpm(__pyx_self, __pyx_v_pvec, __pyx_v_s1, __pyx_v_s2, __pyx_v_ep, __pyx_v_eq, __pyx_v_tstate); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_92tpm(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_PVEC *__pyx_v_pvec, int __pyx_v_s1, int __pyx_v_s2, double __pyx_v_ep, double __pyx_v_eq, struct __pyx_obj_3tpm_TSTATE *__pyx_v_tstate) { + __pyx_t_3tpm_S_PVEC __pyx_v_spvec; + TPM_TSTATE __pyx_v_ststate; + int __pyx_v_t; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_t_4; + int __pyx_t_5; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tpm", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":180 + /* "src/tpm_astro.pxi":180 * * """ * if not 0 <= s1 < N_TPM_STATES: # <<<<<<<<<<<<<< * raise ValueError, "S1 must be in 0 <= S1 < N_TPM_STATES" * if not 0 <= s2 < N_TPM_STATES: */ - __pyx_t_1 = PyInt_FromLong(__pyx_v_s1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_s1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(__pyx_int_0, __pyx_t_1, Py_LE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2 = PyObject_RichCompare(__pyx_int_0, __pyx_t_1, Py_LE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 180, __pyx_L1_error) if (__Pyx_PyObject_IsTrue(__pyx_t_2)) { __Pyx_DECREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__N_TPM_STATES); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_N_TPM_STATES); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_LT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); + __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_LT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 180, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(2, 180, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = (!__pyx_t_4); - if (__pyx_t_5) { + __pyx_t_5 = ((!__pyx_t_4) != 0); + if (unlikely(__pyx_t_5)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":181 + /* "src/tpm_astro.pxi":181 * """ * if not 0 <= s1 < N_TPM_STATES: * raise ValueError, "S1 must be in 0 <= S1 < N_TPM_STATES" # <<<<<<<<<<<<<< * if not 0 <= s2 < N_TPM_STATES: * raise ValueError, "S2 must be in 0 <= S2 < N_TPM_STATES" */ - __Pyx_Raise(__pyx_builtin_ValueError, ((PyObject *)__pyx_kp_s_70), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L6; + __Pyx_Raise(__pyx_builtin_ValueError, __pyx_kp_s_S1_must_be_in_0_S1_N_TPM_STATES, 0, 0); + __PYX_ERR(2, 181, __pyx_L1_error) + + /* "src/tpm_astro.pxi":180 + * + * """ + * if not 0 <= s1 < N_TPM_STATES: # <<<<<<<<<<<<<< + * raise ValueError, "S1 must be in 0 <= S1 < N_TPM_STATES" + * if not 0 <= s2 < N_TPM_STATES: + */ } - __pyx_L6:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":182 + /* "src/tpm_astro.pxi":182 * if not 0 <= s1 < N_TPM_STATES: * raise ValueError, "S1 must be in 0 <= S1 < N_TPM_STATES" * if not 0 <= s2 < N_TPM_STATES: # <<<<<<<<<<<<<< * raise ValueError, "S2 must be in 0 <= S2 < N_TPM_STATES" * cdef S_PVEC spvec */ - __pyx_t_2 = PyInt_FromLong(__pyx_v_s2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_s2); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 182, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_RichCompare(__pyx_int_0, __pyx_t_2, Py_LE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = PyObject_RichCompare(__pyx_int_0, __pyx_t_2, Py_LE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 182, __pyx_L1_error) if (__Pyx_PyObject_IsTrue(__pyx_t_1)) { __Pyx_DECREF(__pyx_t_1); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__N_TPM_STATES); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_N_TPM_STATES); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 182, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_3, Py_LT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); + __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_3, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 182, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(2, 182, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_4 = (!__pyx_t_5); - if (__pyx_t_4) { + __pyx_t_4 = ((!__pyx_t_5) != 0); + if (unlikely(__pyx_t_4)) { - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":183 + /* "src/tpm_astro.pxi":183 * raise ValueError, "S1 must be in 0 <= S1 < N_TPM_STATES" * if not 0 <= s2 < N_TPM_STATES: * raise ValueError, "S2 must be in 0 <= S2 < N_TPM_STATES" # <<<<<<<<<<<<<< * cdef S_PVEC spvec * cdef tpm_tpm.TPM_TSTATE ststate */ - __Pyx_Raise(__pyx_builtin_ValueError, ((PyObject *)__pyx_kp_s_71), 0); - {__pyx_filename = __pyx_f[2]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L7; + __Pyx_Raise(__pyx_builtin_ValueError, __pyx_kp_s_S2_must_be_in_0_S2_N_TPM_STATES, 0, 0); + __PYX_ERR(2, 183, __pyx_L1_error) + + /* "src/tpm_astro.pxi":182 + * if not 0 <= s1 < N_TPM_STATES: + * raise ValueError, "S1 must be in 0 <= S1 < N_TPM_STATES" + * if not 0 <= s2 < N_TPM_STATES: # <<<<<<<<<<<<<< + * raise ValueError, "S2 must be in 0 <= S2 < N_TPM_STATES" + * cdef S_PVEC spvec + */ } - __pyx_L7:; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":187 + /* "src/tpm_astro.pxi":187 * cdef tpm_tpm.TPM_TSTATE ststate * * spvec = pvec.__get_pvec() # <<<<<<<<<<<<<< * ststate = tstate.__get_tstate() * t = tpm_astro.tpm(spvec.pvec, s1, s2, ep, eq, &ststate) */ - __pyx_v_spvec = ((struct __pyx_vtabstruct_5pytpm_3tpm_PVEC *)__pyx_v_pvec->__pyx_vtab)->__get_pvec(__pyx_v_pvec); + __pyx_v_spvec = ((struct __pyx_vtabstruct_3tpm_PVEC *)__pyx_v_pvec->__pyx_vtab)->__pyx___get_pvec(__pyx_v_pvec); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":188 + /* "src/tpm_astro.pxi":188 * * spvec = pvec.__get_pvec() * ststate = tstate.__get_tstate() # <<<<<<<<<<<<<< * t = tpm_astro.tpm(spvec.pvec, s1, s2, ep, eq, &ststate) * pvec.__set_pvec(spvec) */ - __pyx_v_ststate = ((struct __pyx_vtabstruct_5pytpm_3tpm_TSTATE *)__pyx_v_tstate->__pyx_vtab)->__get_tstate(__pyx_v_tstate); + __pyx_v_ststate = ((struct __pyx_vtabstruct_3tpm_TSTATE *)__pyx_v_tstate->__pyx_vtab)->__pyx___get_tstate(__pyx_v_tstate); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":189 + /* "src/tpm_astro.pxi":189 * spvec = pvec.__get_pvec() * ststate = tstate.__get_tstate() * t = tpm_astro.tpm(spvec.pvec, s1, s2, ep, eq, &ststate) # <<<<<<<<<<<<<< @@ -22058,29 +32901,29 @@ static PyObject *__pyx_pf_5pytpm_3tpm_46tpm(PyObject *__pyx_self, PyObject *__py */ __pyx_v_t = tpm(__pyx_v_spvec.pvec, __pyx_v_s1, __pyx_v_s2, __pyx_v_ep, __pyx_v_eq, (&__pyx_v_ststate)); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":190 + /* "src/tpm_astro.pxi":190 * ststate = tstate.__get_tstate() * t = tpm_astro.tpm(spvec.pvec, s1, s2, ep, eq, &ststate) * pvec.__set_pvec(spvec) # <<<<<<<<<<<<<< * tstate.__set_tstate(ststate) * return t */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_PVEC *)__pyx_v_pvec->__pyx_vtab)->__set_pvec(__pyx_v_pvec, __pyx_v_spvec); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_PVEC *)__pyx_v_pvec->__pyx_vtab)->__pyx___set_pvec(__pyx_v_pvec, __pyx_v_spvec); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":191 + /* "src/tpm_astro.pxi":191 * t = tpm_astro.tpm(spvec.pvec, s1, s2, ep, eq, &ststate) * pvec.__set_pvec(spvec) * tstate.__set_tstate(ststate) # <<<<<<<<<<<<<< * return t * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_TSTATE *)__pyx_v_tstate->__pyx_vtab)->__set_tstate(__pyx_v_tstate, __pyx_v_ststate); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_TSTATE *)__pyx_v_tstate->__pyx_vtab)->__pyx___set_tstate(__pyx_v_tstate, __pyx_v_ststate); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":192 + /* "src/tpm_astro.pxi":192 * pvec.__set_pvec(spvec) * tstate.__set_tstate(ststate) * return t # <<<<<<<<<<<<<< @@ -22088,19 +32931,26 @@ static PyObject *__pyx_pf_5pytpm_3tpm_46tpm(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyInt_FromLong(__pyx_v_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":140 + * + * + * def tpm(PVEC pvec, int s1, int s2, double ep, double eq, TSTATE tstate): # <<<<<<<<<<<<<< + * """Apply transition between to states. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.tpm"); + __Pyx_AddTraceback("tpm.tpm", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22108,7 +32958,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_46tpm(PyObject *__pyx_self, PyObject *__py return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":195 +/* "src/tpm_astro.pxi":195 * * * def tpm_state(s): # <<<<<<<<<<<<<< @@ -22116,18 +32966,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_46tpm(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_47tpm_state(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_47tpm_state[] = "Return state name given state id.\n\n Given an integer id for a state, this function returns a\n descriptive name for the state.\n\n Parameters\n ----------\n s : int\n State id.\n\n Returns\n -------\n n : str\n State name.\n\n Examples\n --------\n >>> tpm.tpm_state(tpm.TPM_S06)\n 'Helio. mean FK5'\n >>> tpm.tpm_state(tpm.TPM_S04)\n 'IAU 1958 Galactic'\n >>> tpm.tpm_state(tpm.TPM_S20)\n 'Topo. obs. HA/Dec'\n >>> tpm.tpm_state(tpm.TPM_S19)\n 'Topo. obs. Az/El'\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_47tpm_state = {__Pyx_NAMESTR("tpm_state"), (PyCFunction)__pyx_pf_5pytpm_3tpm_47tpm_state, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_47tpm_state)}; -static PyObject *__pyx_pf_5pytpm_3tpm_47tpm_state(PyObject *__pyx_self, PyObject *__pyx_v_s) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_95tpm_state(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/ +static char __pyx_doc_3tpm_94tpm_state[] = "Return state name given state id.\n\n Given an integer id for a state, this function returns a\n descriptive name for the state.\n\n Parameters\n ----------\n s : int\n State id.\n\n Returns\n -------\n n : str\n State name.\n\n Examples\n --------\n >>> tpm.tpm_state(tpm.TPM_S06)\n 'Helio. mean FK5'\n >>> tpm.tpm_state(tpm.TPM_S04)\n 'IAU 1958 Galactic'\n >>> tpm.tpm_state(tpm.TPM_S20)\n 'Topo. obs. HA/Dec'\n >>> tpm.tpm_state(tpm.TPM_S19)\n 'Topo. obs. Az/El'\n\n "; +static PyMethodDef __pyx_mdef_3tpm_95tpm_state = {"tpm_state", (PyCFunction)__pyx_pw_3tpm_95tpm_state, METH_O, __pyx_doc_3tpm_94tpm_state}; +static PyObject *__pyx_pw_3tpm_95tpm_state(PyObject *__pyx_self, PyObject *__pyx_v_s) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tpm_state (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_94tpm_state(__pyx_self, ((PyObject *)__pyx_v_s)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_94tpm_state(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_s) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations int __pyx_t_1; char *__pyx_t_2; PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannySetupContext("tpm_state"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tpm_state", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":223 + /* "src/tpm_astro.pxi":223 * * """ * return tpm_astro.tpm_state(s).decode("utf-8") # <<<<<<<<<<<<<< @@ -22135,20 +33000,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_47tpm_state(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_AsInt(__pyx_v_s); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_As_int(__pyx_v_s); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 223, __pyx_L1_error) __pyx_t_2 = tpm_state(__pyx_t_1); - __pyx_t_3 = ((PyObject *)PyUnicode_DecodeUTF8(__pyx_t_2, strlen(__pyx_t_2), NULL)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_t_3)); - __pyx_r = ((PyObject *)__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_decode_c_string(__pyx_t_2, 0, strlen(__pyx_t_2), NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 223, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_INCREF(__pyx_t_3); + __pyx_r = __pyx_t_3; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":195 + * + * + * def tpm_state(s): # <<<<<<<<<<<<<< + * """Return state name given state id. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.tpm_state"); + __Pyx_AddTraceback("tpm.tpm_state", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22156,7 +33028,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_47tpm_state(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":226 +/* "src/tpm_astro.pxi":226 * * * def delta_AT(utc): # <<<<<<<<<<<<<< @@ -22164,17 +33036,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_47tpm_state(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_48delta_AT(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_48delta_AT[] = "Return Delta AT = TAI - UTC for the given UTC.\n\n .. warning::\n\n The file src/tpm/delta_AT.c must be updated when Delta AT is\n changed by the IERS, and PyTPM Cython code must re-compiled.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n d : float\n Delta AT = TAI - UTC in seconds.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_48delta_AT = {__Pyx_NAMESTR("delta_AT"), (PyCFunction)__pyx_pf_5pytpm_3tpm_48delta_AT, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_48delta_AT)}; -static PyObject *__pyx_pf_5pytpm_3tpm_48delta_AT(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_97delta_AT(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_96delta_AT[] = "Return Delta AT = TAI - UTC for the given UTC.\n\n .. warning::\n\n The file src/tpm/delta_AT.c must be updated when Delta AT is\n changed by the IERS, and PyTPM Cython code must re-compiled.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n d : float\n Delta AT = TAI - UTC in seconds.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_97delta_AT = {"delta_AT", (PyCFunction)__pyx_pw_3tpm_97delta_AT, METH_O, __pyx_doc_3tpm_96delta_AT}; +static PyObject *__pyx_pw_3tpm_97delta_AT(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("delta_AT (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_96delta_AT(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_96delta_AT(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("delta_AT"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("delta_AT", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":245 + /* "src/tpm_astro.pxi":245 * * """ * return tpm_astro.delta_AT(utc) # <<<<<<<<<<<<<< @@ -22182,18 +33069,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_48delta_AT(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(delta_AT(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 245, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(delta_AT(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":226 + * + * + * def delta_AT(utc): # <<<<<<<<<<<<<< + * """Return Delta AT = TAI - UTC for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.delta_AT"); + __Pyx_AddTraceback("tpm.delta_AT", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22201,7 +33095,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_48delta_AT(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":248 +/* "src/tpm_astro.pxi":248 * * * def delta_T(ut1): # <<<<<<<<<<<<<< @@ -22209,17 +33103,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_48delta_AT(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_49delta_T(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_49delta_T[] = "Return Delta T = TT - UT1 for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n dt : float\n Delta T = TT - UT1 in seconds.\n\n Notes\n -----\n This function returns the ``TT - UT1`` value for the given UT1. The\n value returned is ``ET - UT1`` for dates before 1984.0 and ``TDT -\n UT1`` for dates on and after 1984.0. TDT was the name of TT between\n 1984.0 and 2000.0.\n\n .. warning::\n\n A simple linear interpolation is carried out over a list of\n historical values.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_49delta_T = {__Pyx_NAMESTR("delta_T"), (PyCFunction)__pyx_pf_5pytpm_3tpm_49delta_T, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_49delta_T)}; -static PyObject *__pyx_pf_5pytpm_3tpm_49delta_T(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_99delta_T(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_98delta_T[] = "Return Delta T = TT - UT1 for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n dt : float\n Delta T = TT - UT1 in seconds.\n\n Notes\n -----\n This function returns the ``TT - UT1`` value for the given UT1. The\n value returned is ``ET - UT1`` for dates before 1984.0 and ``TDT -\n UT1`` for dates on and after 1984.0. TDT was the name of TT between\n 1984.0 and 2000.0.\n\n .. warning::\n\n A simple linear interpolation is carried out over a list of\n historical values.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_99delta_T = {"delta_T", (PyCFunction)__pyx_pw_3tpm_99delta_T, METH_O, __pyx_doc_3tpm_98delta_T}; +static PyObject *__pyx_pw_3tpm_99delta_T(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("delta_T (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_98delta_T(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_98delta_T(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("delta_T"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("delta_T", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":274 + /* "src/tpm_astro.pxi":274 * * """ * return tpm_astro.delta_T(ut1) # <<<<<<<<<<<<<< @@ -22227,18 +33136,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_49delta_T(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(delta_T(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 274, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(delta_T(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":248 + * + * + * def delta_T(ut1): # <<<<<<<<<<<<<< + * """Return Delta T = TT - UT1 for the given UT1. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.delta_T"); + __Pyx_AddTraceback("tpm.delta_T", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22246,7 +33162,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_49delta_T(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":277 +/* "src/tpm_astro.pxi":277 * * * def delta_UT(utc): # <<<<<<<<<<<<<< @@ -22254,17 +33170,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_49delta_T(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_50delta_UT(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_50delta_UT[] = "Return Delta UT = UT1 - UTC for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n dt : float\n UT1 - UTC for in seconds.\n\n Notes\n -----\n The value of ``UT1 - UTC`` is calculated by taking the difference\n of delta_ET and delta_T. The later is calculated using a built-in\n model. For the latter the input time argument must be UT1, but the\n error in using UTC should be small.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_50delta_UT = {__Pyx_NAMESTR("delta_UT"), (PyCFunction)__pyx_pf_5pytpm_3tpm_50delta_UT, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_50delta_UT)}; -static PyObject *__pyx_pf_5pytpm_3tpm_50delta_UT(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_101delta_UT(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_100delta_UT[] = "Return Delta UT = UT1 - UTC for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n dt : float\n UT1 - UTC for in seconds.\n\n Notes\n -----\n The value of ``UT1 - UTC`` is calculated by taking the difference\n of delta_ET and delta_T. The later is calculated using a built-in\n model. For the latter the input time argument must be UT1, but the\n error in using UTC should be small.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_101delta_UT = {"delta_UT", (PyCFunction)__pyx_pw_3tpm_101delta_UT, METH_O, __pyx_doc_3tpm_100delta_UT}; +static PyObject *__pyx_pw_3tpm_101delta_UT(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("delta_UT (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_100delta_UT(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_100delta_UT(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("delta_UT"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("delta_UT", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":298 + /* "src/tpm_astro.pxi":298 * * """ * return tpm_astro.delta_UT(utc) # <<<<<<<<<<<<<< @@ -22272,18 +33203,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_50delta_UT(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(delta_UT(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 298, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(delta_UT(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":277 + * + * + * def delta_UT(utc): # <<<<<<<<<<<<<< + * """Return Delta UT = UT1 - UTC for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.delta_UT"); + __Pyx_AddTraceback("tpm.delta_UT", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22291,7 +33229,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_50delta_UT(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":301 +/* "src/tpm_astro.pxi":301 * * * def delta_ET(utc): # <<<<<<<<<<<<<< @@ -22299,17 +33237,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_50delta_UT(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_51delta_ET(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_51delta_ET[] = "Return Delta ET = ET - UTC for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n dt : float\n Delta ET = ET - UTC in seconds.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_51delta_ET = {__Pyx_NAMESTR("delta_ET"), (PyCFunction)__pyx_pf_5pytpm_3tpm_51delta_ET, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_51delta_ET)}; -static PyObject *__pyx_pf_5pytpm_3tpm_51delta_ET(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_103delta_ET(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_102delta_ET[] = "Return Delta ET = ET - UTC for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n dt : float\n Delta ET = ET - UTC in seconds.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_103delta_ET = {"delta_ET", (PyCFunction)__pyx_pw_3tpm_103delta_ET, METH_O, __pyx_doc_3tpm_102delta_ET}; +static PyObject *__pyx_pw_3tpm_103delta_ET(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("delta_ET (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_102delta_ET(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_102delta_ET(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("delta_ET"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("delta_ET", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":315 + /* "src/tpm_astro.pxi":315 * * """ * return tpm_astro.delta_ET(utc) # <<<<<<<<<<<<<< @@ -22317,18 +33270,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_51delta_ET(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(delta_ET(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 315, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(delta_ET(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":301 + * + * + * def delta_ET(utc): # <<<<<<<<<<<<<< + * """Return Delta ET = ET - UTC for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.delta_ET"); + __Pyx_AddTraceback("tpm.delta_ET", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22336,7 +33296,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_51delta_ET(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":318 +/* "src/tpm_astro.pxi":318 * * * def delta_TT(utc): # <<<<<<<<<<<<<< @@ -22344,17 +33304,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_51delta_ET(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_52delta_TT(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_52delta_TT[] = "Return Delta TT = TDT - UTC for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n dt : float\n Delta TT = TDT - UTC.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_52delta_TT = {__Pyx_NAMESTR("delta_TT"), (PyCFunction)__pyx_pf_5pytpm_3tpm_52delta_TT, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_52delta_TT)}; -static PyObject *__pyx_pf_5pytpm_3tpm_52delta_TT(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_105delta_TT(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_104delta_TT[] = "Return Delta TT = TDT - UTC for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n dt : float\n Delta TT = TDT - UTC.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_105delta_TT = {"delta_TT", (PyCFunction)__pyx_pw_3tpm_105delta_TT, METH_O, __pyx_doc_3tpm_104delta_TT}; +static PyObject *__pyx_pw_3tpm_105delta_TT(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("delta_TT (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_104delta_TT(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_104delta_TT(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("delta_TT"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("delta_TT", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":332 + /* "src/tpm_astro.pxi":332 * * """ * return tpm_astro.delta_TT(utc) # <<<<<<<<<<<<<< @@ -22362,18 +33337,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_52delta_TT(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(delta_TT(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 332, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(delta_TT(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 332, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":318 + * + * + * def delta_TT(utc): # <<<<<<<<<<<<<< + * """Return Delta TT = TDT - UTC for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.delta_TT"); + __Pyx_AddTraceback("tpm.delta_TT", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22381,7 +33363,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_52delta_TT(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":335 +/* "src/tpm_astro.pxi":335 * * * def tdt2tdb(tdt): # <<<<<<<<<<<<<< @@ -22389,17 +33371,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_52delta_TT(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_53tdt2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_53tdt2tdb[] = "Return TDB for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n dt : float\n TDB as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_53tdt2tdb = {__Pyx_NAMESTR("tdt2tdb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_53tdt2tdb, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_53tdt2tdb)}; -static PyObject *__pyx_pf_5pytpm_3tpm_53tdt2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_107tdt2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_106tdt2tdb[] = "Return TDB for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n dt : float\n TDB as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_107tdt2tdb = {"tdt2tdb", (PyCFunction)__pyx_pw_3tpm_107tdt2tdb, METH_O, __pyx_doc_3tpm_106tdt2tdb}; +static PyObject *__pyx_pw_3tpm_107tdt2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tdt2tdb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_106tdt2tdb(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_106tdt2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tdt2tdb"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tdt2tdb", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":349 + /* "src/tpm_astro.pxi":349 * * """ * return tpm_astro.tdt2tdb(tdt) # <<<<<<<<<<<<<< @@ -22407,18 +33404,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_53tdt2tdb(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tdt2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 349, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tdt2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":335 + * + * + * def tdt2tdb(tdt): # <<<<<<<<<<<<<< + * """Return TDB for the given TDT. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tdt2tdb"); + __Pyx_AddTraceback("tpm.tdt2tdb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22426,7 +33430,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_53tdt2tdb(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":352 +/* "src/tpm_astro.pxi":352 * * * def ut12gmst(ut1): # <<<<<<<<<<<<<< @@ -22434,17 +33438,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_53tdt2tdb(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_54ut12gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_54ut12gmst[] = "Return GMST for the given UT1.\n\n Given a UT1 Julian date, this function returns the Greenwich Mean\n Sidereal Time as an angle in radians in the range (0, 2\317\200).\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n gmst : float\n GMST as an angle in radians in the range 0-2\317\200.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_54ut12gmst = {__Pyx_NAMESTR("ut12gmst"), (PyCFunction)__pyx_pf_5pytpm_3tpm_54ut12gmst, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_54ut12gmst)}; -static PyObject *__pyx_pf_5pytpm_3tpm_54ut12gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_109ut12gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_108ut12gmst[] = "Return GMST for the given UT1.\n\n Given a UT1 Julian date, this function returns the Greenwich Mean\n Sidereal Time as an angle in radians in the range (0, 2\317\200).\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n gmst : float\n GMST as an angle in radians in the range 0-2\317\200.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_109ut12gmst = {"ut12gmst", (PyCFunction)__pyx_pw_3tpm_109ut12gmst, METH_O, __pyx_doc_3tpm_108ut12gmst}; +static PyObject *__pyx_pw_3tpm_109ut12gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut12gmst (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_108ut12gmst(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_108ut12gmst(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut12gmst"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut12gmst", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":369 + /* "src/tpm_astro.pxi":369 * * """ * return tpm_astro.ut12gmst(ut1) # <<<<<<<<<<<<<< @@ -22452,18 +33471,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_54ut12gmst(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut12gmst(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 369, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut12gmst(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":352 + * + * + * def ut12gmst(ut1): # <<<<<<<<<<<<<< + * """Return GMST for the given UT1. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut12gmst"); + __Pyx_AddTraceback("tpm.ut12gmst", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22471,7 +33497,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_54ut12gmst(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":372 +/* "src/tpm_astro.pxi":372 * * * def et2tdt(et): # <<<<<<<<<<<<<< @@ -22479,17 +33505,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_54ut12gmst(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_55et2tdt(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_55et2tdt[] = "Return TDT for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_55et2tdt = {__Pyx_NAMESTR("et2tdt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_55et2tdt, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_55et2tdt)}; -static PyObject *__pyx_pf_5pytpm_3tpm_55et2tdt(PyObject *__pyx_self, PyObject *__pyx_v_et) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_111et2tdt(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ +static char __pyx_doc_3tpm_110et2tdt[] = "Return TDT for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_111et2tdt = {"et2tdt", (PyCFunction)__pyx_pw_3tpm_111et2tdt, METH_O, __pyx_doc_3tpm_110et2tdt}; +static PyObject *__pyx_pw_3tpm_111et2tdt(PyObject *__pyx_self, PyObject *__pyx_v_et) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("et2tdt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_110et2tdt(__pyx_self, ((PyObject *)__pyx_v_et)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_110et2tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("et2tdt"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("et2tdt", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":386 + /* "src/tpm_astro.pxi":386 * * """ * return tpm_astro.et2tdt(et) # <<<<<<<<<<<<<< @@ -22497,18 +33538,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_55et2tdt(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(et2tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 386, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(et2tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":372 + * + * + * def et2tdt(et): # <<<<<<<<<<<<<< + * """Return TDT for the given ET. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.et2tdt"); + __Pyx_AddTraceback("tpm.et2tdt", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22516,7 +33564,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_55et2tdt(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":389 +/* "src/tpm_astro.pxi":389 * * * def tai2tdt(tai): # <<<<<<<<<<<<<< @@ -22524,17 +33572,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_55et2tdt(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_56tai2tdt(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_56tai2tdt[] = "Return TDT for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_56tai2tdt = {__Pyx_NAMESTR("tai2tdt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_56tai2tdt, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_56tai2tdt)}; -static PyObject *__pyx_pf_5pytpm_3tpm_56tai2tdt(PyObject *__pyx_self, PyObject *__pyx_v_tai) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_113tai2tdt(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ +static char __pyx_doc_3tpm_112tai2tdt[] = "Return TDT for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_113tai2tdt = {"tai2tdt", (PyCFunction)__pyx_pw_3tpm_113tai2tdt, METH_O, __pyx_doc_3tpm_112tai2tdt}; +static PyObject *__pyx_pw_3tpm_113tai2tdt(PyObject *__pyx_self, PyObject *__pyx_v_tai) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tai2tdt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_112tai2tdt(__pyx_self, ((PyObject *)__pyx_v_tai)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_112tai2tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tai2tdt"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tai2tdt", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":403 + /* "src/tpm_astro.pxi":403 * * """ * return tpm_astro.tai2tdt(tai) # <<<<<<<<<<<<<< @@ -22542,26 +33605,33 @@ static PyObject *__pyx_pf_5pytpm_3tpm_56tai2tdt(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tai2tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 403, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tai2tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 403, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tai2tdt"); - __pyx_r = NULL; + /* "src/tpm_astro.pxi":389 + * + * + * def tai2tdt(tai): # <<<<<<<<<<<<<< + * """Return TDT for the given TAI. + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_2); + __Pyx_AddTraceback("tpm.tai2tdt", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":406 +/* "src/tpm_astro.pxi":406 * * * def tdt2et(tdt): # <<<<<<<<<<<<<< @@ -22569,17 +33639,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_56tai2tdt(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_57tdt2et(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_57tdt2et[] = "Return ET for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n --------\n et : float\n ET as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_57tdt2et = {__Pyx_NAMESTR("tdt2et"), (PyCFunction)__pyx_pf_5pytpm_3tpm_57tdt2et, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_57tdt2et)}; -static PyObject *__pyx_pf_5pytpm_3tpm_57tdt2et(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_115tdt2et(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_114tdt2et[] = "Return ET for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n --------\n et : float\n ET as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_115tdt2et = {"tdt2et", (PyCFunction)__pyx_pw_3tpm_115tdt2et, METH_O, __pyx_doc_3tpm_114tdt2et}; +static PyObject *__pyx_pw_3tpm_115tdt2et(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tdt2et (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_114tdt2et(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_114tdt2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tdt2et"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tdt2et", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":420 + /* "src/tpm_astro.pxi":420 * * """ * return tpm_astro.tdt2et(tdt) # <<<<<<<<<<<<<< @@ -22587,18 +33672,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_57tdt2et(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tdt2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 420, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tdt2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":406 + * + * + * def tdt2et(tdt): # <<<<<<<<<<<<<< + * """Return ET for the given TDT. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tdt2et"); + __Pyx_AddTraceback("tpm.tdt2et", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22606,7 +33698,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_57tdt2et(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":423 +/* "src/tpm_astro.pxi":423 * * * def ut12et(ut1): # <<<<<<<<<<<<<< @@ -22614,17 +33706,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_57tdt2et(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_58ut12et(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_58ut12et[] = "Return ET for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n et : float\n ET as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_58ut12et = {__Pyx_NAMESTR("ut12et"), (PyCFunction)__pyx_pf_5pytpm_3tpm_58ut12et, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_58ut12et)}; -static PyObject *__pyx_pf_5pytpm_3tpm_58ut12et(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_117ut12et(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_116ut12et[] = "Return ET for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n et : float\n ET as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_117ut12et = {"ut12et", (PyCFunction)__pyx_pw_3tpm_117ut12et, METH_O, __pyx_doc_3tpm_116ut12et}; +static PyObject *__pyx_pw_3tpm_117ut12et(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut12et (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_116ut12et(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_116ut12et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut12et"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut12et", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":437 + /* "src/tpm_astro.pxi":437 * * """ * return tpm_astro.ut12et(ut1) # <<<<<<<<<<<<<< @@ -22632,18 +33739,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_58ut12et(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut12et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 437, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut12et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":423 + * + * + * def ut12et(ut1): # <<<<<<<<<<<<<< + * """Return ET for the given UT1. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut12et"); + __Pyx_AddTraceback("tpm.ut12et", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22651,7 +33765,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_58ut12et(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":440 +/* "src/tpm_astro.pxi":440 * * * def utc2et(utc): # <<<<<<<<<<<<<< @@ -22659,17 +33773,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_58ut12et(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_59utc2et(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_59utc2et[] = "Return ET for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n et : float\n ET as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_59utc2et = {__Pyx_NAMESTR("utc2et"), (PyCFunction)__pyx_pf_5pytpm_3tpm_59utc2et, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_59utc2et)}; -static PyObject *__pyx_pf_5pytpm_3tpm_59utc2et(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_119utc2et(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_118utc2et[] = "Return ET for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n et : float\n ET as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_119utc2et = {"utc2et", (PyCFunction)__pyx_pw_3tpm_119utc2et, METH_O, __pyx_doc_3tpm_118utc2et}; +static PyObject *__pyx_pw_3tpm_119utc2et(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("utc2et (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_118utc2et(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_118utc2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("utc2et"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("utc2et", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":454 + /* "src/tpm_astro.pxi":454 * * """ * return tpm_astro.utc2et(utc) # <<<<<<<<<<<<<< @@ -22677,18 +33806,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_59utc2et(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(utc2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 454, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(utc2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 454, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":440 + * + * + * def utc2et(utc): # <<<<<<<<<<<<<< + * """Return ET for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.utc2et"); + __Pyx_AddTraceback("tpm.utc2et", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22696,7 +33832,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_59utc2et(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":457 +/* "src/tpm_astro.pxi":457 * * * def utc2tdt(utc): # <<<<<<<<<<<<<< @@ -22704,17 +33840,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_59utc2et(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_60utc2tdt(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_60utc2tdt[] = "Return TDT for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_60utc2tdt = {__Pyx_NAMESTR("utc2tdt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_60utc2tdt, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_60utc2tdt)}; -static PyObject *__pyx_pf_5pytpm_3tpm_60utc2tdt(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_121utc2tdt(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_120utc2tdt[] = "Return TDT for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_121utc2tdt = {"utc2tdt", (PyCFunction)__pyx_pw_3tpm_121utc2tdt, METH_O, __pyx_doc_3tpm_120utc2tdt}; +static PyObject *__pyx_pw_3tpm_121utc2tdt(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("utc2tdt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_120utc2tdt(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_120utc2tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("utc2tdt"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("utc2tdt", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":471 + /* "src/tpm_astro.pxi":471 * * """ * return tpm_astro.utc2tdt(utc) # <<<<<<<<<<<<<< @@ -22722,18 +33873,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_60utc2tdt(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 471; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(utc2tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 471; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 471, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(utc2tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":457 + * + * + * def utc2tdt(utc): # <<<<<<<<<<<<<< + * """Return TDT for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.utc2tdt"); + __Pyx_AddTraceback("tpm.utc2tdt", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22741,7 +33899,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_60utc2tdt(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":474 +/* "src/tpm_astro.pxi":474 * * * def utc2ut1(utc): # <<<<<<<<<<<<<< @@ -22749,17 +33907,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_60utc2tdt(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_61utc2ut1(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_61utc2ut1[] = "Return UT1 for the given UTC.\n\n Parameters\n ----------\n utcv: float\n UTC as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_61utc2ut1 = {__Pyx_NAMESTR("utc2ut1"), (PyCFunction)__pyx_pf_5pytpm_3tpm_61utc2ut1, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_61utc2ut1)}; -static PyObject *__pyx_pf_5pytpm_3tpm_61utc2ut1(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_123utc2ut1(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_122utc2ut1[] = "Return UT1 for the given UTC.\n\n Parameters\n ----------\n utcv: float\n UTC as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_123utc2ut1 = {"utc2ut1", (PyCFunction)__pyx_pw_3tpm_123utc2ut1, METH_O, __pyx_doc_3tpm_122utc2ut1}; +static PyObject *__pyx_pw_3tpm_123utc2ut1(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("utc2ut1 (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_122utc2ut1(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_122utc2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("utc2ut1"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("utc2ut1", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":488 + /* "src/tpm_astro.pxi":488 * * """ * return tpm_astro.utc2ut1(utc) # <<<<<<<<<<<<<< @@ -22767,18 +33940,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_61utc2ut1(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 488; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(utc2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 488; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 488, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(utc2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 488, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":474 + * + * + * def utc2ut1(utc): # <<<<<<<<<<<<<< + * """Return UT1 for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.utc2ut1"); + __Pyx_AddTraceback("tpm.utc2ut1", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22786,7 +33966,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_61utc2ut1(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":491 +/* "src/tpm_astro.pxi":491 * * * def et2ut1(et): # <<<<<<<<<<<<<< @@ -22794,17 +33974,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_61utc2ut1(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_62et2ut1(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_62et2ut1[] = "Return UT1 for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_62et2ut1 = {__Pyx_NAMESTR("et2ut1"), (PyCFunction)__pyx_pf_5pytpm_3tpm_62et2ut1, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_62et2ut1)}; -static PyObject *__pyx_pf_5pytpm_3tpm_62et2ut1(PyObject *__pyx_self, PyObject *__pyx_v_et) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_125et2ut1(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ +static char __pyx_doc_3tpm_124et2ut1[] = "Return UT1 for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_125et2ut1 = {"et2ut1", (PyCFunction)__pyx_pw_3tpm_125et2ut1, METH_O, __pyx_doc_3tpm_124et2ut1}; +static PyObject *__pyx_pw_3tpm_125et2ut1(PyObject *__pyx_self, PyObject *__pyx_v_et) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("et2ut1 (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_124et2ut1(__pyx_self, ((PyObject *)__pyx_v_et)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_124et2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("et2ut1"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("et2ut1", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":505 + /* "src/tpm_astro.pxi":505 * * """ * return tpm_astro.et2ut1(et) # <<<<<<<<<<<<<< @@ -22812,18 +34007,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_62et2ut1(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(et2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 505, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(et2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 505, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":491 + * + * + * def et2ut1(et): # <<<<<<<<<<<<<< + * """Return UT1 for the given ET. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.et2ut1"); + __Pyx_AddTraceback("tpm.et2ut1", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22831,7 +34033,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_62et2ut1(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":508 +/* "src/tpm_astro.pxi":508 * * * def et2utc(et): # <<<<<<<<<<<<<< @@ -22839,17 +34041,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_62et2ut1(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_63et2utc(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_63et2utc[] = "Return UTC for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_63et2utc = {__Pyx_NAMESTR("et2utc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_63et2utc, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_63et2utc)}; -static PyObject *__pyx_pf_5pytpm_3tpm_63et2utc(PyObject *__pyx_self, PyObject *__pyx_v_et) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_127et2utc(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ +static char __pyx_doc_3tpm_126et2utc[] = "Return UTC for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_127et2utc = {"et2utc", (PyCFunction)__pyx_pw_3tpm_127et2utc, METH_O, __pyx_doc_3tpm_126et2utc}; +static PyObject *__pyx_pw_3tpm_127et2utc(PyObject *__pyx_self, PyObject *__pyx_v_et) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("et2utc (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_126et2utc(__pyx_self, ((PyObject *)__pyx_v_et)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_126et2utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("et2utc"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("et2utc", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":522 + /* "src/tpm_astro.pxi":522 * * """ * return tpm_astro.et2utc(et) # <<<<<<<<<<<<<< @@ -22857,18 +34074,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_63et2utc(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(et2utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 522, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(et2utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":508 + * + * + * def et2utc(et): # <<<<<<<<<<<<<< + * """Return UTC for the given ET. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.et2utc"); + __Pyx_AddTraceback("tpm.et2utc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22876,7 +34100,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_63et2utc(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":525 +/* "src/tpm_astro.pxi":525 * * * def tai2utc(tai): # <<<<<<<<<<<<<< @@ -22884,17 +34108,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_63et2utc(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_64tai2utc(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_64tai2utc[] = "Return UTC for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_64tai2utc = {__Pyx_NAMESTR("tai2utc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_64tai2utc, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_64tai2utc)}; -static PyObject *__pyx_pf_5pytpm_3tpm_64tai2utc(PyObject *__pyx_self, PyObject *__pyx_v_tai) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_129tai2utc(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ +static char __pyx_doc_3tpm_128tai2utc[] = "Return UTC for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_129tai2utc = {"tai2utc", (PyCFunction)__pyx_pw_3tpm_129tai2utc, METH_O, __pyx_doc_3tpm_128tai2utc}; +static PyObject *__pyx_pw_3tpm_129tai2utc(PyObject *__pyx_self, PyObject *__pyx_v_tai) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tai2utc (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_128tai2utc(__pyx_self, ((PyObject *)__pyx_v_tai)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_128tai2utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tai2utc"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tai2utc", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":539 + /* "src/tpm_astro.pxi":539 * * """ * return tpm_astro.tai2utc(tai) # <<<<<<<<<<<<<< @@ -22902,18 +34141,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_64tai2utc(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tai2utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 539, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tai2utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 539, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":525 + * + * + * def tai2utc(tai): # <<<<<<<<<<<<<< + * """Return UTC for the given TAI. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tai2utc"); + __Pyx_AddTraceback("tpm.tai2utc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22921,7 +34167,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_64tai2utc(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":542 +/* "src/tpm_astro.pxi":542 * * * def tdt2tai(tdt): # <<<<<<<<<<<<<< @@ -22929,17 +34175,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_64tai2utc(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_65tdt2tai(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_65tdt2tai[] = "Return TAI for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n tai : float\n TAI as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_65tdt2tai = {__Pyx_NAMESTR("tdt2tai"), (PyCFunction)__pyx_pf_5pytpm_3tpm_65tdt2tai, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_65tdt2tai)}; -static PyObject *__pyx_pf_5pytpm_3tpm_65tdt2tai(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_131tdt2tai(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_130tdt2tai[] = "Return TAI for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n tai : float\n TAI as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_131tdt2tai = {"tdt2tai", (PyCFunction)__pyx_pw_3tpm_131tdt2tai, METH_O, __pyx_doc_3tpm_130tdt2tai}; +static PyObject *__pyx_pw_3tpm_131tdt2tai(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tdt2tai (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_130tdt2tai(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_130tdt2tai(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tdt2tai"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tdt2tai", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":556 + /* "src/tpm_astro.pxi":556 * * """ * return tpm_astro.tdt2tai(tdt) # <<<<<<<<<<<<<< @@ -22947,18 +34208,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_65tdt2tai(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tdt2tai(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 556, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tdt2tai(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 556, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":542 + * + * + * def tdt2tai(tdt): # <<<<<<<<<<<<<< + * """Return TAI for the given TDT. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tdt2tai"); + __Pyx_AddTraceback("tpm.tdt2tai", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -22966,7 +34234,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_65tdt2tai(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":559 +/* "src/tpm_astro.pxi":559 * * * def tdt2utc(tdt): # <<<<<<<<<<<<<< @@ -22974,17 +34242,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_65tdt2tai(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_66tdt2utc(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_66tdt2utc[] = "Return UTC for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_66tdt2utc = {__Pyx_NAMESTR("tdt2utc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_66tdt2utc, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_66tdt2utc)}; -static PyObject *__pyx_pf_5pytpm_3tpm_66tdt2utc(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_133tdt2utc(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_132tdt2utc[] = "Return UTC for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_133tdt2utc = {"tdt2utc", (PyCFunction)__pyx_pw_3tpm_133tdt2utc, METH_O, __pyx_doc_3tpm_132tdt2utc}; +static PyObject *__pyx_pw_3tpm_133tdt2utc(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tdt2utc (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_132tdt2utc(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_132tdt2utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tdt2utc"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tdt2utc", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":573 + /* "src/tpm_astro.pxi":573 * * """ * return tpm_astro.tdt2utc(tdt) # <<<<<<<<<<<<<< @@ -22992,18 +34275,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_66tdt2utc(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tdt2utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 573, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tdt2utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":559 + * + * + * def tdt2utc(tdt): # <<<<<<<<<<<<<< + * """Return UTC for the given TDT. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tdt2utc"); + __Pyx_AddTraceback("tpm.tdt2utc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23011,7 +34301,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_66tdt2utc(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":576 +/* "src/tpm_astro.pxi":576 * * * def ut12utc(ut1): # <<<<<<<<<<<<<< @@ -23019,17 +34309,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_66tdt2utc(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_67ut12utc(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_67ut12utc[] = "Return UTC for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_67ut12utc = {__Pyx_NAMESTR("ut12utc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_67ut12utc, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_67ut12utc)}; -static PyObject *__pyx_pf_5pytpm_3tpm_67ut12utc(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_135ut12utc(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_134ut12utc[] = "Return UTC for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n utc : float\n UTC as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_135ut12utc = {"ut12utc", (PyCFunction)__pyx_pw_3tpm_135ut12utc, METH_O, __pyx_doc_3tpm_134ut12utc}; +static PyObject *__pyx_pw_3tpm_135ut12utc(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut12utc (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_134ut12utc(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_134ut12utc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut12utc"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut12utc", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":590 + /* "src/tpm_astro.pxi":590 * * """ * return tpm_astro.ut12utc(ut1) # <<<<<<<<<<<<<< @@ -23037,18 +34342,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_67ut12utc(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut12utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 590, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut12utc(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":576 + * + * + * def ut12utc(ut1): # <<<<<<<<<<<<<< + * """Return UTC for the given UT1. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut12utc"); + __Pyx_AddTraceback("tpm.ut12utc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23056,7 +34368,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_67ut12utc(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":593 +/* "src/tpm_astro.pxi":593 * * * def et2tai(et): # <<<<<<<<<<<<<< @@ -23064,17 +34376,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_67ut12utc(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_68et2tai(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_68et2tai[] = "Return TAI for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n tai : float\n TAI as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_68et2tai = {__Pyx_NAMESTR("et2tai"), (PyCFunction)__pyx_pf_5pytpm_3tpm_68et2tai, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_68et2tai)}; -static PyObject *__pyx_pf_5pytpm_3tpm_68et2tai(PyObject *__pyx_self, PyObject *__pyx_v_et) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_137et2tai(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ +static char __pyx_doc_3tpm_136et2tai[] = "Return TAI for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n tai : float\n TAI as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_137et2tai = {"et2tai", (PyCFunction)__pyx_pw_3tpm_137et2tai, METH_O, __pyx_doc_3tpm_136et2tai}; +static PyObject *__pyx_pw_3tpm_137et2tai(PyObject *__pyx_self, PyObject *__pyx_v_et) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("et2tai (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_136et2tai(__pyx_self, ((PyObject *)__pyx_v_et)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_136et2tai(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("et2tai"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("et2tai", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":607 + /* "src/tpm_astro.pxi":607 * * """ * return tpm_astro.et2tai(et) # <<<<<<<<<<<<<< @@ -23082,18 +34409,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_68et2tai(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(et2tai(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 607, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(et2tai(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":593 + * + * + * def et2tai(et): # <<<<<<<<<<<<<< + * """Return TAI for the given ET. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.et2tai"); + __Pyx_AddTraceback("tpm.et2tai", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23101,7 +34435,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_68et2tai(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":610 +/* "src/tpm_astro.pxi":610 * * * def et2tdb(et): # <<<<<<<<<<<<<< @@ -23109,17 +34443,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_68et2tai(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_69et2tdb(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_69et2tdb[] = "Return TDB for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_69et2tdb = {__Pyx_NAMESTR("et2tdb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_69et2tdb, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_69et2tdb)}; -static PyObject *__pyx_pf_5pytpm_3tpm_69et2tdb(PyObject *__pyx_self, PyObject *__pyx_v_et) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_139et2tdb(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ +static char __pyx_doc_3tpm_138et2tdb[] = "Return TDB for the given ET.\n\n Parameters\n ----------\n et : float\n ET as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_139et2tdb = {"et2tdb", (PyCFunction)__pyx_pw_3tpm_139et2tdb, METH_O, __pyx_doc_3tpm_138et2tdb}; +static PyObject *__pyx_pw_3tpm_139et2tdb(PyObject *__pyx_self, PyObject *__pyx_v_et) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("et2tdb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_138et2tdb(__pyx_self, ((PyObject *)__pyx_v_et)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_138et2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("et2tdb"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("et2tdb", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":624 + /* "src/tpm_astro.pxi":624 * * """ * return tpm_astro.et2tdb(et) # <<<<<<<<<<<<<< @@ -23127,18 +34476,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_69et2tdb(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(et2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 624, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(et2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 624, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":610 + * + * + * def et2tdb(et): # <<<<<<<<<<<<<< + * """Return TDB for the given ET. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.et2tdb"); + __Pyx_AddTraceback("tpm.et2tdb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23146,7 +34502,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_69et2tdb(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":627 +/* "src/tpm_astro.pxi":627 * * * def tai2et(tai): # <<<<<<<<<<<<<< @@ -23154,17 +34510,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_69et2tdb(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_70tai2et(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_70tai2et[] = "Return ET for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n et : float\n ET as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_70tai2et = {__Pyx_NAMESTR("tai2et"), (PyCFunction)__pyx_pf_5pytpm_3tpm_70tai2et, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_70tai2et)}; -static PyObject *__pyx_pf_5pytpm_3tpm_70tai2et(PyObject *__pyx_self, PyObject *__pyx_v_tai) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_141tai2et(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ +static char __pyx_doc_3tpm_140tai2et[] = "Return ET for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n et : float\n ET as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_141tai2et = {"tai2et", (PyCFunction)__pyx_pw_3tpm_141tai2et, METH_O, __pyx_doc_3tpm_140tai2et}; +static PyObject *__pyx_pw_3tpm_141tai2et(PyObject *__pyx_self, PyObject *__pyx_v_tai) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tai2et (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_140tai2et(__pyx_self, ((PyObject *)__pyx_v_tai)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_140tai2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tai2et"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tai2et", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":641 + /* "src/tpm_astro.pxi":641 * * """ * return tpm_astro.tai2et(tai) # <<<<<<<<<<<<<< @@ -23172,18 +34543,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_70tai2et(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 641; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tai2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 641; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 641, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tai2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":627 + * + * + * def tai2et(tai): # <<<<<<<<<<<<<< + * """Return ET for the given TAI. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tai2et"); + __Pyx_AddTraceback("tpm.tai2et", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23191,7 +34569,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_70tai2et(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":644 +/* "src/tpm_astro.pxi":644 * * * def tai2tdb(tai): # <<<<<<<<<<<<<< @@ -23199,17 +34577,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_70tai2et(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_71tai2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_71tai2tdb[] = "Return TDB for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_71tai2tdb = {__Pyx_NAMESTR("tai2tdb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_71tai2tdb, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_71tai2tdb)}; -static PyObject *__pyx_pf_5pytpm_3tpm_71tai2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tai) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_143tai2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ +static char __pyx_doc_3tpm_142tai2tdb[] = "Return TDB for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_143tai2tdb = {"tai2tdb", (PyCFunction)__pyx_pw_3tpm_143tai2tdb, METH_O, __pyx_doc_3tpm_142tai2tdb}; +static PyObject *__pyx_pw_3tpm_143tai2tdb(PyObject *__pyx_self, PyObject *__pyx_v_tai) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tai2tdb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_142tai2tdb(__pyx_self, ((PyObject *)__pyx_v_tai)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_142tai2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tai2tdb"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tai2tdb", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":658 + /* "src/tpm_astro.pxi":658 * * """ * return tpm_astro.tai2tdb(tai) # <<<<<<<<<<<<<< @@ -23217,18 +34610,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_71tai2tdb(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tai2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 658, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tai2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":644 + * + * + * def tai2tdb(tai): # <<<<<<<<<<<<<< + * """Return TDB for the given TAI. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tai2tdb"); + __Pyx_AddTraceback("tpm.tai2tdb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23236,7 +34636,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_71tai2tdb(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":661 +/* "src/tpm_astro.pxi":661 * * * def tai2ut1(tai): # <<<<<<<<<<<<<< @@ -23244,17 +34644,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_71tai2tdb(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_72tai2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_72tai2ut1[] = "Return UT1 for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_72tai2ut1 = {__Pyx_NAMESTR("tai2ut1"), (PyCFunction)__pyx_pf_5pytpm_3tpm_72tai2ut1, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_72tai2ut1)}; -static PyObject *__pyx_pf_5pytpm_3tpm_72tai2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tai) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_145tai2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tai); /*proto*/ +static char __pyx_doc_3tpm_144tai2ut1[] = "Return UT1 for the given TAI.\n\n Parameters\n ----------\n tai : float\n TAI as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_145tai2ut1 = {"tai2ut1", (PyCFunction)__pyx_pw_3tpm_145tai2ut1, METH_O, __pyx_doc_3tpm_144tai2ut1}; +static PyObject *__pyx_pw_3tpm_145tai2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tai) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tai2ut1 (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_144tai2ut1(__pyx_self, ((PyObject *)__pyx_v_tai)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_144tai2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tai) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tai2ut1"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tai2ut1", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":675 + /* "src/tpm_astro.pxi":675 * * """ * return tpm_astro.tai2ut1(tai) # <<<<<<<<<<<<<< @@ -23262,18 +34677,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_72tai2ut1(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 675; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tai2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 675; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tai); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 675, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tai2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":661 + * + * + * def tai2ut1(tai): # <<<<<<<<<<<<<< + * """Return UT1 for the given TAI. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tai2ut1"); + __Pyx_AddTraceback("tpm.tai2ut1", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23281,7 +34703,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_72tai2ut1(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":694 +/* "src/tpm_astro.pxi":694 * # return tpm_astro.tdb2utc(tdb) * * def tdt2ut1(tdt): # <<<<<<<<<<<<<< @@ -23289,17 +34711,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_72tai2ut1(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_73tdt2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_73tdt2ut1[] = "Return UT1 for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_73tdt2ut1 = {__Pyx_NAMESTR("tdt2ut1"), (PyCFunction)__pyx_pf_5pytpm_3tpm_73tdt2ut1, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_73tdt2ut1)}; -static PyObject *__pyx_pf_5pytpm_3tpm_73tdt2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_147tdt2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_146tdt2ut1[] = "Return UT1 for the given TDT.\n\n Parameters\n ----------\n tdt : float\n TDT as a Julian date.\n\n Returns\n -------\n ut1 : float\n UT1 as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_147tdt2ut1 = {"tdt2ut1", (PyCFunction)__pyx_pw_3tpm_147tdt2ut1, METH_O, __pyx_doc_3tpm_146tdt2ut1}; +static PyObject *__pyx_pw_3tpm_147tdt2ut1(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("tdt2ut1 (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_146tdt2ut1(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_146tdt2ut1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("tdt2ut1"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("tdt2ut1", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":708 + /* "src/tpm_astro.pxi":708 * * """ * return tpm_astro.tdt2ut1(tdt) # <<<<<<<<<<<<<< @@ -23307,18 +34744,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_73tdt2ut1(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 708; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(tdt2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 708; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 708, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(tdt2ut1(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 708, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":694 + * # return tpm_astro.tdb2utc(tdb) + * + * def tdt2ut1(tdt): # <<<<<<<<<<<<<< + * """Return UT1 for the given TDT. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.tdt2ut1"); + __Pyx_AddTraceback("tpm.tdt2ut1", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23326,7 +34770,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_73tdt2ut1(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":711 +/* "src/tpm_astro.pxi":711 * * * def ut12tai(ut1): # <<<<<<<<<<<<<< @@ -23334,17 +34778,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_73tdt2ut1(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_74ut12tai(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_74ut12tai[] = "Return TAI for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n tai : float\n TAI as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_74ut12tai = {__Pyx_NAMESTR("ut12tai"), (PyCFunction)__pyx_pf_5pytpm_3tpm_74ut12tai, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_74ut12tai)}; -static PyObject *__pyx_pf_5pytpm_3tpm_74ut12tai(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_149ut12tai(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_148ut12tai[] = "Return TAI for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n tai : float\n TAI as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_149ut12tai = {"ut12tai", (PyCFunction)__pyx_pw_3tpm_149ut12tai, METH_O, __pyx_doc_3tpm_148ut12tai}; +static PyObject *__pyx_pw_3tpm_149ut12tai(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut12tai (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_148ut12tai(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_148ut12tai(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut12tai"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut12tai", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":725 + /* "src/tpm_astro.pxi":725 * * """ * return tpm_astro.ut12tai(ut1) # <<<<<<<<<<<<<< @@ -23352,18 +34811,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_74ut12tai(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 725; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut12tai(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 725; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 725, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut12tai(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 725, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; + /* "src/tpm_astro.pxi":711 + * + * + * def ut12tai(ut1): # <<<<<<<<<<<<<< + * """Return TAI for the given UT1. + * + */ + + /* function exit code */ + __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut12tai"); + __Pyx_AddTraceback("tpm.ut12tai", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23371,7 +34837,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_74ut12tai(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":728 +/* "src/tpm_astro.pxi":728 * * * def ut12tdb(ut1): # <<<<<<<<<<<<<< @@ -23379,17 +34845,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_74ut12tai(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_75ut12tdb(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_75ut12tdb[] = "Return TDB for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_75ut12tdb = {__Pyx_NAMESTR("ut12tdb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_75ut12tdb, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_75ut12tdb)}; -static PyObject *__pyx_pf_5pytpm_3tpm_75ut12tdb(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_151ut12tdb(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_150ut12tdb[] = "Return TDB for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_151ut12tdb = {"ut12tdb", (PyCFunction)__pyx_pw_3tpm_151ut12tdb, METH_O, __pyx_doc_3tpm_150ut12tdb}; +static PyObject *__pyx_pw_3tpm_151ut12tdb(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut12tdb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_150ut12tdb(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_150ut12tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut12tdb"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut12tdb", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":742 + /* "src/tpm_astro.pxi":742 * * """ * return tpm_astro.ut12tdb(ut1) # <<<<<<<<<<<<<< @@ -23397,18 +34878,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_75ut12tdb(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut12tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 742, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut12tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":728 + * + * + * def ut12tdb(ut1): # <<<<<<<<<<<<<< + * """Return TDB for the given UT1. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut12tdb"); + __Pyx_AddTraceback("tpm.ut12tdb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23416,7 +34904,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_75ut12tdb(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":745 +/* "src/tpm_astro.pxi":745 * * * def ut12tdt(ut1): # <<<<<<<<<<<<<< @@ -23424,17 +34912,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_75ut12tdb(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_76ut12tdt(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_76ut12tdt[] = "Return TDT for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_76ut12tdt = {__Pyx_NAMESTR("ut12tdt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_76ut12tdt, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_76ut12tdt)}; -static PyObject *__pyx_pf_5pytpm_3tpm_76ut12tdt(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_153ut12tdt(PyObject *__pyx_self, PyObject *__pyx_v_ut1); /*proto*/ +static char __pyx_doc_3tpm_152ut12tdt[] = "Return TDT for the given UT1.\n\n Parameters\n ----------\n ut1 : float\n UT1 as a Julian date.\n\n Returns\n -------\n tdt : float\n TDT as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_153ut12tdt = {"ut12tdt", (PyCFunction)__pyx_pw_3tpm_153ut12tdt, METH_O, __pyx_doc_3tpm_152ut12tdt}; +static PyObject *__pyx_pw_3tpm_153ut12tdt(PyObject *__pyx_self, PyObject *__pyx_v_ut1) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut12tdt (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_152ut12tdt(__pyx_self, ((PyObject *)__pyx_v_ut1)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_152ut12tdt(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut1) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut12tdt"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut12tdt", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":759 + /* "src/tpm_astro.pxi":759 * * """ * return tpm_astro.ut12tdt(ut1) # <<<<<<<<<<<<<< @@ -23442,18 +34945,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_76ut12tdt(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut12tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut1); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 759, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut12tdt(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":745 + * + * + * def ut12tdt(ut1): # <<<<<<<<<<<<<< + * """Return TDT for the given UT1. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut12tdt"); + __Pyx_AddTraceback("tpm.ut12tdt", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23461,7 +34971,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_76ut12tdt(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":762 +/* "src/tpm_astro.pxi":762 * * * def utc2tdb(utc): # <<<<<<<<<<<<<< @@ -23469,17 +34979,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_76ut12tdt(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_77utc2tdb(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_77utc2tdb[] = "Return TDB for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_77utc2tdb = {__Pyx_NAMESTR("utc2tdb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_77utc2tdb, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_77utc2tdb)}; -static PyObject *__pyx_pf_5pytpm_3tpm_77utc2tdb(PyObject *__pyx_self, PyObject *__pyx_v_utc) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_155utc2tdb(PyObject *__pyx_self, PyObject *__pyx_v_utc); /*proto*/ +static char __pyx_doc_3tpm_154utc2tdb[] = "Return TDB for the given UTC.\n\n Parameters\n ----------\n utc : float\n UTC as a Julian date.\n\n Returns\n -------\n tdb : float\n TDB as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_155utc2tdb = {"utc2tdb", (PyCFunction)__pyx_pw_3tpm_155utc2tdb, METH_O, __pyx_doc_3tpm_154utc2tdb}; +static PyObject *__pyx_pw_3tpm_155utc2tdb(PyObject *__pyx_self, PyObject *__pyx_v_utc) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("utc2tdb (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_154utc2tdb(__pyx_self, ((PyObject *)__pyx_v_utc)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_154utc2tdb(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_utc) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("utc2tdb"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("utc2tdb", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":776 + /* "src/tpm_astro.pxi":776 * * """ * return tpm_astro.utc2tdb(utc) # <<<<<<<<<<<<<< @@ -23487,18 +35012,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_77utc2tdb(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(utc2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_utc); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 776, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(utc2tdb(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":762 + * + * + * def utc2tdb(utc): # <<<<<<<<<<<<<< + * """Return TDB for the given UTC. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.utc2tdb"); + __Pyx_AddTraceback("tpm.utc2tdb", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23506,7 +35038,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_77utc2tdb(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":779 +/* "src/tpm_astro.pxi":779 * * * def et2ut(et): # <<<<<<<<<<<<<< @@ -23514,17 +35046,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_77utc2tdb(PyObject *__pyx_self, PyObject * * return tpm_astro.et2ut(et) */ -static PyObject *__pyx_pf_5pytpm_3tpm_78et2ut(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_78et2ut[] = "Return UT for the given ET; same as et2ut1(et)."; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_78et2ut = {__Pyx_NAMESTR("et2ut"), (PyCFunction)__pyx_pf_5pytpm_3tpm_78et2ut, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_78et2ut)}; -static PyObject *__pyx_pf_5pytpm_3tpm_78et2ut(PyObject *__pyx_self, PyObject *__pyx_v_et) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_157et2ut(PyObject *__pyx_self, PyObject *__pyx_v_et); /*proto*/ +static char __pyx_doc_3tpm_156et2ut[] = "Return UT for the given ET; same as et2ut1(et)."; +static PyMethodDef __pyx_mdef_3tpm_157et2ut = {"et2ut", (PyCFunction)__pyx_pw_3tpm_157et2ut, METH_O, __pyx_doc_3tpm_156et2ut}; +static PyObject *__pyx_pw_3tpm_157et2ut(PyObject *__pyx_self, PyObject *__pyx_v_et) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("et2ut (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_156et2ut(__pyx_self, ((PyObject *)__pyx_v_et)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_156et2ut(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_et) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("et2ut"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("et2ut", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":781 + /* "src/tpm_astro.pxi":781 * def et2ut(et): * """Return UT for the given ET; same as et2ut1(et).""" * return tpm_astro.et2ut(et) # <<<<<<<<<<<<<< @@ -23532,18 +35079,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_78et2ut(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 781; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(et2ut(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 781; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_et); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 781, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(et2ut(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":779 + * + * + * def et2ut(et): # <<<<<<<<<<<<<< + * """Return UT for the given ET; same as et2ut1(et).""" + * return tpm_astro.et2ut(et) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.et2ut"); + __Pyx_AddTraceback("tpm.et2ut", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23551,7 +35105,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_78et2ut(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":784 +/* "src/tpm_astro.pxi":784 * * * def ut2et(ut): # <<<<<<<<<<<<<< @@ -23559,17 +35113,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_78et2ut(PyObject *__pyx_self, PyObject *__ * return tpm_astro.ut2et(ut) */ -static PyObject *__pyx_pf_5pytpm_3tpm_79ut2et(PyObject *__pyx_self, PyObject *__pyx_v_ut); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_79ut2et[] = "Return ET for the given UT; same as ut12et(ut)."; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_79ut2et = {__Pyx_NAMESTR("ut2et"), (PyCFunction)__pyx_pf_5pytpm_3tpm_79ut2et, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_79ut2et)}; -static PyObject *__pyx_pf_5pytpm_3tpm_79ut2et(PyObject *__pyx_self, PyObject *__pyx_v_ut) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_159ut2et(PyObject *__pyx_self, PyObject *__pyx_v_ut); /*proto*/ +static char __pyx_doc_3tpm_158ut2et[] = "Return ET for the given UT; same as ut12et(ut)."; +static PyMethodDef __pyx_mdef_3tpm_159ut2et = {"ut2et", (PyCFunction)__pyx_pw_3tpm_159ut2et, METH_O, __pyx_doc_3tpm_158ut2et}; +static PyObject *__pyx_pw_3tpm_159ut2et(PyObject *__pyx_self, PyObject *__pyx_v_ut) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut2et (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_158ut2et(__pyx_self, ((PyObject *)__pyx_v_ut)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_158ut2et(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut2et"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut2et", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":786 + /* "src/tpm_astro.pxi":786 * def ut2et(ut): * """Return ET for the given UT; same as ut12et(ut).""" * return tpm_astro.ut2et(ut) # <<<<<<<<<<<<<< @@ -23577,18 +35146,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_79ut2et(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 786, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut2et(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":784 + * + * + * def ut2et(ut): # <<<<<<<<<<<<<< + * """Return ET for the given UT; same as ut12et(ut).""" + * return tpm_astro.ut2et(ut) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut2et"); + __Pyx_AddTraceback("tpm.ut2et", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23596,7 +35172,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_79ut2et(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":789 +/* "src/tpm_astro.pxi":789 * * * def ut2gmst(ut): # <<<<<<<<<<<<<< @@ -23604,17 +35180,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_79ut2et(PyObject *__pyx_self, PyObject *__ * return tpm_astro.ut2gmst(ut) */ -static PyObject *__pyx_pf_5pytpm_3tpm_80ut2gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_80ut2gmst[] = "Return GMST for the given UT; same as ut12gmst(ut)"; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_80ut2gmst = {__Pyx_NAMESTR("ut2gmst"), (PyCFunction)__pyx_pf_5pytpm_3tpm_80ut2gmst, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_80ut2gmst)}; -static PyObject *__pyx_pf_5pytpm_3tpm_80ut2gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_161ut2gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut); /*proto*/ +static char __pyx_doc_3tpm_160ut2gmst[] = "Return GMST for the given UT; same as ut12gmst(ut)"; +static PyMethodDef __pyx_mdef_3tpm_161ut2gmst = {"ut2gmst", (PyCFunction)__pyx_pw_3tpm_161ut2gmst, METH_O, __pyx_doc_3tpm_160ut2gmst}; +static PyObject *__pyx_pw_3tpm_161ut2gmst(PyObject *__pyx_self, PyObject *__pyx_v_ut) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ut2gmst (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_160ut2gmst(__pyx_self, ((PyObject *)__pyx_v_ut)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_160ut2gmst(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_ut) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("ut2gmst"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ut2gmst", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":791 + /* "src/tpm_astro.pxi":791 * def ut2gmst(ut): * """Return GMST for the given UT; same as ut12gmst(ut)""" * return tpm_astro.ut2gmst(ut) # <<<<<<<<<<<<<< @@ -23622,18 +35213,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_80ut2gmst(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(ut2gmst(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_ut); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 791, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(ut2gmst(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":789 + * + * + * def ut2gmst(ut): # <<<<<<<<<<<<<< + * """Return GMST for the given UT; same as ut12gmst(ut)""" + * return tpm_astro.ut2gmst(ut) + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.ut2gmst"); + __Pyx_AddTraceback("tpm.ut2gmst", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23641,7 +35239,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_80ut2gmst(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":794 +/* "src/tpm_astro.pxi":794 * * * def cat2v6(alpha, delta, pma, pmd, px, rv, C=36525.0): # <<<<<<<<<<<<<< @@ -23649,10 +35247,11 @@ static PyObject *__pyx_pf_5pytpm_3tpm_80ut2gmst(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_81cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_81cat2v6[] = "Create a V6C vector from a catalog entry.\n\n Parameters\n ----------\n alpha : float\n Longitudinal angle (e.g., RA) in radians.\n delta : float\n Latitudinal angle (e.g., Dec) in radians.\n pma : float\n Proper motion in `alpha` (not pmra*cos(delta)) in \"/century.\n pmd : float\n Proper motion in `delta` in \"/century.\n px : float\n Parallax in arc-seconds.\n rv : float\n Radial velocity in km/s.\n C : float\n Days in a century, as used in pmra and pmde.\n\n Returns\n -------\n v6 : tpm.V6C\n V6C vector containing the Cartesian position and velocities of\n the catalog position.\n\n Notes\n -----\n This function is used to convert a catalog entry for an object into\n a `V6C` vector.\n\n Internally TPM uses velocities in AU/day, and needs to know how\n many days are in a century. The proper motions can be in\n arc-seconds per Julian century or arc-seconds per tropical century.\n A Julian century has 36525 days (`tpm.CJ`) and a tropical century\n has 36524.21987817305 days (`tpm.CB`).\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_81cat2v6 = {__Pyx_NAMESTR("cat2v6"), (PyCFunction)__pyx_pf_5pytpm_3tpm_81cat2v6, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_81cat2v6)}; -static PyObject *__pyx_pf_5pytpm_3tpm_81cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_163cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_162cat2v6[] = "Create a V6C vector from a catalog entry.\n\n Parameters\n ----------\n alpha : float\n Longitudinal angle (e.g., RA) in radians.\n delta : float\n Latitudinal angle (e.g., Dec) in radians.\n pma : float\n Proper motion in `alpha` (not pmra*cos(delta)) in \"/century.\n pmd : float\n Proper motion in `delta` in \"/century.\n px : float\n Parallax in arc-seconds.\n rv : float\n Radial velocity in km/s.\n C : float\n Days in a century, as used in pmra and pmde.\n\n Returns\n -------\n v6 : tpm.V6C\n V6C vector containing the Cartesian position and velocities of\n the catalog position.\n\n Notes\n -----\n This function is used to convert a catalog entry for an object into\n a `V6C` vector.\n\n Internally TPM uses velocities in AU/day, and needs to know how\n many days are in a century. The proper motions can be in\n arc-seconds per Julian century or arc-seconds per tropical century.\n A Julian century has 36525 days (`tpm.CJ`) and a tropical century\n has 36524.21987817305 days (`tpm.CB`).\n\n "; +static PyMethodDef __pyx_mdef_3tpm_163cat2v6 = {"cat2v6", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_163cat2v6, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_162cat2v6}; +static PyObject *__pyx_pw_3tpm_163cat2v6(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_alpha = 0; PyObject *__pyx_v_delta = 0; PyObject *__pyx_v_pma = 0; @@ -23660,78 +35259,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_81cat2v6(PyObject *__pyx_self, PyObject *_ PyObject *__pyx_v_px = 0; PyObject *__pyx_v_rv = 0; PyObject *__pyx_v_C = 0; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - double __pyx_t_4; - double __pyx_t_5; - double __pyx_t_6; - double __pyx_t_7; - double __pyx_t_8; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__alpha,&__pyx_n_s__delta,&__pyx_n_s__pma,&__pyx_n_s__pmd,&__pyx_n_s__px,&__pyx_n_s__rv,&__pyx_n_s__C,0}; - __Pyx_RefNannySetupContext("cat2v6"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("cat2v6 (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_alpha,&__pyx_n_s_delta,&__pyx_n_s_pma,&__pyx_n_s_pmd,&__pyx_n_s_px,&__pyx_n_s_rv,&__pyx_n_s_C,0}; PyObject* values[7] = {0,0,0,0,0,0,0}; - values[6] = __pyx_k_72; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alpha); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__delta); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pma); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + values[6] = ((PyObject *)__pyx_float_36525_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pmd); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 3); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 4: - values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__px); - if (likely(values[4])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 4); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 1); __PYX_ERR(2, 794, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pma)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 2); __PYX_ERR(2, 794, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pmd)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 3); __PYX_ERR(2, 794, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 4: + if (likely((values[4] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_px)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 4); __PYX_ERR(2, 794, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 5: + if (likely((values[5] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_rv)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 5); __PYX_ERR(2, 794, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 6: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_C); + if (value) { values[6] = value; kw_args--; } + } } - case 5: - values[5] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__rv); - if (likely(values[5])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, 5); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "cat2v6") < 0)) __PYX_ERR(2, 794, __pyx_L3_error) } - case 6: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__C); - if (value) { values[6] = value; kw_args--; } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "cat2v6") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } __pyx_v_alpha = values[0]; __pyx_v_delta = values[1]; __pyx_v_pma = values[2]; @@ -23739,64 +35356,70 @@ static PyObject *__pyx_pf_5pytpm_3tpm_81cat2v6(PyObject *__pyx_self, PyObject *_ __pyx_v_px = values[4]; __pyx_v_rv = values[5]; __pyx_v_C = values[6]; - } else { - __pyx_v_C = __pyx_k_72; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 7: - __pyx_v_C = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: - __pyx_v_rv = PyTuple_GET_ITEM(__pyx_args, 5); - __pyx_v_px = PyTuple_GET_ITEM(__pyx_args, 4); - __pyx_v_pmd = PyTuple_GET_ITEM(__pyx_args, 3); - __pyx_v_pma = PyTuple_GET_ITEM(__pyx_args, 2); - __pyx_v_delta = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_alpha = PyTuple_GET_ITEM(__pyx_args, 0); - break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("cat2v6", 0, 6, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 794, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.cat2v6"); + __Pyx_AddTraceback("tpm.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_162cat2v6(__pyx_self, __pyx_v_alpha, __pyx_v_delta, __pyx_v_pma, __pyx_v_pmd, __pyx_v_px, __pyx_v_rv, __pyx_v_C); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_162cat2v6(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_delta, PyObject *__pyx_v_pma, PyObject *__pyx_v_pmd, PyObject *__pyx_v_px, PyObject *__pyx_v_rv, PyObject *__pyx_v_C) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + double __pyx_t_4; + double __pyx_t_5; + double __pyx_t_6; + double __pyx_t_7; + double __pyx_t_8; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("cat2v6", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":832 + /* "src/tpm_astro.pxi":832 * * """ * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(tpm_astro.cat2v6(alpha, delta, pma, pmd, px, rv, C)) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 832; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":833 + /* "src/tpm_astro.pxi":833 * """ * v6 = V6C() * v6.setV6(tpm_astro.cat2v6(alpha, delta, pma, pmd, px, rv, C)) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_pma); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_v_pmd); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = __pyx_PyFloat_AsDouble(__pyx_v_px); if (unlikely((__pyx_t_6 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_v_rv); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_v_C); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), cat2v6(__pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5, __pyx_t_6, __pyx_t_7, __pyx_t_8)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 833; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_pma); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_v_pmd); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_6 = __pyx_PyFloat_AsDouble(__pyx_v_px); if (unlikely((__pyx_t_6 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_v_rv); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_v_C); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 833, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), cat2v6(__pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5, __pyx_t_6, __pyx_t_7, __pyx_t_8)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":834 + /* "src/tpm_astro.pxi":834 * v6 = V6C() * v6.setV6(tpm_astro.cat2v6(alpha, delta, pma, pmd, px, rv, C)) * return v6 # <<<<<<<<<<<<<< @@ -23808,20 +35431,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_81cat2v6(PyObject *__pyx_self, PyObject *_ __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":794 + * + * + * def cat2v6(alpha, delta, pma, pmd, px, rv, C=36525.0): # <<<<<<<<<<<<<< + * """Create a V6C vector from a catalog entry. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.cat2v6"); + __Pyx_AddTraceback("tpm.cat2v6", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":837 +/* "src/tpm_astro.pxi":837 * * * def v62cat(V6C v6, C=36525.0): # <<<<<<<<<<<<<< @@ -23829,78 +35459,99 @@ static PyObject *__pyx_pf_5pytpm_3tpm_81cat2v6(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_82v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_82v62cat[] = "Return catalog quantites given a V6C vector.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C object containing the position and velocity of an\n object. It is assumed that the positions are in AU and\n velocities are in AU/day.\n C : float\n Number of days in a century. To convert the velocities into\n \"/centruy from AU/day, it is necessary to know the numb`er of\n days in a century. For Julian centuries this is 36525 days\n (`tpm.CJ`) and for tropical centuries this is ~36524.22\n (`tpm.CB`).\n\n Returns\n -------\n d : dict\n The keys and values are:\n + alpha : float\n Longitudinal coordinate (e.g., RA) in radians.\n + delta : float\n Latitudinal coordinate (e.g., Dec) in radians.\n + pma : float\n Proper motion in `alpha` (not alpha*cos(delta) in\n \"/century\n + pmd : float\n Proper motion in `delta` in \"/century.\n + px : float\n Parallax in arc-seconds.\n + rv : float\n Radial velocity in km/s.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_82v62cat = {__Pyx_NAMESTR("v62cat"), (PyCFunction)__pyx_pf_5pytpm_3tpm_82v62cat, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_82v62cat)}; -static PyObject *__pyx_pf_5pytpm_3tpm_82v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_165v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_164v62cat[] = "Return catalog quantites given a V6C vector.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C object containing the position and velocity of an\n object. It is assumed that the positions are in AU and\n velocities are in AU/day.\n C : float\n Number of days in a century. To convert the velocities into\n \"/centruy from AU/day, it is necessary to know the numb`er of\n days in a century. For Julian centuries this is 36525 days\n (`tpm.CJ`) and for tropical centuries this is ~36524.22\n (`tpm.CB`).\n\n Returns\n -------\n d : dict\n The keys and values are:\n + alpha : float\n Longitudinal coordinate (e.g., RA) in radians.\n + delta : float\n Latitudinal coordinate (e.g., Dec) in radians.\n + pma : float\n Proper motion in `alpha` (not alpha*cos(delta) in\n \"/century\n + pmd : float\n Proper motion in `delta` in \"/century.\n + px : float\n Parallax in arc-seconds.\n + rv : float\n Radial velocity in km/s.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_165v62cat = {"v62cat", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_165v62cat, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_164v62cat}; +static PyObject *__pyx_pw_3tpm_165v62cat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; PyObject *__pyx_v_C = 0; - double __pyx_v_alpha; - double __pyx_v_delta; - double __pyx_v_pma; - double __pyx_v_pmd; - double __pyx_v_px; - double __pyx_v_rv; - PyObject *__pyx_r = NULL; - double *__pyx_t_1; - double *__pyx_t_2; - double *__pyx_t_3; - double *__pyx_t_4; - double *__pyx_t_5; - double *__pyx_t_6; - V6 __pyx_t_7; - double __pyx_t_8; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__v6,&__pyx_n_s__C,0}; - __Pyx_RefNannySetupContext("v62cat"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("v62cat (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v6,&__pyx_n_s_C,0}; PyObject* values[2] = {0,0}; - values[1] = __pyx_k_73; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__C); - if (value) { values[1] = value; kw_args--; } + values[1] = ((PyObject *)__pyx_float_36525_0); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_C); + if (value) { values[1] = value; kw_args--; } + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "v62cat") < 0)) __PYX_ERR(2, 837, __pyx_L3_error) + } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + break; + default: goto __pyx_L5_argtuple_error; } } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "v62cat") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[0]); __pyx_v_C = values[1]; - } else { - __pyx_v_C = __pyx_k_73; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: __pyx_v_C = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("v62cat", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("v62cat", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 837, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.v62cat"); + __Pyx_AddTraceback("tpm.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 837, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_164v62cat(__pyx_self, __pyx_v_v6, __pyx_v_C); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_164v62cat(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, PyObject *__pyx_v_C) { + double __pyx_v_alpha; + double __pyx_v_delta; + double __pyx_v_pma; + double __pyx_v_pmd; + double __pyx_v_px; + double __pyx_v_rv; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("v62cat", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":872 + /* "src/tpm_astro.pxi":872 * * """ * cdef double alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0 # <<<<<<<<<<<<<< @@ -23914,32 +35565,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_82v62cat(PyObject *__pyx_self, PyObject *_ __pyx_v_px = 0.0; __pyx_v_rv = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":873 - * """ + /* "src/tpm_astro.pxi":874 * cdef double alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0 - * tpm_astro.v62cat(&alpha, &delta, &pma, &pmd, &px, &rv, # <<<<<<<<<<<<<< - * v6.getV6(), C) + * tpm_astro.v62cat(&alpha, &delta, &pma, &pmd, &px, &rv, + * v6.getV6(), C) # <<<<<<<<<<<<<< * return dict(alpha=tpm_times.r2r(alpha), delta=delta, pma=pma, pmd=pmd, + * px=px, rv=rv) */ - __pyx_t_1 = (&__pyx_v_alpha); - __pyx_t_2 = (&__pyx_v_delta); - __pyx_t_3 = (&__pyx_v_pma); - __pyx_t_4 = (&__pyx_v_pmd); - __pyx_t_5 = (&__pyx_v_px); - __pyx_t_6 = (&__pyx_v_rv); + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_C); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 874, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":874 + /* "src/tpm_astro.pxi":873 + * """ * cdef double alpha=0.0, delta=0.0, pma=0.0, pmd=0.0, px=0.0, rv=0.0 - * tpm_astro.v62cat(&alpha, &delta, &pma, &pmd, &px, &rv, - * v6.getV6(), C) # <<<<<<<<<<<<<< + * tpm_astro.v62cat(&alpha, &delta, &pma, &pmd, &px, &rv, # <<<<<<<<<<<<<< + * v6.getV6(), C) * return dict(alpha=tpm_times.r2r(alpha), delta=delta, pma=pma, pmd=pmd, - * px=px, rv=rv) */ - __pyx_t_7 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)); - __pyx_t_8 = __pyx_PyFloat_AsDouble(__pyx_v_C); if (unlikely((__pyx_t_8 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 874; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - v62cat(__pyx_t_1, __pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5, __pyx_t_6, __pyx_t_7, __pyx_t_8); + v62cat((&__pyx_v_alpha), (&__pyx_v_delta), (&__pyx_v_pma), (&__pyx_v_pmd), (&__pyx_v_px), (&__pyx_v_rv), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_t_1); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":875 + /* "src/tpm_astro.pxi":875 * tpm_astro.v62cat(&alpha, &delta, &pma, &pmd, &px, &rv, * v6.getV6(), C) * return dict(alpha=tpm_times.r2r(alpha), delta=delta, pma=pma, pmd=pmd, # <<<<<<<<<<<<<< @@ -23947,50 +35591,57 @@ static PyObject *__pyx_pf_5pytpm_3tpm_82v62cat(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __pyx_t_10 = PyFloat_FromDouble(r2r(__pyx_v_alpha)); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (PyDict_SetItem(__pyx_t_9, ((PyObject *)__pyx_n_s__alpha), __pyx_t_10) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_delta); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (PyDict_SetItem(__pyx_t_9, ((PyObject *)__pyx_n_s__delta), __pyx_t_10) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_pma); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (PyDict_SetItem(__pyx_t_9, ((PyObject *)__pyx_n_s__pma), __pyx_t_10) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_pmd); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (PyDict_SetItem(__pyx_t_9, ((PyObject *)__pyx_n_s__pmd), __pyx_t_10) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_2 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_3 = PyFloat_FromDouble(r2r(__pyx_v_alpha)); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_alpha, __pyx_t_3) < 0) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_delta); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_delta, __pyx_t_3) < 0) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_pma); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_pma, __pyx_t_3) < 0) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_pmd); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_pmd, __pyx_t_3) < 0) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":876 + /* "src/tpm_astro.pxi":876 * v6.getV6(), C) * return dict(alpha=tpm_times.r2r(alpha), delta=delta, pma=pma, pmd=pmd, * px=px, rv=rv) # <<<<<<<<<<<<<< * * */ - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_px); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 876; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (PyDict_SetItem(__pyx_t_9, ((PyObject *)__pyx_n_s__px), __pyx_t_10) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_rv); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 876; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - if (PyDict_SetItem(__pyx_t_9, ((PyObject *)__pyx_n_s__rv), __pyx_t_10) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_r = ((PyObject *)__pyx_t_9); - __pyx_t_9 = 0; + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_px); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 876, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_px, __pyx_t_3) < 0) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_rv); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 876, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_rv, __pyx_t_3) < 0) __PYX_ERR(2, 875, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_r = __pyx_t_2; + __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":837 + * + * + * def v62cat(V6C v6, C=36525.0): # <<<<<<<<<<<<<< + * """Return catalog quantites given a V6C vector. + * + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("pytpm.tpm.v62cat"); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + __Pyx_AddTraceback("tpm.v62cat", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -23998,7 +35649,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_82v62cat(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":879 +/* "src/tpm_astro.pxi":879 * * * def proper_motion(V6C v6, end, start): # <<<<<<<<<<<<<< @@ -24006,112 +35657,136 @@ static PyObject *__pyx_pf_5pytpm_3tpm_82v62cat(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_83proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_83proper_motion[] = "Apply proper motion to the given V6C vector.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C object containing positions and velocities.\n end : float\n Ending/final time in days (can be Julian date).\n start : float\n Starting/initial time in days (can be Julian date).\n\n Returns\n -------\n v : tpm.V6C\n A V6C object containing the new position.\n\n Notes\n -----\n Given starting time and end time, this function applies proper\n motion to the coordinates in the given V6C object. A simple linear\n multiplication of velocity with time is performed, followed by\n addition of this increment to the position coordinates.\n\n The difference, ``end - start``, should be the number of days in\n the time interval. Hence Julian dates can be used. The velocities\n in V6C are stored as AU/day and hence time interval must be in\n days.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_83proper_motion = {__Pyx_NAMESTR("proper_motion"), (PyCFunction)__pyx_pf_5pytpm_3tpm_83proper_motion, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_83proper_motion)}; -static PyObject *__pyx_pf_5pytpm_3tpm_83proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_167proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_166proper_motion[] = "Apply proper motion to the given V6C vector.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C object containing positions and velocities.\n end : float\n Ending/final time in days (can be Julian date).\n start : float\n Starting/initial time in days (can be Julian date).\n\n Returns\n -------\n v : tpm.V6C\n A V6C object containing the new position.\n\n Notes\n -----\n Given starting time and end time, this function applies proper\n motion to the coordinates in the given V6C object. A simple linear\n multiplication of velocity with time is performed, followed by\n addition of this increment to the position coordinates.\n\n The difference, ``end - start``, should be the number of days in\n the time interval. Hence Julian dates can be used. The velocities\n in V6C are stored as AU/day and hence time interval must be in\n days.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_167proper_motion = {"proper_motion", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_167proper_motion, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_166proper_motion}; +static PyObject *__pyx_pw_3tpm_167proper_motion(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_start = 0; - V6 __pyx_v__v6; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v61; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - V6 __pyx_t_2; - double __pyx_t_3; - double __pyx_t_4; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__v6,&__pyx_n_s__end,&__pyx_n_s__start,0}; - __Pyx_RefNannySetupContext("proper_motion"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("proper_motion (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v6,&__pyx_n_s_end,&__pyx_n_s_start,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 1); __PYX_ERR(2, 879, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 2); __PYX_ERR(2, 879, __pyx_L3_error) + } } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "proper_motion") < 0)) __PYX_ERR(2, 879, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "proper_motion") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[0]); __pyx_v_end = values[1]; __pyx_v_start = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("proper_motion", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 879, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.proper_motion"); + __Pyx_AddTraceback("tpm.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v61 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 879, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_166proper_motion(__pyx_self, __pyx_v_v6, __pyx_v_end, __pyx_v_start); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_166proper_motion(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, PyObject *__pyx_v_end, PyObject *__pyx_v_start) { + V6 __pyx_v__v6; + struct __pyx_obj_3tpm_V6C *__pyx_v_v61 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("proper_motion", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":910 + /* "src/tpm_astro.pxi":910 * """ * cdef tpm_astro.V6 _v6 * v61 = V6C() # <<<<<<<<<<<<<< * _v6 = tpm_astro.proper_motion(v6.getV6(), end, start) * v61.setV6(_v6) */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v61)); - __pyx_v_v61 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v61 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":911 + /* "src/tpm_astro.pxi":911 * cdef tpm_astro.V6 _v6 * v61 = V6C() * _v6 = tpm_astro.proper_motion(v6.getV6(), end, start) # <<<<<<<<<<<<<< * v61.setV6(_v6) * return v61 */ - __pyx_t_2 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)); - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 911; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 911; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_v__v6 = proper_motion(__pyx_t_2, __pyx_t_3, __pyx_t_4); + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 911, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 911, __pyx_L1_error) + __pyx_v__v6 = proper_motion(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_t_2, __pyx_t_3); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":912 + /* "src/tpm_astro.pxi":912 * v61 = V6C() * _v6 = tpm_astro.proper_motion(v6.getV6(), end, start) * v61.setV6(_v6) # <<<<<<<<<<<<<< * return v61 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v61->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v61), __pyx_v__v6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 912; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v61->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v61), __pyx_v__v6); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 912, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":913 + /* "src/tpm_astro.pxi":913 * _v6 = tpm_astro.proper_motion(v6.getV6(), end, start) * v61.setV6(_v6) * return v61 # <<<<<<<<<<<<<< @@ -24123,20 +35798,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_83proper_motion(PyObject *__pyx_self, PyOb __pyx_r = ((PyObject *)__pyx_v_v61); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.proper_motion"); - __pyx_r = NULL; + /* "src/tpm_astro.pxi":879 + * + * + * def proper_motion(V6C v6, end, start): # <<<<<<<<<<<<<< + * """Apply proper motion to the given V6C vector. + * + */ + + /* function exit code */ + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_AddTraceback("tpm.proper_motion", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v61); + __Pyx_XDECREF((PyObject *)__pyx_v_v61); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":916 +/* "src/tpm_astro.pxi":916 * * * def aberrate(V6C p, V6C e, int flag): # <<<<<<<<<<<<<< @@ -24144,107 +35826,133 @@ static PyObject *__pyx_pf_5pytpm_3tpm_83proper_motion(PyObject *__pyx_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_84aberrate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_84aberrate[] = "Apply aberration of light to a state vector.\n\n Parameters\n ----------\n p : tpm.V6C\n The vector to which aberration must be applied.\n e : tpm.V6C\n The vector with aberration causing velocity component.\n flag : int\n Add aberration to `p` if flag > 0 else subtract it.\n\n Returns\n -------\n v : tpm.V6C\n The result of applying aberration to `p`.\n\n Notes\n -----\n The velocity components in `e` is taken to be the oberver's\n velocity and the aberration correction is applied to the position\n components in `p`. The aberration is added to `p` is `flag >\n 0` else it is subtracted from `p`. The velocity component of\n `p` is, of-course, unchanged.\n\n If `e` is the barycentric state vector of the Earth's, center\n then we have geocentric aberration. If it is the sum of the above\n with the observer's geocentric space-fixed mean state vector, then\n we have topocentric aberration.\n\n The algorithm uses vectors and hence the `e` can be for any\n observer, not just Earth based observers.\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_84aberrate = {__Pyx_NAMESTR("aberrate"), (PyCFunction)__pyx_pf_5pytpm_3tpm_84aberrate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_84aberrate)}; -static PyObject *__pyx_pf_5pytpm_3tpm_84aberrate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_p = 0; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_e = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_169aberrate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_168aberrate[] = "Apply aberration of light to a state vector.\n\n Parameters\n ----------\n p : tpm.V6C\n The vector to which aberration must be applied.\n e : tpm.V6C\n The vector with aberration causing velocity component.\n flag : int\n Add aberration to `p` if flag > 0 else subtract it.\n\n Returns\n -------\n v : tpm.V6C\n The result of applying aberration to `p`.\n\n Notes\n -----\n The velocity components in `e` is taken to be the oberver's\n velocity and the aberration correction is applied to the position\n components in `p`. The aberration is added to `p` is `flag >\n 0` else it is subtracted from `p`. The velocity component of\n `p` is, of-course, unchanged.\n\n If `e` is the barycentric state vector of the Earth's, center\n then we have geocentric aberration. If it is the sum of the above\n with the observer's geocentric space-fixed mean state vector, then\n we have topocentric aberration.\n\n The algorithm uses vectors and hence the `e` can be for any\n observer, not just Earth based observers.\n "; +static PyMethodDef __pyx_mdef_3tpm_169aberrate = {"aberrate", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_169aberrate, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_168aberrate}; +static PyObject *__pyx_pw_3tpm_169aberrate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_p = 0; + struct __pyx_obj_3tpm_V6C *__pyx_v_e = 0; int __pyx_v_flag; - V6 __pyx_v__v6; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__p,&__pyx_n_s__e,&__pyx_n_s__flag,0}; - __Pyx_RefNannySetupContext("aberrate"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("aberrate (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_p,&__pyx_n_s_e,&__pyx_n_s_flag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__p); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__e); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("aberrate", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_p)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_e)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("aberrate", 1, 3, 3, 1); __PYX_ERR(2, 916, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("aberrate", 1, 3, 3, 2); __PYX_ERR(2, 916, __pyx_L3_error) + } } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__flag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("aberrate", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "aberrate") < 0)) __PYX_ERR(2, 916, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "aberrate") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_p = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); - __pyx_v_e = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[1]); - __pyx_v_flag = __Pyx_PyInt_AsInt(values[2]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_p = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_e = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 1)); - __pyx_v_flag = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 2)); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_p = ((struct __pyx_obj_3tpm_V6C *)values[0]); + __pyx_v_e = ((struct __pyx_obj_3tpm_V6C *)values[1]); + __pyx_v_flag = __Pyx_PyInt_As_int(values[2]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 916, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("aberrate", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("aberrate", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 916, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.aberrate"); + __Pyx_AddTraceback("tpm.aberrate", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p), __pyx_ptype_5pytpm_3tpm_V6C, 1, "p", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_e), __pyx_ptype_5pytpm_3tpm_V6C, 1, "e", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p), __pyx_ptype_3tpm_V6C, 1, "p", 0))) __PYX_ERR(2, 916, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_e), __pyx_ptype_3tpm_V6C, 1, "e", 0))) __PYX_ERR(2, 916, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_168aberrate(__pyx_self, __pyx_v_p, __pyx_v_e, __pyx_v_flag); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_168aberrate(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_p, struct __pyx_obj_3tpm_V6C *__pyx_v_e, int __pyx_v_flag) { + V6 __pyx_v__v6; + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("aberrate", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":950 + /* "src/tpm_astro.pxi":950 * """ * cdef tpm_astro.V6 _v6 * _v6 = tpm_astro.aberrate(p.getV6(), e.getV6(), flag) # <<<<<<<<<<<<<< * v6 = V6C() * v6.setV6(_v6) */ - __pyx_v__v6 = aberrate(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_p->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_p)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_e->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_e)), __pyx_v_flag); + __pyx_v__v6 = aberrate(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_p->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_p)), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_e->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_e)), __pyx_v_flag); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":951 + /* "src/tpm_astro.pxi":951 * cdef tpm_astro.V6 _v6 * _v6 = tpm_astro.aberrate(p.getV6(), e.getV6(), flag) * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(_v6) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 951; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 951, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":952 + /* "src/tpm_astro.pxi":952 * _v6 = tpm_astro.aberrate(p.getV6(), e.getV6(), flag) * v6 = V6C() * v6.setV6(_v6) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), __pyx_v__v6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 952; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), __pyx_v__v6); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 952, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":953 + /* "src/tpm_astro.pxi":953 * v6 = V6C() * v6.setV6(_v6) * return v6 # <<<<<<<<<<<<<< @@ -24256,20 +35964,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_84aberrate(PyObject *__pyx_self, PyObject __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":916 + * + * + * def aberrate(V6C p, V6C e, int flag): # <<<<<<<<<<<<<< + * """Apply aberration of light to a state vector. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.aberrate"); + __Pyx_AddTraceback("tpm.aberrate", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":956 +/* "src/tpm_astro.pxi":956 * * * def azel2hadec(V6C v6, double latitude): # <<<<<<<<<<<<<< @@ -24277,86 +35992,111 @@ static PyObject *__pyx_pf_5pytpm_3tpm_84aberrate(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_85azel2hadec(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_85azel2hadec[] = "Convert V6C from (AZ, EL) to (HA, DEC).\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector containing Cartesian coordinates in Az-El system.\n latitude : float\n Latitude in radians. Northern latitudes are positive.\n\n Returns\n -------\n v : tpm.V6C\n State vector converted into Ha-Dec system.\n\n\n Notes\n -----\n Two simple rotations are performed on `v6` to convert it from\n (AZ, EL) system into (HA, DEC) system. Azimuth is measured\n north of east.\n\n The conversion from (AZ, EL) to (HA, DEC) does not require the full\n setup of TPM and hence this function can be directly used for the\n above conversion.\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_85azel2hadec = {__Pyx_NAMESTR("azel2hadec"), (PyCFunction)__pyx_pf_5pytpm_3tpm_85azel2hadec, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_85azel2hadec)}; -static PyObject *__pyx_pf_5pytpm_3tpm_85azel2hadec(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_171azel2hadec(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_170azel2hadec[] = "Convert V6C from (AZ, EL) to (HA, DEC).\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector containing Cartesian coordinates in Az-El system.\n latitude : float\n Latitude in radians. Northern latitudes are positive.\n\n Returns\n -------\n v : tpm.V6C\n State vector converted into Ha-Dec system.\n\n\n Notes\n -----\n Two simple rotations are performed on `v6` to convert it from\n (AZ, EL) system into (HA, DEC) system. Azimuth is measured\n north of east.\n\n The conversion from (AZ, EL) to (HA, DEC) does not require the full\n setup of TPM and hence this function can be directly used for the\n above conversion.\n "; +static PyMethodDef __pyx_mdef_3tpm_171azel2hadec = {"azel2hadec", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_171azel2hadec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_170azel2hadec}; +static PyObject *__pyx_pw_3tpm_171azel2hadec(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; double __pyx_v_latitude; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__v6,&__pyx_n_s__latitude,0}; - __Pyx_RefNannySetupContext("azel2hadec"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("azel2hadec (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v6,&__pyx_n_s_latitude,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__latitude); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("azel2hadec", 1, 2, 2, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_latitude)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("azel2hadec", 1, 2, 2, 1); __PYX_ERR(2, 956, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "azel2hadec") < 0)) __PYX_ERR(2, 956, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "azel2hadec") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); - __pyx_v_latitude = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_latitude == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_latitude = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_latitude == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[0]); + __pyx_v_latitude = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_latitude == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 956, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("azel2hadec", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("azel2hadec", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 956, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.azel2hadec"); + __Pyx_AddTraceback("tpm.azel2hadec", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 956, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_170azel2hadec(__pyx_self, __pyx_v_v6, __pyx_v_latitude); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":982 +static PyObject *__pyx_pf_3tpm_170azel2hadec(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_latitude) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("azel2hadec", 0); + + /* "src/tpm_astro.pxi":982 * above conversion. * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.azel2hadec(v6.getV6(), latitude)) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 982; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 982, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":983 + /* "src/tpm_astro.pxi":983 * """ * v = V6C() * v.setV6(tpm_astro.azel2hadec(v6.getV6(), latitude)) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), azel2hadec(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)), __pyx_v_latitude)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 983; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), azel2hadec(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_v_latitude)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 983, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":984 + /* "src/tpm_astro.pxi":984 * v = V6C() * v.setV6(tpm_astro.azel2hadec(v6.getV6(), latitude)) * return v # <<<<<<<<<<<<<< @@ -24368,20 +36108,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_85azel2hadec(PyObject *__pyx_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":956 + * + * + * def azel2hadec(V6C v6, double latitude): # <<<<<<<<<<<<<< + * """Convert V6C from (AZ, EL) to (HA, DEC). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.azel2hadec"); + __Pyx_AddTraceback("tpm.azel2hadec", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":987 +/* "src/tpm_astro.pxi":987 * * * def hadec2azel(V6C v6, double latitude): # <<<<<<<<<<<<<< @@ -24389,86 +36136,111 @@ static PyObject *__pyx_pf_5pytpm_3tpm_85azel2hadec(PyObject *__pyx_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_86hadec2azel(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_86hadec2azel[] = "Convert V6C from (HA, DEC) to (AZ, EL).\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector containing Cartesian cooridinates in Ha-Dec system.\n latitude : float\n Latitude in radians.\n\n Return\n ------\n v : tpm.V6C\n State vector converted into (AZ, EL) system.\n\n Notes\n -----\n Two simple rotations are performed on ``v6`` to convert it from\n (HA, DEC) system into (AZ, EL) system. Azimuth is measured\n north of east.\n\n The conversion from (HA, DEC) to (AZ, EL) does not require the full\n setup of TPM and hence this function can be directly used for the\n above conversion.\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_86hadec2azel = {__Pyx_NAMESTR("hadec2azel"), (PyCFunction)__pyx_pf_5pytpm_3tpm_86hadec2azel, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_86hadec2azel)}; -static PyObject *__pyx_pf_5pytpm_3tpm_86hadec2azel(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_173hadec2azel(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_172hadec2azel[] = "Convert V6C from (HA, DEC) to (AZ, EL).\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector containing Cartesian cooridinates in Ha-Dec system.\n latitude : float\n Latitude in radians.\n\n Return\n ------\n v : tpm.V6C\n State vector converted into (AZ, EL) system.\n\n Notes\n -----\n Two simple rotations are performed on ``v6`` to convert it from\n (HA, DEC) system into (AZ, EL) system. Azimuth is measured\n north of east.\n\n The conversion from (HA, DEC) to (AZ, EL) does not require the full\n setup of TPM and hence this function can be directly used for the\n above conversion.\n "; +static PyMethodDef __pyx_mdef_3tpm_173hadec2azel = {"hadec2azel", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_173hadec2azel, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_172hadec2azel}; +static PyObject *__pyx_pw_3tpm_173hadec2azel(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; double __pyx_v_latitude; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__v6,&__pyx_n_s__latitude,0}; - __Pyx_RefNannySetupContext("hadec2azel"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("hadec2azel (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v6,&__pyx_n_s_latitude,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__latitude); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("hadec2azel", 1, 2, 2, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_latitude)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("hadec2azel", 1, 2, 2, 1); __PYX_ERR(2, 987, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "hadec2azel") < 0)) __PYX_ERR(2, 987, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "hadec2azel") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); - __pyx_v_latitude = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_latitude == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_latitude = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_latitude == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[0]); + __pyx_v_latitude = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_latitude == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 987, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("hadec2azel", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("hadec2azel", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 987, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.hadec2azel"); + __Pyx_AddTraceback("tpm.hadec2azel", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 987, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_172hadec2azel(__pyx_self, __pyx_v_v6, __pyx_v_latitude); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_172hadec2azel(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_latitude) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("hadec2azel", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1012 + /* "src/tpm_astro.pxi":1012 * above conversion. * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.hadec2azel(v6.getV6(), latitude)) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1012; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1012, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1013 + /* "src/tpm_astro.pxi":1013 * """ * v = V6C() * v.setV6(tpm_astro.hadec2azel(v6.getV6(), latitude)) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), hadec2azel(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)), __pyx_v_latitude)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1013; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), hadec2azel(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_v_latitude)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1013, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1014 + /* "src/tpm_astro.pxi":1014 * v = V6C() * v.setV6(tpm_astro.hadec2azel(v6.getV6(), latitude)) * return v # <<<<<<<<<<<<<< @@ -24480,20 +36252,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_86hadec2azel(PyObject *__pyx_self, PyObjec __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":987 + * + * + * def hadec2azel(V6C v6, double latitude): # <<<<<<<<<<<<<< + * """Convert V6C from (HA, DEC) to (AZ, EL). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.hadec2azel"); + __Pyx_AddTraceback("tpm.hadec2azel", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1017 +/* "src/tpm_astro.pxi":1017 * * * def evp(double tdb): # <<<<<<<<<<<<<< @@ -24501,32 +36280,48 @@ static PyObject *__pyx_pf_5pytpm_3tpm_86hadec2azel(PyObject *__pyx_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_87evp(PyObject *__pyx_self, PyObject *__pyx_arg_tdb); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_87evp[] = "J2000 Barycentric and Heliocentric state vectors for Earth.\n\n Parameters\n ----------\n tdb : float\n Barycentric Dynamic Time as a Julian date.\n\n Returns\n -------\n v : 2 element tuple of tpm.V6C\n The first element of the tuple is the Barycentric vector and\n the second is the Heliocentric vector. The positions are in AU\n and velocities are in AU/day.\n\n Notes\n -----\n Calculates Earth's J2000 Barycentric and Heliocentric state\n vectors, for the given Barycentric Dynamic Time `tdb`. The state\n vector is calculated using a built-in model. See src/tpm/evp.c.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_87evp = {__Pyx_NAMESTR("evp"), (PyCFunction)__pyx_pf_5pytpm_3tpm_87evp, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_87evp)}; -static PyObject *__pyx_pf_5pytpm_3tpm_87evp(PyObject *__pyx_self, PyObject *__pyx_arg_tdb) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_175evp(PyObject *__pyx_self, PyObject *__pyx_arg_tdb); /*proto*/ +static char __pyx_doc_3tpm_174evp[] = "J2000 Barycentric and Heliocentric state vectors for Earth.\n\n Parameters\n ----------\n tdb : float\n Barycentric Dynamic Time as a Julian date.\n\n Returns\n -------\n v : 2 element tuple of tpm.V6C\n The first element of the tuple is the Barycentric vector and\n the second is the Heliocentric vector. The positions are in AU\n and velocities are in AU/day.\n\n Notes\n -----\n Calculates Earth's J2000 Barycentric and Heliocentric state\n vectors, for the given Barycentric Dynamic Time `tdb`. The state\n vector is calculated using a built-in model. See src/tpm/evp.c.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_175evp = {"evp", (PyCFunction)__pyx_pw_3tpm_175evp, METH_O, __pyx_doc_3tpm_174evp}; +static PyObject *__pyx_pw_3tpm_175evp(PyObject *__pyx_self, PyObject *__pyx_arg_tdb) { double __pyx_v_tdb; - V6 __pyx_v__vb; - V6 __pyx_v__vh; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6b; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6h; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("evp"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("evp (wrapper)", 0); assert(__pyx_arg_tdb); { - __pyx_v_tdb = __pyx_PyFloat_AsDouble(__pyx_arg_tdb); if (unlikely((__pyx_v_tdb == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_tdb = __pyx_PyFloat_AsDouble(__pyx_arg_tdb); if (unlikely((__pyx_v_tdb == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1017, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.evp"); + __Pyx_AddTraceback("tpm.evp", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6b = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - __pyx_v_v6h = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_174evp(__pyx_self, ((double)__pyx_v_tdb)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_174evp(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_tdb) { + V6 __pyx_v__vb; + V6 __pyx_v__vh; + struct __pyx_obj_3tpm_V6C *__pyx_v_v6b = NULL; + struct __pyx_obj_3tpm_V6C *__pyx_v_v6h = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("evp", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1040 + /* "src/tpm_astro.pxi":1040 * """ * cdef tpm_vec.V6 _vb, _vh * tpm_astro.evp(tdb, &_vb, &_vh) # <<<<<<<<<<<<<< @@ -24535,55 +36330,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_87evp(PyObject *__pyx_self, PyObject *__py */ evp(__pyx_v_tdb, (&__pyx_v__vb), (&__pyx_v__vh)); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1041 + /* "src/tpm_astro.pxi":1041 * cdef tpm_vec.V6 _vb, _vh * tpm_astro.evp(tdb, &_vb, &_vh) * v6b = V6C() # <<<<<<<<<<<<<< * v6b.setV6(_vb) * v6h = V6C() */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1041; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1041, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6b)); - __pyx_v_v6b = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6b = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1042 + /* "src/tpm_astro.pxi":1042 * tpm_astro.evp(tdb, &_vb, &_vh) * v6b = V6C() * v6b.setV6(_vb) # <<<<<<<<<<<<<< * v6h = V6C() * v6h.setV6(_vh) */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6b->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6b), __pyx_v__vb); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1042; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6b->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6b), __pyx_v__vb); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1042, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1043 + /* "src/tpm_astro.pxi":1043 * v6b = V6C() * v6b.setV6(_vb) * v6h = V6C() # <<<<<<<<<<<<<< * v6h.setV6(_vh) * return v6b, v6h */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1043; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1043, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6h)); - __pyx_v_v6h = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6h = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1044 + /* "src/tpm_astro.pxi":1044 * v6b.setV6(_vb) * v6h = V6C() * v6h.setV6(_vh) # <<<<<<<<<<<<<< * return v6b, v6h * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6h->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6h), __pyx_v__vh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1044; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6h->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6h), __pyx_v__vh); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1045 + /* "src/tpm_astro.pxi":1045 * v6h = V6C() * v6h.setV6(_vh) * return v6b, v6h # <<<<<<<<<<<<<< @@ -24591,33 +36384,40 @@ static PyObject *__pyx_pf_5pytpm_3tpm_87evp(PyObject *__pyx_self, PyObject *__py * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1045; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1045, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(((PyObject *)__pyx_v_v6b)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_v6b)); __Pyx_GIVEREF(((PyObject *)__pyx_v_v6b)); + PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_v6b)); __Pyx_INCREF(((PyObject *)__pyx_v_v6h)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_v6h)); __Pyx_GIVEREF(((PyObject *)__pyx_v_v6h)); - __pyx_r = ((PyObject *)__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_v6h)); + __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1017 + * + * + * def evp(double tdb): # <<<<<<<<<<<<<< + * """J2000 Barycentric and Heliocentric state vectors for Earth. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.evp"); + __Pyx_AddTraceback("tpm.evp", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6b); - __Pyx_DECREF((PyObject *)__pyx_v_v6h); + __Pyx_XDECREF((PyObject *)__pyx_v_v6b); + __Pyx_XDECREF((PyObject *)__pyx_v_v6h); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1048 +/* "src/tpm_astro.pxi":1048 * * * def ecl2equ(V6C v6, double obl): # <<<<<<<<<<<<<< @@ -24625,86 +36425,111 @@ static PyObject *__pyx_pf_5pytpm_3tpm_87evp(PyObject *__pyx_self, PyObject *__py * */ -static PyObject *__pyx_pf_5pytpm_3tpm_88ecl2equ(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_88ecl2equ[] = "Convert Ecliptic to FK5 Equatorial coordinates.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in the Ecliptic system.\n obl : float\n Obliquity of the ecliptic at the time of interest.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in FK5 equatorial\n coordinates.\n\n Notes\n -----\n A simple rotation through `obl` is performed to convert Ecliptic\n coordinates into FK5 equatorial coordinates.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_88ecl2equ = {__Pyx_NAMESTR("ecl2equ"), (PyCFunction)__pyx_pf_5pytpm_3tpm_88ecl2equ, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_88ecl2equ)}; -static PyObject *__pyx_pf_5pytpm_3tpm_88ecl2equ(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_177ecl2equ(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_176ecl2equ[] = "Convert Ecliptic to FK5 Equatorial coordinates.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in the Ecliptic system.\n obl : float\n Obliquity of the ecliptic at the time of interest.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in FK5 equatorial\n coordinates.\n\n Notes\n -----\n A simple rotation through `obl` is performed to convert Ecliptic\n coordinates into FK5 equatorial coordinates.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_177ecl2equ = {"ecl2equ", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_177ecl2equ, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_176ecl2equ}; +static PyObject *__pyx_pw_3tpm_177ecl2equ(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; double __pyx_v_obl; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__v6,&__pyx_n_s__obl,0}; - __Pyx_RefNannySetupContext("ecl2equ"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ecl2equ (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v6,&__pyx_n_s_obl,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__obl); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("ecl2equ", 1, 2, 2, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_obl)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ecl2equ", 1, 2, 2, 1); __PYX_ERR(2, 1048, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ecl2equ") < 0)) __PYX_ERR(2, 1048, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "ecl2equ") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); - __pyx_v_obl = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_obl == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_obl = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_obl == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[0]); + __pyx_v_obl = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_obl == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1048, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("ecl2equ", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("ecl2equ", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1048, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.ecl2equ"); + __Pyx_AddTraceback("tpm.ecl2equ", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1048, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_176ecl2equ(__pyx_self, __pyx_v_v6, __pyx_v_obl); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1070 +static PyObject *__pyx_pf_3tpm_176ecl2equ(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_obl) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ecl2equ", 0); + + /* "src/tpm_astro.pxi":1070 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.ecl2equ(v6.getV6(), obl)) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1070; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1071 + /* "src/tpm_astro.pxi":1071 * """ * v = V6C() * v.setV6(tpm_astro.ecl2equ(v6.getV6(), obl)) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), ecl2equ(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)), __pyx_v_obl)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1071; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), ecl2equ(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_v_obl)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1071, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1072 + /* "src/tpm_astro.pxi":1072 * v = V6C() * v.setV6(tpm_astro.ecl2equ(v6.getV6(), obl)) * return v # <<<<<<<<<<<<<< @@ -24716,20 +36541,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_88ecl2equ(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1048 + * + * + * def ecl2equ(V6C v6, double obl): # <<<<<<<<<<<<<< + * """Convert Ecliptic to FK5 Equatorial coordinates. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.ecl2equ"); + __Pyx_AddTraceback("tpm.ecl2equ", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1075 +/* "src/tpm_astro.pxi":1075 * * * def equ2ecl(V6C v6, double obl): # <<<<<<<<<<<<<< @@ -24737,86 +36569,111 @@ static PyObject *__pyx_pf_5pytpm_3tpm_88ecl2equ(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_89equ2ecl(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_89equ2ecl[] = "Convert FK5 equatorial coordinates to Ecliptic coordinates.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in the FK5 equatorial\n system.\n obl : float\n Obliquity at the time of interest.\n\n Returns\n --------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in the Ecliptic system.\n\n Notes\n -----\n A simple rotation is performed to convert the given state vector\n from FK5 Equatorial system into Ecliptic system, using the given\n obliquity.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_89equ2ecl = {__Pyx_NAMESTR("equ2ecl"), (PyCFunction)__pyx_pf_5pytpm_3tpm_89equ2ecl, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_89equ2ecl)}; -static PyObject *__pyx_pf_5pytpm_3tpm_89equ2ecl(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_179equ2ecl(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_178equ2ecl[] = "Convert FK5 equatorial coordinates to Ecliptic coordinates.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in the FK5 equatorial\n system.\n obl : float\n Obliquity at the time of interest.\n\n Returns\n --------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in the Ecliptic system.\n\n Notes\n -----\n A simple rotation is performed to convert the given state vector\n from FK5 Equatorial system into Ecliptic system, using the given\n obliquity.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_179equ2ecl = {"equ2ecl", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_179equ2ecl, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_178equ2ecl}; +static PyObject *__pyx_pw_3tpm_179equ2ecl(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; double __pyx_v_obl; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__v6,&__pyx_n_s__obl,0}; - __Pyx_RefNannySetupContext("equ2ecl"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("equ2ecl (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v6,&__pyx_n_s_obl,0}; PyObject* values[2] = {0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__obl); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("equ2ecl", 1, 2, 2, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_obl)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("equ2ecl", 1, 2, 2, 1); __PYX_ERR(2, 1075, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "equ2ecl") < 0)) __PYX_ERR(2, 1075, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "equ2ecl") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); - __pyx_v_obl = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_obl == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_obl = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_obl == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[0]); + __pyx_v_obl = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_obl == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1075, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("equ2ecl", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("equ2ecl", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1075, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.equ2ecl"); + __Pyx_AddTraceback("tpm.equ2ecl", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1075, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_178equ2ecl(__pyx_self, __pyx_v_v6, __pyx_v_obl); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_178equ2ecl(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, double __pyx_v_obl) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("equ2ecl", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1098 + /* "src/tpm_astro.pxi":1098 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.equ2ecl(v6.getV6(), obl)) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1098; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1098, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1099 + /* "src/tpm_astro.pxi":1099 * """ * v = V6C() * v.setV6(tpm_astro.equ2ecl(v6.getV6(), obl)) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), equ2ecl(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)), __pyx_v_obl)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1099; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), equ2ecl(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_v_obl)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1099, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1100 + /* "src/tpm_astro.pxi":1100 * v = V6C() * v.setV6(tpm_astro.equ2ecl(v6.getV6(), obl)) * return v # <<<<<<<<<<<<<< @@ -24828,20 +36685,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_89equ2ecl(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1075 + * + * + * def equ2ecl(V6C v6, double obl): # <<<<<<<<<<<<<< + * """Convert FK5 equatorial coordinates to Ecliptic coordinates. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.equ2ecl"); + __Pyx_AddTraceback("tpm.equ2ecl", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1103 +/* "src/tpm_astro.pxi":1103 * * * def ellab(double tdt, V6C star, int flag): # <<<<<<<<<<<<<< @@ -24849,96 +36713,122 @@ static PyObject *__pyx_pf_5pytpm_3tpm_89equ2ecl(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_90ellab(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_90ellab[] = "Add or remove elliptic aberration.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Time (same as Terrestrial Dynamic Time).\n star : tpm.V6C\n A state vector for the object.\n flag : int\n Add correction if flag > 0 else subtract.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with elliptic aberration applied to the input.\n\n\n Notes\n -----\n This function applies elliptic aberration to the the given state\n vector, and return the resulting state vector. If ``flag > 0``\n then the correction is added, otherwise it is subtracted.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_90ellab = {__Pyx_NAMESTR("ellab"), (PyCFunction)__pyx_pf_5pytpm_3tpm_90ellab, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_90ellab)}; -static PyObject *__pyx_pf_5pytpm_3tpm_90ellab(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_181ellab(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_180ellab[] = "Add or remove elliptic aberration.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Time (same as Terrestrial Dynamic Time).\n star : tpm.V6C\n A state vector for the object.\n flag : int\n Add correction if flag > 0 else subtract.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with elliptic aberration applied to the input.\n\n\n Notes\n -----\n This function applies elliptic aberration to the the given state\n vector, and return the resulting state vector. If ``flag > 0``\n then the correction is added, otherwise it is subtracted.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_181ellab = {"ellab", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_181ellab, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_180ellab}; +static PyObject *__pyx_pw_3tpm_181ellab(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { double __pyx_v_tdt; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_star = 0; + struct __pyx_obj_3tpm_V6C *__pyx_v_star = 0; int __pyx_v_flag; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__tdt,&__pyx_n_s__star,&__pyx_n_s__flag,0}; - __Pyx_RefNannySetupContext("ellab"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ellab (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tdt,&__pyx_n_s_star,&__pyx_n_s_flag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__tdt); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__star); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("ellab", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_tdt)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_star)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ellab", 1, 3, 3, 1); __PYX_ERR(2, 1103, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ellab", 1, 3, 3, 2); __PYX_ERR(2, 1103, __pyx_L3_error) + } } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__flag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("ellab", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ellab") < 0)) __PYX_ERR(2, 1103, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "ellab") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_tdt = __pyx_PyFloat_AsDouble(values[0]); if (unlikely((__pyx_v_tdt == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_star = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[1]); - __pyx_v_flag = __Pyx_PyInt_AsInt(values[2]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_tdt = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 0)); if (unlikely((__pyx_v_tdt == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_star = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 1)); - __pyx_v_flag = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 2)); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_tdt = __pyx_PyFloat_AsDouble(values[0]); if (unlikely((__pyx_v_tdt == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1103, __pyx_L3_error) + __pyx_v_star = ((struct __pyx_obj_3tpm_V6C *)values[1]); + __pyx_v_flag = __Pyx_PyInt_As_int(values[2]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1103, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("ellab", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("ellab", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1103, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.ellab"); + __Pyx_AddTraceback("tpm.ellab", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_star), __pyx_ptype_5pytpm_3tpm_V6C, 1, "star", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_star), __pyx_ptype_3tpm_V6C, 1, "star", 0))) __PYX_ERR(2, 1103, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_180ellab(__pyx_self, __pyx_v_tdt, __pyx_v_star, __pyx_v_flag); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1128 +static PyObject *__pyx_pf_3tpm_180ellab(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_tdt, struct __pyx_obj_3tpm_V6C *__pyx_v_star, int __pyx_v_flag) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ellab", 0); + + /* "src/tpm_astro.pxi":1128 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.ellab(tdt, star.getV6(), flag)) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1129 + /* "src/tpm_astro.pxi":1129 * """ * v = V6C() * v.setV6(tpm_astro.ellab(tdt, star.getV6(), flag)) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), ellab(__pyx_v_tdt, ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_star->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_star)), __pyx_v_flag)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), ellab(__pyx_v_tdt, ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_star->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_star)), __pyx_v_flag)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1130 + /* "src/tpm_astro.pxi":1130 * v = V6C() * v.setV6(tpm_astro.ellab(tdt, star.getV6(), flag)) * return v # <<<<<<<<<<<<<< @@ -24950,20 +36840,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_90ellab(PyObject *__pyx_self, PyObject *__ __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1103 + * + * + * def ellab(double tdt, V6C star, int flag): # <<<<<<<<<<<<<< + * """Add or remove elliptic aberration. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.ellab"); + __Pyx_AddTraceback("tpm.ellab", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1133 +/* "src/tpm_astro.pxi":1133 * * * def equ2gal(V6C v6): # <<<<<<<<<<<<<< @@ -24971,43 +36868,63 @@ static PyObject *__pyx_pf_5pytpm_3tpm_90ellab(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_91equ2gal(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_91equ2gal[] = "Convert FK4 Equatorial to Galactic.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in FK4 Equatorial system.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in the Galactic system.\n\n Notes\n -----\n Applies three rotations after subtracting E-terms of\n aberration. Galactic pole is (192.25, 27.4) degrees and longitude\n of ascending node of the Galactic plane on the equator is 33\n degrees.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_91equ2gal = {__Pyx_NAMESTR("equ2gal"), (PyCFunction)__pyx_pf_5pytpm_3tpm_91equ2gal, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_91equ2gal)}; -static PyObject *__pyx_pf_5pytpm_3tpm_91equ2gal(PyObject *__pyx_self, PyObject *__pyx_v_v6) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_183equ2gal(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ +static char __pyx_doc_3tpm_182equ2gal[] = "Convert FK4 Equatorial to Galactic.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in FK4 Equatorial system.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in the Galactic system.\n\n Notes\n -----\n Applies three rotations after subtracting E-terms of\n aberration. Galactic pole is (192.25, 27.4) degrees and longitude\n of ascending node of the Galactic plane on the equator is 33\n degrees.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_183equ2gal = {"equ2gal", (PyCFunction)__pyx_pw_3tpm_183equ2gal, METH_O, __pyx_doc_3tpm_182equ2gal}; +static PyObject *__pyx_pw_3tpm_183equ2gal(PyObject *__pyx_self, PyObject *__pyx_v_v6) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("equ2gal (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1133, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_182equ2gal(__pyx_self, ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_182equ2gal(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("equ2gal"); - __pyx_self = __pyx_self; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("equ2gal", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1154 + /* "src/tpm_astro.pxi":1154 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.equ2gal(v6.getV6())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1155 + /* "src/tpm_astro.pxi":1155 * """ * v = V6C() * v.setV6(tpm_astro.equ2gal(v6.getV6())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), equ2gal(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), equ2gal(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1155, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1156 + /* "src/tpm_astro.pxi":1156 * v = V6C() * v.setV6(tpm_astro.equ2gal(v6.getV6())) * return v # <<<<<<<<<<<<<< @@ -25019,20 +36936,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_91equ2gal(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1133 + * + * + * def equ2gal(V6C v6): # <<<<<<<<<<<<<< + * """Convert FK4 Equatorial to Galactic. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.equ2gal"); + __Pyx_AddTraceback("tpm.equ2gal", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1159 +/* "src/tpm_astro.pxi":1159 * * * def gal2equ(V6C v6): # <<<<<<<<<<<<<< @@ -25040,43 +36964,63 @@ static PyObject *__pyx_pf_5pytpm_3tpm_91equ2gal(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_92gal2equ(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_92gal2equ[] = "Convert state vector from Galactic to FK4 Equatorial.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in the Galactic system.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in the FK4 Equatorial\n system.\n\n Notes\n -----\n Applies three rotations and then adds E-terms of\n aberration. Galactic pole is (192.25, 27.4) degrees and longitude\n of ascending node of the Galactic plane on the equator is 33\n degrees.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_92gal2equ = {__Pyx_NAMESTR("gal2equ"), (PyCFunction)__pyx_pf_5pytpm_3tpm_92gal2equ, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_92gal2equ)}; -static PyObject *__pyx_pf_5pytpm_3tpm_92gal2equ(PyObject *__pyx_self, PyObject *__pyx_v_v6) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_185gal2equ(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ +static char __pyx_doc_3tpm_184gal2equ[] = "Convert state vector from Galactic to FK4 Equatorial.\n\n Parameters\n ----------\n v6 : tpm.V6C\n A V6C vector with Cartesian coordinates in the Galactic system.\n\n Returns\n -------\n v : tpm.V6C\n A V6C vector with Cartesian coordinates in the FK4 Equatorial\n system.\n\n Notes\n -----\n Applies three rotations and then adds E-terms of\n aberration. Galactic pole is (192.25, 27.4) degrees and longitude\n of ascending node of the Galactic plane on the equator is 33\n degrees.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_185gal2equ = {"gal2equ", (PyCFunction)__pyx_pw_3tpm_185gal2equ, METH_O, __pyx_doc_3tpm_184gal2equ}; +static PyObject *__pyx_pw_3tpm_185gal2equ(PyObject *__pyx_self, PyObject *__pyx_v_v6) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("gal2equ (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1159, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_184gal2equ(__pyx_self, ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_184gal2equ(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("gal2equ"); - __pyx_self = __pyx_self; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("gal2equ", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1181 + /* "src/tpm_astro.pxi":1181 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.gal2equ(v6.getV6())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1182 + /* "src/tpm_astro.pxi":1182 * """ * v = V6C() * v.setV6(tpm_astro.gal2equ(v6.getV6())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), gal2equ(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), gal2equ(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1182, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1183 + /* "src/tpm_astro.pxi":1183 * v = V6C() * v.setV6(tpm_astro.gal2equ(v6.getV6())) * return v # <<<<<<<<<<<<<< @@ -25088,20 +37032,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_92gal2equ(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1159 + * + * + * def gal2equ(V6C v6): # <<<<<<<<<<<<<< + * """Convert state vector from Galactic to FK4 Equatorial. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.gal2equ"); + __Pyx_AddTraceback("tpm.gal2equ", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1186 +/* "src/tpm_astro.pxi":1186 * * * def eterms(double ep): # <<<<<<<<<<<<<< @@ -25109,52 +37060,68 @@ static PyObject *__pyx_pf_5pytpm_3tpm_92gal2equ(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_93eterms(PyObject *__pyx_self, PyObject *__pyx_arg_ep); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_93eterms[] = "Return a V6C vector containing the e-terms of aberration.\n\n Parameters\n ----------\n ep : float\n Epoch as a Julian date.\n\n Returns\n -------\n v : tpm.V6C\n a V6C vector containing the e-terms of aberration.\n\n Notes\n -----\n The state vector returned can be used to add or subtract the\n e-terms with another state vector.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_93eterms = {__Pyx_NAMESTR("eterms"), (PyCFunction)__pyx_pf_5pytpm_3tpm_93eterms, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_93eterms)}; -static PyObject *__pyx_pf_5pytpm_3tpm_93eterms(PyObject *__pyx_self, PyObject *__pyx_arg_ep) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_187eterms(PyObject *__pyx_self, PyObject *__pyx_arg_ep); /*proto*/ +static char __pyx_doc_3tpm_186eterms[] = "Return a V6C vector containing the e-terms of aberration.\n\n Parameters\n ----------\n ep : float\n Epoch as a Julian date.\n\n Returns\n -------\n v : tpm.V6C\n a V6C vector containing the e-terms of aberration.\n\n Notes\n -----\n The state vector returned can be used to add or subtract the\n e-terms with another state vector.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_187eterms = {"eterms", (PyCFunction)__pyx_pw_3tpm_187eterms, METH_O, __pyx_doc_3tpm_186eterms}; +static PyObject *__pyx_pw_3tpm_187eterms(PyObject *__pyx_self, PyObject *__pyx_arg_ep) { double __pyx_v_ep; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("eterms"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("eterms (wrapper)", 0); assert(__pyx_arg_ep); { - __pyx_v_ep = __pyx_PyFloat_AsDouble(__pyx_arg_ep); if (unlikely((__pyx_v_ep == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_ep = __pyx_PyFloat_AsDouble(__pyx_arg_ep); if (unlikely((__pyx_v_ep == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1186, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.eterms"); + __Pyx_AddTraceback("tpm.eterms", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_186eterms(__pyx_self, ((double)__pyx_v_ep)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_186eterms(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_ep) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("eterms", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1205 + /* "src/tpm_astro.pxi":1205 * * """ * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(tpm_astro.eterms(ep)) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1206 + /* "src/tpm_astro.pxi":1206 * """ * v6 = V6C() * v6.setV6(tpm_astro.eterms(ep)) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), eterms(__pyx_v_ep)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), eterms(__pyx_v_ep)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1207 + /* "src/tpm_astro.pxi":1207 * v6 = V6C() * v6.setV6(tpm_astro.eterms(ep)) * return v6 # <<<<<<<<<<<<<< @@ -25166,20 +37133,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_93eterms(PyObject *__pyx_self, PyObject *_ __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1186 + * + * + * def eterms(double ep): # <<<<<<<<<<<<<< + * """Return a V6C vector containing the e-terms of aberration. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.eterms"); + __Pyx_AddTraceback("tpm.eterms", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1210 +/* "src/tpm_astro.pxi":1210 * * * def fk425(V6C v6): # <<<<<<<<<<<<<< @@ -25187,43 +37161,63 @@ static PyObject *__pyx_pf_5pytpm_3tpm_93eterms(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_94fk425(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_94fk425[] = "Precess a V6C vector from FK4 system to FK5 system.\n\n Parameters\n ----------\n v6 : tpm.V6C\n FK4 V6C vector to be transformed.\n\n Returns\n -------\n v : tpm.V6C\n FK5 V6C vector.\n\n Notes\n -----\n Perform FK4 to FK5 transformation of the given state vector. See\n TPM manual and src/tpm/fk425.c for more details.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_94fk425 = {__Pyx_NAMESTR("fk425"), (PyCFunction)__pyx_pf_5pytpm_3tpm_94fk425, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_94fk425)}; -static PyObject *__pyx_pf_5pytpm_3tpm_94fk425(PyObject *__pyx_self, PyObject *__pyx_v_v6) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_189fk425(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ +static char __pyx_doc_3tpm_188fk425[] = "Precess a V6C vector from FK4 system to FK5 system.\n\n Parameters\n ----------\n v6 : tpm.V6C\n FK4 V6C vector to be transformed.\n\n Returns\n -------\n v : tpm.V6C\n FK5 V6C vector.\n\n Notes\n -----\n Perform FK4 to FK5 transformation of the given state vector. See\n TPM manual and src/tpm/fk425.c for more details.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_189fk425 = {"fk425", (PyCFunction)__pyx_pw_3tpm_189fk425, METH_O, __pyx_doc_3tpm_188fk425}; +static PyObject *__pyx_pw_3tpm_189fk425(PyObject *__pyx_self, PyObject *__pyx_v_v6) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fk425 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1210, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_188fk425(__pyx_self, ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_188fk425(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("fk425"); - __pyx_self = __pyx_self; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fk425", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1229 + /* "src/tpm_astro.pxi":1229 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.fk425(v6.getV6())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1230 + /* "src/tpm_astro.pxi":1230 * """ * v = V6C() * v.setV6(tpm_astro.fk425(v6.getV6())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), fk425(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), fk425(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1231 + /* "src/tpm_astro.pxi":1231 * v = V6C() * v.setV6(tpm_astro.fk425(v6.getV6())) * return v # <<<<<<<<<<<<<< @@ -25235,20 +37229,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_94fk425(PyObject *__pyx_self, PyObject *__ __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1210 + * + * + * def fk425(V6C v6): # <<<<<<<<<<<<<< + * """Precess a V6C vector from FK4 system to FK5 system. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.fk425"); + __Pyx_AddTraceback("tpm.fk425", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1234 +/* "src/tpm_astro.pxi":1234 * * * def fk524(V6C v6): # <<<<<<<<<<<<<< @@ -25256,43 +37257,63 @@ static PyObject *__pyx_pf_5pytpm_3tpm_94fk425(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_95fk524(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_95fk524[] = "Precess state vector from FK5 to FK4.\n\n Parameters\n ----------\n v6 : tpm.V6C\n FK5 V6C vector to be transformed.\n\n Returns\n -------\n v : tpm.V6C\n FK4 V6C vector.\n\n Notes\n -----\n Perform FK4 to FK5 transformation of the given state vector. See\n TPM manual and src/tpm/fk524.c for more details.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_95fk524 = {__Pyx_NAMESTR("fk524"), (PyCFunction)__pyx_pf_5pytpm_3tpm_95fk524, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_95fk524)}; -static PyObject *__pyx_pf_5pytpm_3tpm_95fk524(PyObject *__pyx_self, PyObject *__pyx_v_v6) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_191fk524(PyObject *__pyx_self, PyObject *__pyx_v_v6); /*proto*/ +static char __pyx_doc_3tpm_190fk524[] = "Precess state vector from FK5 to FK4.\n\n Parameters\n ----------\n v6 : tpm.V6C\n FK5 V6C vector to be transformed.\n\n Returns\n -------\n v : tpm.V6C\n FK4 V6C vector.\n\n Notes\n -----\n Perform FK4 to FK5 transformation of the given state vector. See\n TPM manual and src/tpm/fk524.c for more details.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_191fk524 = {"fk524", (PyCFunction)__pyx_pw_3tpm_191fk524, METH_O, __pyx_doc_3tpm_190fk524}; +static PyObject *__pyx_pw_3tpm_191fk524(PyObject *__pyx_self, PyObject *__pyx_v_v6) { + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("fk524 (wrapper)", 0); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1234, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_190fk524(__pyx_self, ((struct __pyx_obj_3tpm_V6C *)__pyx_v_v6)); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_190fk524(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_v6) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannySetupContext("fk524"); - __pyx_self = __pyx_self; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("fk524", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1253 + /* "src/tpm_astro.pxi":1253 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.fk524(v6.getV6())) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1254 + /* "src/tpm_astro.pxi":1254 * """ * v = V6C() * v.setV6(tpm_astro.fk524(v6.getV6())) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), fk524(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_v_v6)->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), fk524(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)))); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1255 + /* "src/tpm_astro.pxi":1255 * v = V6C() * v.setV6(tpm_astro.fk524(v6.getV6())) * return v # <<<<<<<<<<<<<< @@ -25304,20 +37325,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_95fk524(PyObject *__pyx_self, PyObject *__ __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1234 + * + * + * def fk524(V6C v6): # <<<<<<<<<<<<<< + * """Precess state vector from FK5 to FK4. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.fk524"); + __Pyx_AddTraceback("tpm.fk524", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1258 +/* "src/tpm_astro.pxi":1258 * * * def geod2geoc(lon, lat, alt): # <<<<<<<<<<<<<< @@ -25325,101 +37353,123 @@ static PyObject *__pyx_pf_5pytpm_3tpm_95fk524(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_96geod2geoc(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_96geod2geoc[] = "Convert geodetic position to geocentric position.\n\n Parameters\n ----------\n lon : float\n Longitude in radians (east positive).\n lat : float\n Latitude in radians (north positive).\n alt : float\n Altitude in meters.\n\n Returns\n -------\n v : tpm.V6C\n A V6C geocentric vector. Lengths should be in meters and\n velocities should be in meters/s.\n\n Notes\n -----\n Converts the given geodetic position to a geocentric one and\n returns the results in a V6C state vector. The units are meters and\n meters/second.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_96geod2geoc = {__Pyx_NAMESTR("geod2geoc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_96geod2geoc, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_96geod2geoc)}; -static PyObject *__pyx_pf_5pytpm_3tpm_96geod2geoc(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_193geod2geoc(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_192geod2geoc[] = "Convert geodetic position to geocentric position.\n\n Parameters\n ----------\n lon : float\n Longitude in radians (east positive).\n lat : float\n Latitude in radians (north positive).\n alt : float\n Altitude in meters.\n\n Returns\n -------\n v : tpm.V6C\n A V6C geocentric vector. Lengths should be in meters and\n velocities should be in meters/s.\n\n Notes\n -----\n Converts the given geodetic position to a geocentric one and\n returns the results in a V6C state vector. The units are meters and\n meters/second.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_193geod2geoc = {"geod2geoc", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_193geod2geoc, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_192geod2geoc}; +static PyObject *__pyx_pw_3tpm_193geod2geoc(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_lon = 0; PyObject *__pyx_v_lat = 0; PyObject *__pyx_v_alt = 0; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - double __pyx_t_4; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__lon,&__pyx_n_s__lat,&__pyx_n_s__alt,0}; - __Pyx_RefNannySetupContext("geod2geoc"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("geod2geoc (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_lon,&__pyx_n_s_lat,&__pyx_n_s_alt,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__lon); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__lat); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("geod2geoc", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alt); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("geod2geoc", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lon)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lat)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("geod2geoc", 1, 3, 3, 1); __PYX_ERR(2, 1258, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alt)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("geod2geoc", 1, 3, 3, 2); __PYX_ERR(2, 1258, __pyx_L3_error) + } } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "geod2geoc") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "geod2geoc") < 0)) __PYX_ERR(2, 1258, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_lon = values[0]; __pyx_v_lat = values[1]; __pyx_v_alt = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_lon = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_lat = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_alt = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("geod2geoc", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("geod2geoc", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1258, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.geod2geoc"); + __Pyx_AddTraceback("tpm.geod2geoc", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_192geod2geoc(__pyx_self, __pyx_v_lon, __pyx_v_lat, __pyx_v_alt); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_192geod2geoc(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_lon, PyObject *__pyx_v_lat, PyObject *__pyx_v_alt) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + double __pyx_t_4; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("geod2geoc", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1283 + /* "src/tpm_astro.pxi":1283 * * """ * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(tpm_astro.geod2geoc(lon, lat, alt)) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1284 + /* "src/tpm_astro.pxi":1284 * """ * v6 = V6C() * v6.setV6(tpm_astro.geod2geoc(lon, lat, alt)) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_lon); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), geod2geoc(__pyx_t_2, __pyx_t_3, __pyx_t_4)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_lon); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1284, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1284, __pyx_L1_error) + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1284, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), geod2geoc(__pyx_t_2, __pyx_t_3, __pyx_t_4)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1285 + /* "src/tpm_astro.pxi":1285 * v6 = V6C() * v6.setV6(tpm_astro.geod2geoc(lon, lat, alt)) * return v6 # <<<<<<<<<<<<<< @@ -25431,20 +37481,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_96geod2geoc(PyObject *__pyx_self, PyObject __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1258 + * + * + * def geod2geoc(lon, lat, alt): # <<<<<<<<<<<<<< + * """Convert geodetic position to geocentric position. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.geod2geoc"); + __Pyx_AddTraceback("tpm.geod2geoc", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1288 +/* "src/tpm_astro.pxi":1288 * * * def ldeflect(V6C star, V6C earth, int flag): # <<<<<<<<<<<<<< @@ -25452,97 +37509,123 @@ static PyObject *__pyx_pf_5pytpm_3tpm_96geod2geoc(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_97ldeflect(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_97ldeflect[] = "Apply General Relativity deflection of light.\n\n Parameters\n ----------\n star : tpm.V6C\n A V6C vector for the object of interest.\n earth : tpm.V6C\n V6C vector for Earth.\n flag : int\n Correction is added is flag > 0 else subtracted.\n\n Returns\n -------\n v : tpm.V6C\n Light deflection corrected V6C vector.\n\n Notes\n -----\n Applies the relativisty light deflection due to the Sun, to the\n state vector in `star`.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_97ldeflect = {__Pyx_NAMESTR("ldeflect"), (PyCFunction)__pyx_pf_5pytpm_3tpm_97ldeflect, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_97ldeflect)}; -static PyObject *__pyx_pf_5pytpm_3tpm_97ldeflect(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_star = 0; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_earth = 0; +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_195ldeflect(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_194ldeflect[] = "Apply General Relativity deflection of light.\n\n Parameters\n ----------\n star : tpm.V6C\n A V6C vector for the object of interest.\n earth : tpm.V6C\n V6C vector for Earth.\n flag : int\n Correction is added is flag > 0 else subtracted.\n\n Returns\n -------\n v : tpm.V6C\n Light deflection corrected V6C vector.\n\n Notes\n -----\n Applies the relativisty light deflection due to the Sun, to the\n state vector in `star`.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_195ldeflect = {"ldeflect", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_195ldeflect, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_194ldeflect}; +static PyObject *__pyx_pw_3tpm_195ldeflect(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { + struct __pyx_obj_3tpm_V6C *__pyx_v_star = 0; + struct __pyx_obj_3tpm_V6C *__pyx_v_earth = 0; int __pyx_v_flag; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__star,&__pyx_n_s__earth,&__pyx_n_s__flag,0}; - __Pyx_RefNannySetupContext("ldeflect"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ldeflect (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_star,&__pyx_n_s_earth,&__pyx_n_s_flag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__star); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__earth); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("ldeflect", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_star)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_earth)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ldeflect", 1, 3, 3, 1); __PYX_ERR(2, 1288, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("ldeflect", 1, 3, 3, 2); __PYX_ERR(2, 1288, __pyx_L3_error) + } } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__flag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("ldeflect", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ldeflect") < 0)) __PYX_ERR(2, 1288, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "ldeflect") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_star = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[0]); - __pyx_v_earth = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[1]); - __pyx_v_flag = __Pyx_PyInt_AsInt(values[2]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_star = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 0)); - __pyx_v_earth = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 1)); - __pyx_v_flag = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 2)); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_star = ((struct __pyx_obj_3tpm_V6C *)values[0]); + __pyx_v_earth = ((struct __pyx_obj_3tpm_V6C *)values[1]); + __pyx_v_flag = __Pyx_PyInt_As_int(values[2]); if (unlikely((__pyx_v_flag == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1288, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("ldeflect", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("ldeflect", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1288, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.ldeflect"); + __Pyx_AddTraceback("tpm.ldeflect", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_star), __pyx_ptype_5pytpm_3tpm_V6C, 1, "star", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_earth), __pyx_ptype_5pytpm_3tpm_V6C, 1, "earth", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_star), __pyx_ptype_3tpm_V6C, 1, "star", 0))) __PYX_ERR(2, 1288, __pyx_L1_error) + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_earth), __pyx_ptype_3tpm_V6C, 1, "earth", 0))) __PYX_ERR(2, 1288, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_194ldeflect(__pyx_self, __pyx_v_star, __pyx_v_earth, __pyx_v_flag); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1311 + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_194ldeflect(CYTHON_UNUSED PyObject *__pyx_self, struct __pyx_obj_3tpm_V6C *__pyx_v_star, struct __pyx_obj_3tpm_V6C *__pyx_v_earth, int __pyx_v_flag) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ldeflect", 0); + + /* "src/tpm_astro.pxi":1311 * * """ * v6 = V6C() # <<<<<<<<<<<<<< * v6.setV6(tpm_astro.ldeflect(star.getV6(), earth.getV6(), flag)) * return v6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1311, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v6)); - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1312 + /* "src/tpm_astro.pxi":1312 * """ * v6 = V6C() * v6.setV6(tpm_astro.ldeflect(star.getV6(), earth.getV6(), flag)) # <<<<<<<<<<<<<< * return v6 * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6), ldeflect(((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_star->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_star)), ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_earth->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_earth)), __pyx_v_flag)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6), ldeflect(((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_star->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_star)), ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_earth->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_earth)), __pyx_v_flag)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1313 + /* "src/tpm_astro.pxi":1313 * v6 = V6C() * v6.setV6(tpm_astro.ldeflect(star.getV6(), earth.getV6(), flag)) * return v6 # <<<<<<<<<<<<<< @@ -25554,20 +37637,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_97ldeflect(PyObject *__pyx_self, PyObject __pyx_r = ((PyObject *)__pyx_v_v6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1288 + * + * + * def ldeflect(V6C star, V6C earth, int flag): # <<<<<<<<<<<<<< + * """Apply General Relativity deflection of light. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.ldeflect"); + __Pyx_AddTraceback("tpm.ldeflect", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v6); + __Pyx_XDECREF((PyObject *)__pyx_v_v6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1316 +/* "src/tpm_astro.pxi":1316 * * * def precess(double start, double end, V6C v6, int pflag): # <<<<<<<<<<<<<< @@ -25575,106 +37665,133 @@ static PyObject *__pyx_pf_5pytpm_3tpm_97ldeflect(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_98precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_98precess[] = "Precess a state vector within an inertial frame.\n\n Parameters\n ----------\n start : float\n Initial epoch as a Julian date.\n end : float\n Final epoch as a Julian date.\n v6 : tpm.V6C\n The V6C vector to be precessed.\n pflag : int\n Precession model to use.\n\n Returns\n -------\n v : tpm.V6C\n Precessed V6C vector.\n\n Notes\n -----\n This function precesses the given state vector, `v6` from\n `start` to `end` using the given precession model\n `pflag`. The precession is carried out within an inertial\n frame. So this cannot do FK4 to FK5, for example.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_98precess = {__Pyx_NAMESTR("precess"), (PyCFunction)__pyx_pf_5pytpm_3tpm_98precess, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_98precess)}; -static PyObject *__pyx_pf_5pytpm_3tpm_98precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_197precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_196precess[] = "Precess a state vector within an inertial frame.\n\n Parameters\n ----------\n start : float\n Initial epoch as a Julian date.\n end : float\n Final epoch as a Julian date.\n v6 : tpm.V6C\n The V6C vector to be precessed.\n pflag : int\n Precession model to use.\n\n Returns\n -------\n v : tpm.V6C\n Precessed V6C vector.\n\n Notes\n -----\n This function precesses the given state vector, `v6` from\n `start` to `end` using the given precession model\n `pflag`. The precession is carried out within an inertial\n frame. So this cannot do FK4 to FK5, for example.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_197precess = {"precess", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_197precess, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_196precess}; +static PyObject *__pyx_pw_3tpm_197precess(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { double __pyx_v_start; double __pyx_v_end; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v6 = 0; + struct __pyx_obj_3tpm_V6C *__pyx_v_v6 = 0; int __pyx_v_pflag; - struct __pyx_obj_5pytpm_3tpm_V6C *__pyx_v_v; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__v6,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("precess"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("precess (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_v6,&__pyx_n_s_pflag,0}; PyObject* values[4] = {0,0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__v6); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, 1); __PYX_ERR(2, 1316, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_v6)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, 2); __PYX_ERR(2, 1316, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, 3); __PYX_ERR(2, 1316, __pyx_L3_error) + } } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, 3); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "precess") < 0)) __PYX_ERR(2, 1316, __pyx_L3_error) } + } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "precess") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - __pyx_v_start = __pyx_PyFloat_AsDouble(values[0]); if (unlikely((__pyx_v_start == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_end = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_end == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)values[2]); - __pyx_v_pflag = __Pyx_PyInt_AsInt(values[3]); if (unlikely((__pyx_v_pflag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 0)); if (unlikely((__pyx_v_start == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_end = __pyx_PyFloat_AsDouble(PyTuple_GET_ITEM(__pyx_args, 1)); if (unlikely((__pyx_v_end == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_v_v6 = ((struct __pyx_obj_5pytpm_3tpm_V6C *)PyTuple_GET_ITEM(__pyx_args, 2)); - __pyx_v_pflag = __Pyx_PyInt_AsInt(PyTuple_GET_ITEM(__pyx_args, 3)); if (unlikely((__pyx_v_pflag == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __pyx_v_start = __pyx_PyFloat_AsDouble(values[0]); if (unlikely((__pyx_v_start == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1316, __pyx_L3_error) + __pyx_v_end = __pyx_PyFloat_AsDouble(values[1]); if (unlikely((__pyx_v_end == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1316, __pyx_L3_error) + __pyx_v_v6 = ((struct __pyx_obj_3tpm_V6C *)values[2]); + __pyx_v_pflag = __Pyx_PyInt_As_int(values[3]); if (unlikely((__pyx_v_pflag == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1316, __pyx_L3_error) } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("precess", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1316, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.precess"); + __Pyx_AddTraceback("tpm.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)Py_None); __Pyx_INCREF(Py_None); - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_5pytpm_3tpm_V6C, 1, "v6", 0))) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v6), __pyx_ptype_3tpm_V6C, 1, "v6", 0))) __PYX_ERR(2, 1316, __pyx_L1_error) + __pyx_r = __pyx_pf_3tpm_196precess(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_v6, __pyx_v_pflag); + + /* function exit code */ + goto __pyx_L0; + __pyx_L1_error:; + __pyx_r = NULL; + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_196precess(CYTHON_UNUSED PyObject *__pyx_self, double __pyx_v_start, double __pyx_v_end, struct __pyx_obj_3tpm_V6C *__pyx_v_v6, int __pyx_v_pflag) { + struct __pyx_obj_3tpm_V6C *__pyx_v_v = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("precess", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1350 + /* "src/tpm_astro.pxi":1350 * * """ * v = V6C() # <<<<<<<<<<<<<< * v.setV6(tpm_astro.precess(start, end, v6.getV6(), pflag)) * return v */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_V6C)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_V6C)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_v)); - __pyx_v_v = ((struct __pyx_obj_5pytpm_3tpm_V6C *)__pyx_t_1); + __pyx_v_v = ((struct __pyx_obj_3tpm_V6C *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1351 + /* "src/tpm_astro.pxi":1351 * """ * v = V6C() * v.setV6(tpm_astro.precess(start, end, v6.getV6(), pflag)) # <<<<<<<<<<<<<< * return v * */ - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v), precess(__pyx_v_start, __pyx_v_end, ((struct __pyx_vtabstruct_5pytpm_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_5pytpm_3tpm_V6 *)__pyx_v_v6)), __pyx_v_pflag)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v->__pyx_base.__pyx_vtab)->__pyx_base.setV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v), precess(__pyx_v_start, __pyx_v_end, ((struct __pyx_vtabstruct_3tpm_V6C *)__pyx_v_v6->__pyx_base.__pyx_vtab)->__pyx_base.getV6(((struct __pyx_obj_3tpm_V6 *)__pyx_v_v6)), __pyx_v_pflag)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1352 + /* "src/tpm_astro.pxi":1352 * v = V6C() * v.setV6(tpm_astro.precess(start, end, v6.getV6(), pflag)) * return v # <<<<<<<<<<<<<< @@ -25686,20 +37803,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_98precess(PyObject *__pyx_self, PyObject * __pyx_r = ((PyObject *)__pyx_v_v); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1316 + * + * + * def precess(double start, double end, V6C v6, int pflag): # <<<<<<<<<<<<<< + * """Precess a state vector within an inertial frame. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.precess"); + __Pyx_AddTraceback("tpm.precess", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_v); + __Pyx_XDECREF((PyObject *)__pyx_v_v); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1355 +/* "src/tpm_astro.pxi":1355 * * * def precess_m(start, end, pflag, sflag): # <<<<<<<<<<<<<< @@ -25707,113 +37831,136 @@ static PyObject *__pyx_pf_5pytpm_3tpm_98precess(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_99precess_m(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_99precess_m[] = "Precession matrix for time between end and start.\n\n Parameters\n ----------\n start : float\n Starting (initial) epoch as a Julian date.\n end : float\n Ending (final) point as a Julian date.\n pflag : int\n Precession model to use.\n sflag : int\n Rotating frame or inertial frame.\n\n Notes\n -----\n Returns the precession matrix for precession from `start` time to\n `end` time. The model used for cacluating precession angles is\n specified using the `pflag` parameter. The possible values are::\n\n PRECESS_NEWCOMB\n PRECESS_ANDOYER\n PRECESS_KINOSHITA\n PRECESS_LIESKE\n PRECESS_FK4\n PRECESS_FK5\n\n If `sflag != PRECESS_ROTATING`, then the \"P-dot\" term in the\n precession matrix is set to null. The other possibility is\n `PRECESS_INERTIAL`, when the \"P-dot\" term is not set to null.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_99precess_m = {__Pyx_NAMESTR("precess_m"), (PyCFunction)__pyx_pf_5pytpm_3tpm_99precess_m, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_99precess_m)}; -static PyObject *__pyx_pf_5pytpm_3tpm_99precess_m(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_199precess_m(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_198precess_m[] = "Precession matrix for time between end and start.\n\n Parameters\n ----------\n start : float\n Starting (initial) epoch as a Julian date.\n end : float\n Ending (final) point as a Julian date.\n pflag : int\n Precession model to use.\n sflag : int\n Rotating frame or inertial frame.\n\n Notes\n -----\n Returns the precession matrix for precession from `start` time to\n `end` time. The model used for cacluating precession angles is\n specified using the `pflag` parameter. The possible values are::\n\n PRECESS_NEWCOMB\n PRECESS_ANDOYER\n PRECESS_KINOSHITA\n PRECESS_LIESKE\n PRECESS_FK4\n PRECESS_FK5\n\n If `sflag != PRECESS_ROTATING`, then the \"P-dot\" term in the\n precession matrix is set to null. The other possibility is\n `PRECESS_INERTIAL`, when the \"P-dot\" term is not set to null.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_199precess_m = {"precess_m", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_199precess_m, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_198precess_m}; +static PyObject *__pyx_pw_3tpm_199precess_m(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; PyObject *__pyx_v_sflag = 0; - struct __pyx_obj_5pytpm_3tpm_M6 *__pyx_v_m6; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - double __pyx_t_2; - double __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,&__pyx_n_s__sflag,0}; - __Pyx_RefNannySetupContext("precess_m"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("precess_m (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,&__pyx_n_s_sflag,0}; PyObject* values[4] = {0,0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, 1); __PYX_ERR(2, 1355, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, 2); __PYX_ERR(2, 1355, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_sflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, 3); __PYX_ERR(2, 1355, __pyx_L3_error) + } } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__sflag); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, 3); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "precess_m") < 0)) __PYX_ERR(2, 1355, __pyx_L3_error) } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "precess_m") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; __pyx_v_sflag = values[3]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); - __pyx_v_sflag = PyTuple_GET_ITEM(__pyx_args, 3); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("precess_m", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1355, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.precess_m"); + __Pyx_AddTraceback("tpm.precess_m", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)Py_None); __Pyx_INCREF(Py_None); + __pyx_r = __pyx_pf_3tpm_198precess_m(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag, __pyx_v_sflag); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1387 + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_198precess_m(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag, PyObject *__pyx_v_sflag) { + struct __pyx_obj_3tpm_M6 *__pyx_v_m6 = NULL; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + PyObject *__pyx_t_1 = NULL; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_t_4; + int __pyx_t_5; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("precess_m", 0); + + /* "src/tpm_astro.pxi":1387 * * """ * m6 = M6() # <<<<<<<<<<<<<< * m6.setM6(tpm_astro.precess_m(start, end, pflag, sflag)) * return m6 */ - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5pytpm_3tpm_M6)), ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_CallNoArg(((PyObject *)__pyx_ptype_3tpm_M6)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_v_m6)); - __pyx_v_m6 = ((struct __pyx_obj_5pytpm_3tpm_M6 *)__pyx_t_1); + __pyx_v_m6 = ((struct __pyx_obj_3tpm_M6 *)__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1388 + /* "src/tpm_astro.pxi":1388 * """ * m6 = M6() * m6.setM6(tpm_astro.precess_m(start, end, pflag, sflag)) # <<<<<<<<<<<<<< * return m6 * */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = __Pyx_PyInt_AsInt(__pyx_v_sflag); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = ((struct __pyx_vtabstruct_5pytpm_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, precess_m(__pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1388, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1388, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1388, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_v_sflag); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1388, __pyx_L1_error) + __pyx_t_1 = ((struct __pyx_vtabstruct_3tpm_M6 *)__pyx_v_m6->__pyx_vtab)->setM6(__pyx_v_m6, precess_m(__pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1388, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1389 + /* "src/tpm_astro.pxi":1389 * m6 = M6() * m6.setM6(tpm_astro.precess_m(start, end, pflag, sflag)) * return m6 # <<<<<<<<<<<<<< @@ -25825,20 +37972,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_99precess_m(PyObject *__pyx_self, PyObject __pyx_r = ((PyObject *)__pyx_v_m6); goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1355 + * + * + * def precess_m(start, end, pflag, sflag): # <<<<<<<<<<<<<< + * """Precession matrix for time between end and start. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("pytpm.tpm.precess_m"); + __Pyx_AddTraceback("tpm.precess_m", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; - __Pyx_DECREF((PyObject *)__pyx_v_m6); + __Pyx_XDECREF((PyObject *)__pyx_v_m6); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1392 +/* "src/tpm_astro.pxi":1392 * * * def eccentricity(tdt): # <<<<<<<<<<<<<< @@ -25846,17 +38000,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_99precess_m(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_100eccentricity(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_100eccentricity[] = "Eccentricity of Earth's orbit.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as Julian date.\n\n Parameters\n ----------\n e : float\n Eccentricity of Earth's orbit.\n\n Notes\n -----\n Returns the eccentricity of Earth's orbit at the given time. Time\n is a TDT (same as TT) as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_100eccentricity = {__Pyx_NAMESTR("eccentricity"), (PyCFunction)__pyx_pf_5pytpm_3tpm_100eccentricity, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_100eccentricity)}; -static PyObject *__pyx_pf_5pytpm_3tpm_100eccentricity(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_201eccentricity(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_200eccentricity[] = "Eccentricity of Earth's orbit.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as Julian date.\n\n Parameters\n ----------\n e : float\n Eccentricity of Earth's orbit.\n\n Notes\n -----\n Returns the eccentricity of Earth's orbit at the given time. Time\n is a TDT (same as TT) as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_201eccentricity = {"eccentricity", (PyCFunction)__pyx_pw_3tpm_201eccentricity, METH_O, __pyx_doc_3tpm_200eccentricity}; +static PyObject *__pyx_pw_3tpm_201eccentricity(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("eccentricity (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_200eccentricity(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_200eccentricity(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("eccentricity"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("eccentricity", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1411 + /* "src/tpm_astro.pxi":1411 * * """ * return tpm_astro.eccentricity(tdt) # <<<<<<<<<<<<<< @@ -25864,18 +38033,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_100eccentricity(PyObject *__pyx_self, PyOb * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(eccentricity(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1411, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(eccentricity(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1411, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1392 + * + * + * def eccentricity(tdt): # <<<<<<<<<<<<<< + * """Eccentricity of Earth's orbit. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.eccentricity"); + __Pyx_AddTraceback("tpm.eccentricity", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -25883,7 +38059,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_100eccentricity(PyObject *__pyx_self, PyOb return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1414 +/* "src/tpm_astro.pxi":1414 * * * def eccentricity_dot(tdt): # <<<<<<<<<<<<<< @@ -25891,17 +38067,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_100eccentricity(PyObject *__pyx_self, PyOb * */ -static PyObject *__pyx_pf_5pytpm_3tpm_101eccentricity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_101eccentricity_dot[] = "Rate of change in the eccentricity of Earth's orbit.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as Julian date.\n\n Returns\n -------\n edot : float\n Rate of change in the eccentricity of Earth's orbit.\n\n Notes\n -----\n Returns the rate of change (per Julian century) in the eccentricity\n of Earth's orbit at the given time. Time is TDT (same as TT) as a\n Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_101eccentricity_dot = {__Pyx_NAMESTR("eccentricity_dot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_101eccentricity_dot, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_101eccentricity_dot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_101eccentricity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_203eccentricity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_202eccentricity_dot[] = "Rate of change in the eccentricity of Earth's orbit.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as Julian date.\n\n Returns\n -------\n edot : float\n Rate of change in the eccentricity of Earth's orbit.\n\n Notes\n -----\n Returns the rate of change (per Julian century) in the eccentricity\n of Earth's orbit at the given time. Time is TDT (same as TT) as a\n Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_203eccentricity_dot = {"eccentricity_dot", (PyCFunction)__pyx_pw_3tpm_203eccentricity_dot, METH_O, __pyx_doc_3tpm_202eccentricity_dot}; +static PyObject *__pyx_pw_3tpm_203eccentricity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("eccentricity_dot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_202eccentricity_dot(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_202eccentricity_dot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("eccentricity_dot"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("eccentricity_dot", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1434 + /* "src/tpm_astro.pxi":1434 * * """ * return tpm_astro.eccentricity_dot(tdt) # <<<<<<<<<<<<<< @@ -25909,18 +38100,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_101eccentricity_dot(PyObject *__pyx_self, * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1434; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(eccentricity_dot(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1434; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1434, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(eccentricity_dot(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1414 + * + * + * def eccentricity_dot(tdt): # <<<<<<<<<<<<<< + * """Rate of change in the eccentricity of Earth's orbit. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.eccentricity_dot"); + __Pyx_AddTraceback("tpm.eccentricity_dot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -25928,7 +38126,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_101eccentricity_dot(PyObject *__pyx_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1437 +/* "src/tpm_astro.pxi":1437 * * * def obliquity(tdt): # <<<<<<<<<<<<<< @@ -25936,17 +38134,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_101eccentricity_dot(PyObject *__pyx_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_102obliquity(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_102obliquity[] = "Mean obliquity of Ecliptic(epoch J2000).\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as a Julian date.\n\n Returns\n -------\n obl : float\n Obliquity of the Ecliptic in radians.\n\n Notes\n -----\n The obliquity of the mean Ecliptic of J2000, at the given TDT (same\n as TT) is returned. The returned value is in radians.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_102obliquity = {__Pyx_NAMESTR("obliquity"), (PyCFunction)__pyx_pf_5pytpm_3tpm_102obliquity, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_102obliquity)}; -static PyObject *__pyx_pf_5pytpm_3tpm_102obliquity(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_205obliquity(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_204obliquity[] = "Mean obliquity of Ecliptic(epoch J2000).\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as a Julian date.\n\n Returns\n -------\n obl : float\n Obliquity of the Ecliptic in radians.\n\n Notes\n -----\n The obliquity of the mean Ecliptic of J2000, at the given TDT (same\n as TT) is returned. The returned value is in radians.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_205obliquity = {"obliquity", (PyCFunction)__pyx_pw_3tpm_205obliquity, METH_O, __pyx_doc_3tpm_204obliquity}; +static PyObject *__pyx_pw_3tpm_205obliquity(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("obliquity (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_204obliquity(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_204obliquity(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("obliquity"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("obliquity", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1456 + /* "src/tpm_astro.pxi":1456 * * """ * return tpm_astro.obliquity(tdt) # <<<<<<<<<<<<<< @@ -25954,18 +38167,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_102obliquity(PyObject *__pyx_self, PyObjec * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(obliquity(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1456, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(obliquity(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1456, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1437 + * + * + * def obliquity(tdt): # <<<<<<<<<<<<<< + * """Mean obliquity of Ecliptic(epoch J2000). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.obliquity"); + __Pyx_AddTraceback("tpm.obliquity", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -25973,7 +38193,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_102obliquity(PyObject *__pyx_self, PyObjec return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1459 +/* "src/tpm_astro.pxi":1459 * * * def obliquity_dot(tdt): # <<<<<<<<<<<<<< @@ -25981,17 +38201,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_102obliquity(PyObject *__pyx_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_103obliquity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_103obliquity_dot[] = "Rate of change of mean obliquity of Ecliptic(epoch J2000).\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as a Julian date.\n\n Returns\n -------\n odot : float\n Rate of change of obliquity of the Ecliptic in ra/jcen.\n\n Notes\n -----\n Returns the rate of change (radians per Julian century) in the\n obliquity of Ecliptic at the given time. Time is a TDT (same as TT)\n as a Julian date.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_103obliquity_dot = {__Pyx_NAMESTR("obliquity_dot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_103obliquity_dot, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_103obliquity_dot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_103obliquity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_207obliquity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_206obliquity_dot[] = "Rate of change of mean obliquity of Ecliptic(epoch J2000).\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TT) as a Julian date.\n\n Returns\n -------\n odot : float\n Rate of change of obliquity of the Ecliptic in ra/jcen.\n\n Notes\n -----\n Returns the rate of change (radians per Julian century) in the\n obliquity of Ecliptic at the given time. Time is a TDT (same as TT)\n as a Julian date.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_207obliquity_dot = {"obliquity_dot", (PyCFunction)__pyx_pw_3tpm_207obliquity_dot, METH_O, __pyx_doc_3tpm_206obliquity_dot}; +static PyObject *__pyx_pw_3tpm_207obliquity_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("obliquity_dot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_206obliquity_dot(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_206obliquity_dot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("obliquity_dot"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("obliquity_dot", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1479 + /* "src/tpm_astro.pxi":1479 * * """ * return tpm_astro.obliquity_dot(tdt) # <<<<<<<<<<<<<< @@ -25999,18 +38234,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_103obliquity_dot(PyObject *__pyx_self, PyO * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(obliquity_dot(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1479, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(obliquity_dot(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1459 + * + * + * def obliquity_dot(tdt): # <<<<<<<<<<<<<< + * """Rate of change of mean obliquity of Ecliptic(epoch J2000). + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.obliquity_dot"); + __Pyx_AddTraceback("tpm.obliquity_dot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26018,7 +38260,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_103obliquity_dot(PyObject *__pyx_self, PyO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1482 +/* "src/tpm_astro.pxi":1482 * * * def refco(lat=0.557744205098, alt=2093.093, # <<<<<<<<<<<<<< @@ -26026,10 +38268,11 @@ static PyObject *__pyx_pf_5pytpm_3tpm_103obliquity_dot(PyObject *__pyx_self, PyO * wavelength=0.550, eps=1e-8): */ -static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_104refco[] = "Refractions coefficients for use with ``refract()``.\n\n Parameters\n ----------\n lat : float\n Observer's latitude (radians).\n alt : float\n Observer's altitude above sea level (meters).\n T : float\n Ambient temperature (Kelvin).\n rh : int\n Relative humidity (0-1).\n wavelength : float\n Wavelength in microns.\n eps : float\n Fractional accuracy.\n\n Returns\n -------\n r : 2-element tuple of floats\n (refa, refb)\n\n Notes\n -----\n The values returned are used for calculating change in zenith\n distance that must be applied to correct for refraction. These\n values are passed to the function `refract` for this calculation.\n\n The default location is KPNO.\n\n See src/tpm/refco.c for more details.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_104refco = {__Pyx_NAMESTR("refco"), (PyCFunction)__pyx_pf_5pytpm_3tpm_104refco, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_104refco)}; -static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_209refco(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_208refco[] = "Refractions coefficients for use with ``refract()``.\n\n Parameters\n ----------\n lat : float\n Observer's latitude (radians).\n alt : float\n Observer's altitude above sea level (meters).\n T : float\n Ambient temperature (Kelvin).\n rh : int\n Relative humidity (0-1).\n wavelength : float\n Wavelength in microns.\n eps : float\n Fractional accuracy.\n\n Returns\n -------\n r : 2-element tuple of floats\n (refa, refb)\n\n Notes\n -----\n The values returned are used for calculating change in zenith\n distance that must be applied to correct for refraction. These\n values are passed to the function `refract` for this calculation.\n\n The default location is KPNO.\n\n See src/tpm/refco.c for more details.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_209refco = {"refco", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_209refco, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_208refco}; +static PyObject *__pyx_pw_3tpm_209refco(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_lat = 0; PyObject *__pyx_v_alt = 0; PyObject *__pyx_v_T = 0; @@ -26037,83 +38280,109 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ PyObject *__pyx_v_rh = 0; PyObject *__pyx_v_wavelength = 0; PyObject *__pyx_v_eps = 0; - double __pyx_v_refa; - double __pyx_v_refb; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - double __pyx_t_3; - double __pyx_t_4; - double __pyx_t_5; - double __pyx_t_6; - double __pyx_t_7; - double *__pyx_t_8; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__lat,&__pyx_n_s__alt,&__pyx_n_s__T,&__pyx_n_s__P,&__pyx_n_s__rh,&__pyx_n_s__wavelength,&__pyx_n_s__eps,0}; - __Pyx_RefNannySetupContext("refco"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("refco (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_lat,&__pyx_n_s_alt,&__pyx_n_s_T,&__pyx_n_s_P,&__pyx_n_s_rh,&__pyx_n_s_wavelength,&__pyx_n_s_eps,0}; PyObject* values[7] = {0,0,0,0,0,0,0}; - values[0] = __pyx_k_74; - values[1] = __pyx_k_75; - values[2] = __pyx_k_76; - values[3] = __pyx_k_77; - values[4] = __pyx_k_78; - values[5] = __pyx_k_79; - values[6] = __pyx_k_80; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__lat); - if (value) { values[0] = value; kw_args--; } - } - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alt); - if (value) { values[1] = value; kw_args--; } - } - case 2: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__T); - if (value) { values[2] = value; kw_args--; } - } - case 3: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__P); - if (value) { values[3] = value; kw_args--; } - } - case 4: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__rh); - if (value) { values[4] = value; kw_args--; } - } - case 5: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__wavelength); - if (value) { values[5] = value; kw_args--; } - } - case 6: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__eps); - if (value) { values[6] = value; kw_args--; } + values[0] = ((PyObject *)__pyx_float_0_557744205098); + values[1] = ((PyObject *)__pyx_float_2093_093); + values[2] = ((PyObject *)__pyx_float_273_15); + values[3] = ((PyObject *)__pyx_float_1013_25); + values[4] = ((PyObject *)__pyx_float_0_0); + values[5] = ((PyObject *)__pyx_float_0_550); + values[6] = ((PyObject *)__pyx_float_1eneg_8); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_lat); + if (value) { values[0] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alt); + if (value) { values[1] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 2: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_T); + if (value) { values[2] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 3: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_P); + if (value) { values[3] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 4: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_rh); + if (value) { values[4] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 5: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_wavelength); + if (value) { values[5] = value; kw_args--; } + } + CYTHON_FALLTHROUGH; + case 6: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_eps); + if (value) { values[6] = value; kw_args--; } + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "refco") < 0)) __PYX_ERR(2, 1482, __pyx_L3_error) + } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6); + CYTHON_FALLTHROUGH; + case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); + CYTHON_FALLTHROUGH; + case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); + CYTHON_FALLTHROUGH; + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "refco") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } __pyx_v_lat = values[0]; __pyx_v_alt = values[1]; @@ -26122,36 +38391,43 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ __pyx_v_rh = values[4]; __pyx_v_wavelength = values[5]; __pyx_v_eps = values[6]; - } else { - __pyx_v_lat = __pyx_k_74; - __pyx_v_alt = __pyx_k_75; - __pyx_v_T = __pyx_k_76; - __pyx_v_P = __pyx_k_77; - __pyx_v_rh = __pyx_k_78; - __pyx_v_wavelength = __pyx_k_79; - __pyx_v_eps = __pyx_k_80; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 7: __pyx_v_eps = PyTuple_GET_ITEM(__pyx_args, 6); - case 6: __pyx_v_wavelength = PyTuple_GET_ITEM(__pyx_args, 5); - case 5: __pyx_v_rh = PyTuple_GET_ITEM(__pyx_args, 4); - case 4: __pyx_v_P = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: __pyx_v_T = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: __pyx_v_alt = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_lat = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("refco", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("refco", 0, 0, 7, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1482, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.refco"); + __Pyx_AddTraceback("tpm.refco", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_208refco(__pyx_self, __pyx_v_lat, __pyx_v_alt, __pyx_v_T, __pyx_v_P, __pyx_v_rh, __pyx_v_wavelength, __pyx_v_eps); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_208refco(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_lat, PyObject *__pyx_v_alt, PyObject *__pyx_v_T, PyObject *__pyx_v_P, PyObject *__pyx_v_rh, PyObject *__pyx_v_wavelength, PyObject *__pyx_v_eps) { + double __pyx_v_refa; + double __pyx_v_refb; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + double __pyx_t_3; + double __pyx_t_4; + double __pyx_t_5; + double __pyx_t_6; + double __pyx_t_7; + PyObject *__pyx_t_8 = NULL; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("refco", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1520 + /* "src/tpm_astro.pxi":1520 * cdef double refa * cdef double refb * refa = 0.0 # <<<<<<<<<<<<<< @@ -26160,7 +38436,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ */ __pyx_v_refa = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1521 + /* "src/tpm_astro.pxi":1521 * cdef double refb * refa = 0.0 * refb = 0.0 # <<<<<<<<<<<<<< @@ -26169,32 +38445,31 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ */ __pyx_v_refb = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1522 + /* "src/tpm_astro.pxi":1522 * refa = 0.0 * refb = 0.0 * tpm_astro.refco( lat, alt, T, P, rh, wavelength, eps, # <<<<<<<<<<<<<< * &refa, &refb) * return (refa, refb) */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_T); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_P); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_v_rh); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = __pyx_PyFloat_AsDouble(__pyx_v_wavelength); if (unlikely((__pyx_t_6 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_v_eps); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_lat); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alt); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_T); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) + __pyx_t_4 = __pyx_PyFloat_AsDouble(__pyx_v_P); if (unlikely((__pyx_t_4 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) + __pyx_t_5 = __pyx_PyFloat_AsDouble(__pyx_v_rh); if (unlikely((__pyx_t_5 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) + __pyx_t_6 = __pyx_PyFloat_AsDouble(__pyx_v_wavelength); if (unlikely((__pyx_t_6 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) + __pyx_t_7 = __pyx_PyFloat_AsDouble(__pyx_v_eps); if (unlikely((__pyx_t_7 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1522, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1523 + /* "src/tpm_astro.pxi":1523 * refb = 0.0 * tpm_astro.refco( lat, alt, T, P, rh, wavelength, eps, * &refa, &refb) # <<<<<<<<<<<<<< * return (refa, refb) * */ - __pyx_t_8 = (&__pyx_v_refa); - refco(__pyx_t_1, __pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5, __pyx_t_6, __pyx_t_7, __pyx_t_8, (&__pyx_v_refb)); + refco(__pyx_t_1, __pyx_t_2, __pyx_t_3, __pyx_t_4, __pyx_t_5, __pyx_t_6, __pyx_t_7, (&__pyx_v_refa), (&__pyx_v_refb)); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1524 + /* "src/tpm_astro.pxi":1524 * tpm_astro.refco( lat, alt, T, P, rh, wavelength, eps, * &refa, &refb) * return (refa, refb) # <<<<<<<<<<<<<< @@ -26202,29 +38477,36 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_9 = PyFloat_FromDouble(__pyx_v_refa); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_8 = PyFloat_FromDouble(__pyx_v_refa); if (unlikely(!__pyx_t_8)) __PYX_ERR(2, 1524, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_8); + __pyx_t_9 = PyFloat_FromDouble(__pyx_v_refb); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 1524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_10 = PyFloat_FromDouble(__pyx_v_refb); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(2, 1524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_11)); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_9); + __Pyx_GIVEREF(__pyx_t_8); + PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_9); - PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); + PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_9); + __pyx_t_8 = 0; __pyx_t_9 = 0; + __pyx_r = __pyx_t_10; __pyx_t_10 = 0; - __pyx_r = ((PyObject *)__pyx_t_11); - __pyx_t_11 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1482 + * + * + * def refco(lat=0.557744205098, alt=2093.093, # <<<<<<<<<<<<<< + * T=273.15, P=1013.25, rh=0.0, + * wavelength=0.550, eps=1e-8): + */ + + /* function exit code */ __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_8); __Pyx_XDECREF(__pyx_t_9); __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("pytpm.tpm.refco"); + __Pyx_AddTraceback("tpm.refco", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26232,7 +38514,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1527 +/* "src/tpm_astro.pxi":1527 * * * def refract(zx, refa, refb, flag): # <<<<<<<<<<<<<< @@ -26240,83 +38522,108 @@ static PyObject *__pyx_pf_5pytpm_3tpm_104refco(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_105refract(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_105refract[] = "Returns change in zenith distance due to refraction.\n\n Parameters\n ----------\n zx : float\n Raw zenith distance, apparent or observed (radians).\n refa : float\n Refraction coefficient from ``refco``.\n refa : float\n Refraction coefficient from ``refco``.\n flag : float\n Apply refraction if flag > 0, else remove.\n\n Returns\n -------\n z : float\n Correction to zenith distance due to refraction.\n\n Notes\n -----\n Given a zenith distance ``zx``, this function returns the amount of\n change in this quantity due to refraction. This correction must be\n added to ``zx`` to find the resultant zenith distance.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_105refract = {__Pyx_NAMESTR("refract"), (PyCFunction)__pyx_pf_5pytpm_3tpm_105refract, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_105refract)}; -static PyObject *__pyx_pf_5pytpm_3tpm_105refract(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_211refract(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_210refract[] = "Returns change in zenith distance due to refraction.\n\n Parameters\n ----------\n zx : float\n Raw zenith distance, apparent or observed (radians).\n refa : float\n Refraction coefficient from ``refco``.\n refa : float\n Refraction coefficient from ``refco``.\n flag : float\n Apply refraction if flag > 0, else remove.\n\n Returns\n -------\n z : float\n Correction to zenith distance due to refraction.\n\n Notes\n -----\n Given a zenith distance ``zx``, this function returns the amount of\n change in this quantity due to refraction. This correction must be\n added to ``zx`` to find the resultant zenith distance.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_211refract = {"refract", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_211refract, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_210refract}; +static PyObject *__pyx_pw_3tpm_211refract(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_zx = 0; PyObject *__pyx_v_refa = 0; PyObject *__pyx_v_refb = 0; PyObject *__pyx_v_flag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - double __pyx_t_3; - int __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__zx,&__pyx_n_s__refa,&__pyx_n_s__refb,&__pyx_n_s__flag,0}; - __Pyx_RefNannySetupContext("refract"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("refract (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_zx,&__pyx_n_s_refa,&__pyx_n_s_refb,&__pyx_n_s_flag,0}; PyObject* values[4] = {0,0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__zx); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__refa); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); + CYTHON_FALLTHROUGH; + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__refb); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_zx)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_refa)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, 1); __PYX_ERR(2, 1527, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_refb)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, 2); __PYX_ERR(2, 1527, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 3: + if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_flag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, 3); __PYX_ERR(2, 1527, __pyx_L3_error) + } } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__flag); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, 3); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "refract") < 0)) __PYX_ERR(2, 1527, __pyx_L3_error) } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "refract") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + values[3] = PyTuple_GET_ITEM(__pyx_args, 3); } __pyx_v_zx = values[0]; __pyx_v_refa = values[1]; __pyx_v_refb = values[2]; __pyx_v_flag = values[3]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_zx = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_refa = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_refb = PyTuple_GET_ITEM(__pyx_args, 2); - __pyx_v_flag = PyTuple_GET_ITEM(__pyx_args, 3); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("refract", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1527, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.refract"); + __Pyx_AddTraceback("tpm.refract", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_210refract(__pyx_self, __pyx_v_zx, __pyx_v_refa, __pyx_v_refb, __pyx_v_flag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_210refract(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_zx, PyObject *__pyx_v_refa, PyObject *__pyx_v_refb, PyObject *__pyx_v_flag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + double __pyx_t_3; + int __pyx_t_4; + PyObject *__pyx_t_5 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("refract", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1553 + /* "src/tpm_astro.pxi":1553 * * """ * return tpm_astro.refract(zx, refa, refb, flag) # <<<<<<<<<<<<<< @@ -26324,21 +38631,28 @@ static PyObject *__pyx_pf_5pytpm_3tpm_105refract(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_refa); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_refb); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = __Pyx_PyInt_AsInt(__pyx_v_flag); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = PyFloat_FromDouble(refract(__pyx_t_1, __pyx_t_2, __pyx_t_3, __pyx_t_4)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_zx); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1553, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_refa); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1553, __pyx_L1_error) + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_refb); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1553, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_v_flag); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1553, __pyx_L1_error) + __pyx_t_5 = PyFloat_FromDouble(refract(__pyx_t_1, __pyx_t_2, __pyx_t_3, __pyx_t_4)); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 1553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_r = __pyx_t_5; __pyx_t_5 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1527 + * + * + * def refract(zx, refa, refb, flag): # <<<<<<<<<<<<<< + * """Returns change in zenith distance due to refraction. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("pytpm.tpm.refract"); + __Pyx_AddTraceback("tpm.refract", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26346,7 +38660,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_105refract(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1556 +/* "src/tpm_astro.pxi":1556 * * * def solar_perigee(tdt): # <<<<<<<<<<<<<< @@ -26354,17 +38668,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_105refract(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_106solar_perigee(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_106solar_perigee[] = "Mean longitude of the perigee of solar orbit.\n\n Parameters\n ----------\n tdt : float\n Terresttrial Dynamic Time (same as TT).\n\n Returns\n -------\n s : float\n Longitude in radians.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_106solar_perigee = {__Pyx_NAMESTR("solar_perigee"), (PyCFunction)__pyx_pf_5pytpm_3tpm_106solar_perigee, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_106solar_perigee)}; -static PyObject *__pyx_pf_5pytpm_3tpm_106solar_perigee(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_213solar_perigee(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_212solar_perigee[] = "Mean longitude of the perigee of solar orbit.\n\n Parameters\n ----------\n tdt : float\n Terresttrial Dynamic Time (same as TT).\n\n Returns\n -------\n s : float\n Longitude in radians.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_213solar_perigee = {"solar_perigee", (PyCFunction)__pyx_pw_3tpm_213solar_perigee, METH_O, __pyx_doc_3tpm_212solar_perigee}; +static PyObject *__pyx_pw_3tpm_213solar_perigee(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("solar_perigee (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_212solar_perigee(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_212solar_perigee(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("solar_perigee"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("solar_perigee", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1570 + /* "src/tpm_astro.pxi":1570 * * """ * return tpm_astro.solar_perigee(tdt) # <<<<<<<<<<<<<< @@ -26372,18 +38701,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_106solar_perigee(PyObject *__pyx_self, PyO * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1570; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(solar_perigee(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1570; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1570, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(solar_perigee(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1570, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1556 + * + * + * def solar_perigee(tdt): # <<<<<<<<<<<<<< + * """Mean longitude of the perigee of solar orbit. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.solar_perigee"); + __Pyx_AddTraceback("tpm.solar_perigee", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26391,7 +38727,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_106solar_perigee(PyObject *__pyx_self, PyO return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1573 +/* "src/tpm_astro.pxi":1573 * * * def solar_perigee_dot(tdt): # <<<<<<<<<<<<<< @@ -26399,17 +38735,32 @@ static PyObject *__pyx_pf_5pytpm_3tpm_106solar_perigee(PyObject *__pyx_self, PyO * */ -static PyObject *__pyx_pf_5pytpm_3tpm_107solar_perigee_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_107solar_perigee_dot[] = "Rate of change of solar perigee.\n\n Parameters\n ----------\n tdt : float\n Terresttrial Dynamic Time (same as TT).\n\n Returns\n -------\n s : float\n Rate of change of longitude in radians/julian century.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_107solar_perigee_dot = {__Pyx_NAMESTR("solar_perigee_dot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_107solar_perigee_dot, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_107solar_perigee_dot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_107solar_perigee_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_215solar_perigee_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_214solar_perigee_dot[] = "Rate of change of solar perigee.\n\n Parameters\n ----------\n tdt : float\n Terresttrial Dynamic Time (same as TT).\n\n Returns\n -------\n s : float\n Rate of change of longitude in radians/julian century.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_215solar_perigee_dot = {"solar_perigee_dot", (PyCFunction)__pyx_pw_3tpm_215solar_perigee_dot, METH_O, __pyx_doc_3tpm_214solar_perigee_dot}; +static PyObject *__pyx_pw_3tpm_215solar_perigee_dot(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("solar_perigee_dot (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_214solar_perigee_dot(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_214solar_perigee_dot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannySetupContext("solar_perigee_dot"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("solar_perigee_dot", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1587 + /* "src/tpm_astro.pxi":1587 * * """ * return tpm_astro.solar_perigee_dot(tdt) # <<<<<<<<<<<<<< @@ -26417,18 +38768,25 @@ static PyObject *__pyx_pf_5pytpm_3tpm_107solar_perigee_dot(PyObject *__pyx_self, * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyFloat_FromDouble(solar_perigee_dot(__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1587, __pyx_L1_error) + __pyx_t_2 = PyFloat_FromDouble(solar_perigee_dot(__pyx_t_1)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1573 + * + * + * def solar_perigee_dot(tdt): # <<<<<<<<<<<<<< + * """Rate of change of solar perigee. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("pytpm.tpm.solar_perigee_dot"); + __Pyx_AddTraceback("tpm.solar_perigee_dot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26436,7 +38794,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_107solar_perigee_dot(PyObject *__pyx_self, return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1590 +/* "src/tpm_astro.pxi":1590 * * * def theta(start, end, pflag): # <<<<<<<<<<<<<< @@ -26444,72 +38802,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_107solar_perigee_dot(PyObject *__pyx_self, * */ -static PyObject *__pyx_pf_5pytpm_3tpm_108theta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_108theta[] = "FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n theta : float\n Precession angle for the given time period.\n\n Notes\n -----\n Returns the precession angle for the model indicated by `pflag`\n for the time `end`, starting from the time `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_108theta = {__Pyx_NAMESTR("theta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_108theta, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_108theta)}; -static PyObject *__pyx_pf_5pytpm_3tpm_108theta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_217theta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_216theta[] = "FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n theta : float\n Precession angle for the given time period.\n\n Notes\n -----\n Returns the precession angle for the model indicated by `pflag`\n for the time `end`, starting from the time `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_217theta = {"theta", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_217theta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_216theta}; +static PyObject *__pyx_pw_3tpm_217theta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("theta"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("theta (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("theta", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("theta", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("theta", 1, 3, 3, 1); __PYX_ERR(2, 1590, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("theta", 1, 3, 3, 2); __PYX_ERR(2, 1590, __pyx_L3_error) + } } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "theta") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "theta") < 0)) __PYX_ERR(2, 1590, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("theta", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("theta", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1590, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.theta"); + __Pyx_AddTraceback("tpm.theta", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_216theta(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_216theta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("theta", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1620 + /* "src/tpm_astro.pxi":1620 * * """ * return tpm_astro.theta(start, end, pflag) # <<<<<<<<<<<<<< @@ -26517,20 +38899,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_108theta(PyObject *__pyx_self, PyObject *_ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(theta(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1620, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1620, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1620, __pyx_L1_error) + __pyx_t_4 = PyFloat_FromDouble(theta(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1590 + * + * + * def theta(start, end, pflag): # <<<<<<<<<<<<<< + * """FK4 and FK5 precession angles. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.theta"); + __Pyx_AddTraceback("tpm.theta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26538,7 +38927,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_108theta(PyObject *__pyx_self, PyObject *_ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1623 +/* "src/tpm_astro.pxi":1623 * * * def thetadot(start, end, pflag): # <<<<<<<<<<<<<< @@ -26546,72 +38935,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_108theta(PyObject *__pyx_self, PyObject *_ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_109thetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_109thetadot[] = "Rate of change of FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n td : float\n Rate of change of precession angle for the given time period.\n\n Notes\n -----\n Returns the rate of change of precession angle for the model\n indicated by `pflag` for the time `end`, starting from the time\n `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_109thetadot = {__Pyx_NAMESTR("thetadot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_109thetadot, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_109thetadot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_109thetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_219thetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_218thetadot[] = "Rate of change of FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n td : float\n Rate of change of precession angle for the given time period.\n\n Notes\n -----\n Returns the rate of change of precession angle for the model\n indicated by `pflag` for the time `end`, starting from the time\n `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_219thetadot = {"thetadot", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_219thetadot, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_218thetadot}; +static PyObject *__pyx_pw_3tpm_219thetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("thetadot"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("thetadot (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("thetadot", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("thetadot", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("thetadot", 1, 3, 3, 1); __PYX_ERR(2, 1623, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("thetadot", 1, 3, 3, 2); __PYX_ERR(2, 1623, __pyx_L3_error) + } } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "thetadot") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "thetadot") < 0)) __PYX_ERR(2, 1623, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("thetadot", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("thetadot", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1623, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.thetadot"); + __Pyx_AddTraceback("tpm.thetadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_218thetadot(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_218thetadot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("thetadot", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1654 + /* "src/tpm_astro.pxi":1654 * * """ * return tpm_astro.thetadot(start, end, pflag) # <<<<<<<<<<<<<< @@ -26619,20 +39032,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_109thetadot(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1654; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1654; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1654; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(thetadot(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1654; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1654, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1654, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1654, __pyx_L1_error) + __pyx_t_4 = PyFloat_FromDouble(thetadot(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1623 + * + * + * def thetadot(start, end, pflag): # <<<<<<<<<<<<<< + * """Rate of change of FK4 and FK5 precession angles. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.thetadot"); + __Pyx_AddTraceback("tpm.thetadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26640,7 +39060,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_109thetadot(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1657 +/* "src/tpm_astro.pxi":1657 * * * def zee(start, end, pflag): # <<<<<<<<<<<<<< @@ -26648,72 +39068,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_109thetadot(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_110zee(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_110zee[] = "FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n z :float\n Precession angle for the given time period.\n\n Notes\n -----\n Returns the precession angle for the model indicated by `pflag`\n for the time `end`, starting from the time `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_110zee = {__Pyx_NAMESTR("zee"), (PyCFunction)__pyx_pf_5pytpm_3tpm_110zee, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_110zee)}; -static PyObject *__pyx_pf_5pytpm_3tpm_110zee(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_221zee(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_220zee[] = "FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n z :float\n Precession angle for the given time period.\n\n Notes\n -----\n Returns the precession angle for the model indicated by `pflag`\n for the time `end`, starting from the time `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_221zee = {"zee", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_221zee, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_220zee}; +static PyObject *__pyx_pw_3tpm_221zee(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("zee"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("zee (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zee", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zee", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zee", 1, 3, 3, 1); __PYX_ERR(2, 1657, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zee", 1, 3, 3, 2); __PYX_ERR(2, 1657, __pyx_L3_error) + } } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "zee") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zee") < 0)) __PYX_ERR(2, 1657, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("zee", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("zee", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1657, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.zee"); + __Pyx_AddTraceback("tpm.zee", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_220zee(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_220zee(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("zee", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1687 + /* "src/tpm_astro.pxi":1687 * * """ * return tpm_astro.zee(start, end, pflag) # <<<<<<<<<<<<<< @@ -26721,20 +39165,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_110zee(PyObject *__pyx_self, PyObject *__p * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(zee(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1687, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1687, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1687, __pyx_L1_error) + __pyx_t_4 = PyFloat_FromDouble(zee(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1657 + * + * + * def zee(start, end, pflag): # <<<<<<<<<<<<<< + * """FK4 and FK5 precession angles. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.zee"); + __Pyx_AddTraceback("tpm.zee", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26742,7 +39193,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_110zee(PyObject *__pyx_self, PyObject *__p return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1690 +/* "src/tpm_astro.pxi":1690 * * * def zeedot(start, end, pflag): # <<<<<<<<<<<<<< @@ -26750,72 +39201,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_110zee(PyObject *__pyx_self, PyObject *__p * */ -static PyObject *__pyx_pf_5pytpm_3tpm_111zeedot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_111zeedot[] = "Rate of change of FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n zd :float\n Rate of change of precession angle for the given time period.\n\n Notes\n -----\n Returns the rate of change of precession angle for the model\n indicated by `pflag` for the time `end`, starting from the time\n `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_111zeedot = {__Pyx_NAMESTR("zeedot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_111zeedot, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_111zeedot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_111zeedot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_223zeedot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_222zeedot[] = "Rate of change of FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n zd :float\n Rate of change of precession angle for the given time period.\n\n Notes\n -----\n Returns the rate of change of precession angle for the model\n indicated by `pflag` for the time `end`, starting from the time\n `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n "; +static PyMethodDef __pyx_mdef_3tpm_223zeedot = {"zeedot", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_223zeedot, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_222zeedot}; +static PyObject *__pyx_pw_3tpm_223zeedot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("zeedot"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("zeedot (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zeedot", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zeedot", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zeedot", 1, 3, 3, 1); __PYX_ERR(2, 1690, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zeedot", 1, 3, 3, 2); __PYX_ERR(2, 1690, __pyx_L3_error) + } } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "zeedot") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeedot") < 0)) __PYX_ERR(2, 1690, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("zeedot", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("zeedot", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1690, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.zeedot"); + __Pyx_AddTraceback("tpm.zeedot", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_222zeedot(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_222zeedot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("zeedot", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1720 + /* "src/tpm_astro.pxi":1720 * See TPM manual for definition of these constants. * """ * return tpm_astro.zeedot(start, end, pflag) # <<<<<<<<<<<<<< @@ -26823,20 +39298,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_111zeedot(PyObject *__pyx_self, PyObject * * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(zeedot(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1720, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1720, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1720, __pyx_L1_error) + __pyx_t_4 = PyFloat_FromDouble(zeedot(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1690 + * + * + * def zeedot(start, end, pflag): # <<<<<<<<<<<<<< + * """Rate of change of FK4 and FK5 precession angles. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.zeedot"); + __Pyx_AddTraceback("tpm.zeedot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26844,7 +39326,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_111zeedot(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1723 +/* "src/tpm_astro.pxi":1723 * * * def zeta(start, end, pflag): # <<<<<<<<<<<<<< @@ -26852,72 +39334,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_111zeedot(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_112zeta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_112zeta[] = "FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n zd :float\n Precession angle for the given time period.\n\n Notes\n -----\n Returns the precession angle for the model indicated by `pflag`\n for the time `end`, starting from the time `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_112zeta = {__Pyx_NAMESTR("zeta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_112zeta, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_112zeta)}; -static PyObject *__pyx_pf_5pytpm_3tpm_112zeta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_225zeta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_224zeta[] = "FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n zd :float\n Precession angle for the given time period.\n\n Notes\n -----\n Returns the precession angle for the model indicated by `pflag`\n for the time `end`, starting from the time `start`.\n\n The values for `pflag` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_225zeta = {"zeta", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_225zeta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_224zeta}; +static PyObject *__pyx_pw_3tpm_225zeta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("zeta"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("zeta (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zeta", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zeta", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zeta", 1, 3, 3, 1); __PYX_ERR(2, 1723, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zeta", 1, 3, 3, 2); __PYX_ERR(2, 1723, __pyx_L3_error) + } } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "zeta") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zeta") < 0)) __PYX_ERR(2, 1723, __pyx_L3_error) + } + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("zeta", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("zeta", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1723, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.zeta"); + __Pyx_AddTraceback("tpm.zeta", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_224zeta(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_224zeta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("zeta", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1753 + /* "src/tpm_astro.pxi":1753 * * """ * return tpm_astro.zeta(start, end, pflag) # <<<<<<<<<<<<<< @@ -26925,20 +39431,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_112zeta(PyObject *__pyx_self, PyObject *__ * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(zeta(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1753, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1753, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1753, __pyx_L1_error) + __pyx_t_4 = PyFloat_FromDouble(zeta(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1753, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; + /* "src/tpm_astro.pxi":1723 + * + * + * def zeta(start, end, pflag): # <<<<<<<<<<<<<< + * """FK4 and FK5 precession angles. + * + */ + + /* function exit code */ + __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.zeta"); + __Pyx_AddTraceback("tpm.zeta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -26946,7 +39459,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_112zeta(PyObject *__pyx_self, PyObject *__ return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1756 +/* "src/tpm_astro.pxi":1756 * * * def zetadot(start, end, pflag): # <<<<<<<<<<<<<< @@ -26954,72 +39467,96 @@ static PyObject *__pyx_pf_5pytpm_3tpm_112zeta(PyObject *__pyx_self, PyObject *__ * */ -static PyObject *__pyx_pf_5pytpm_3tpm_113zetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_113zetadot[] = "Rate of change of FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n zd :float\n Rate of change of precession angle for the given time period.\n\n Notes\n -----\n Returns the rate of change of precession angle for the model\n indicated by ``pflag`` for the time ``end``, starting from the time\n ``start``.\n\n The values for ``pflag`` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_113zetadot = {__Pyx_NAMESTR("zetadot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_113zetadot, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_113zetadot)}; -static PyObject *__pyx_pf_5pytpm_3tpm_113zetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_227zetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_226zetadot[] = "Rate of change of FK4 and FK5 precession angles.\n\n Parameters\n ----------\n start : float\n Starting (initial) time as a Julian date.\n end : float\n Ending (final) time as a Julian date.\n pflag : int\n The model to use.\n\n Returns\n -------\n zd :float\n Rate of change of precession angle for the given time period.\n\n Notes\n -----\n Returns the rate of change of precession angle for the model\n indicated by ``pflag`` for the time ``end``, starting from the time\n ``start``.\n\n The values for ``pflag`` can be::\n\n PRECESS_NEWCOMB, PRECESS_ANDOYER, PRECESS_KINOSHITA,\n PRECESS_LIESKE and PRECESS_FK5.\n\n See TPM manual for definition of these constants.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_227zetadot = {"zetadot", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_227zetadot, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_226zetadot}; +static PyObject *__pyx_pw_3tpm_227zetadot(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_start = 0; PyObject *__pyx_v_end = 0; PyObject *__pyx_v_pflag = 0; - PyObject *__pyx_r = NULL; - double __pyx_t_1; - double __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__start,&__pyx_n_s__end,&__pyx_n_s__pflag,0}; - __Pyx_RefNannySetupContext("zetadot"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("zetadot (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_start,&__pyx_n_s_end,&__pyx_n_s_pflag,0}; PyObject* values[3] = {0,0,0}; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__start); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__end); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zetadot", 1, 3, 3, 1); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); + CYTHON_FALLTHROUGH; + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_start)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_end)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zetadot", 1, 3, 3, 1); __PYX_ERR(2, 1756, __pyx_L3_error) + } + CYTHON_FALLTHROUGH; + case 2: + if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pflag)) != 0)) kw_args--; + else { + __Pyx_RaiseArgtupleInvalid("zetadot", 1, 3, 3, 2); __PYX_ERR(2, 1756, __pyx_L3_error) + } } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__pflag); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("zetadot", 1, 3, 3, 2); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "zetadot") < 0)) __PYX_ERR(2, 1756, __pyx_L3_error) } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "zetadot") < 0)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + values[2] = PyTuple_GET_ITEM(__pyx_args, 2); } __pyx_v_start = values[0]; __pyx_v_end = values[1]; __pyx_v_pflag = values[2]; - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - __pyx_v_start = PyTuple_GET_ITEM(__pyx_args, 0); - __pyx_v_end = PyTuple_GET_ITEM(__pyx_args, 1); - __pyx_v_pflag = PyTuple_GET_ITEM(__pyx_args, 2); } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("zetadot", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("zetadot", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1756, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.zetadot"); + __Pyx_AddTraceback("tpm.zetadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_226zetadot(__pyx_self, __pyx_v_start, __pyx_v_end, __pyx_v_pflag); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_226zetadot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_start, PyObject *__pyx_v_end, PyObject *__pyx_v_pflag) { + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + double __pyx_t_2; + int __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("zetadot", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1787 + /* "src/tpm_astro.pxi":1787 * * """ * return tpm_astro.zetadot(start, end, pflag) # <<<<<<<<<<<<<< @@ -27027,20 +39564,27 @@ static PyObject *__pyx_pf_5pytpm_3tpm_113zetadot(PyObject *__pyx_self, PyObject * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = __Pyx_PyInt_AsInt(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(zetadot(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_start); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1787, __pyx_L1_error) + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_end); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1787, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_v_pflag); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 1787, __pyx_L1_error) + __pyx_t_4 = PyFloat_FromDouble(zetadot(__pyx_t_1, __pyx_t_2, __pyx_t_3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1756 + * + * + * def zetadot(start, end, pflag): # <<<<<<<<<<<<<< + * """Rate of change of FK4 and FK5 precession angles. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.zetadot"); + __Pyx_AddTraceback("tpm.zetadot", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -27048,7 +39592,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_113zetadot(PyObject *__pyx_self, PyObject return __pyx_r; } -/* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1790 +/* "src/tpm_astro.pxi":1790 * * * def nutations(tdt): # <<<<<<<<<<<<<< @@ -27056,21 +39600,36 @@ static PyObject *__pyx_pf_5pytpm_3tpm_113zetadot(PyObject *__pyx_self, PyObject * */ -static PyObject *__pyx_pf_5pytpm_3tpm_114nutations(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_114nutations[] = "Nutations in longitude and obliquity.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TDT).\n\n Returns\n -------\n n : 2-element tuple of floats\n The first element is the nutation in longitude and the second\n element is the nutation in obliquity. Both are in radians.\n\n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_114nutations = {__Pyx_NAMESTR("nutations"), (PyCFunction)__pyx_pf_5pytpm_3tpm_114nutations, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_114nutations)}; -static PyObject *__pyx_pf_5pytpm_3tpm_114nutations(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_229nutations(PyObject *__pyx_self, PyObject *__pyx_v_tdt); /*proto*/ +static char __pyx_doc_3tpm_228nutations[] = "Nutations in longitude and obliquity.\n\n Parameters\n ----------\n tdt : float\n Terrestrial Dynamic Time (same as TDT).\n\n Returns\n -------\n n : 2-element tuple of floats\n The first element is the nutation in longitude and the second\n element is the nutation in obliquity. Both are in radians.\n\n "; +static PyMethodDef __pyx_mdef_3tpm_229nutations = {"nutations", (PyCFunction)__pyx_pw_3tpm_229nutations, METH_O, __pyx_doc_3tpm_228nutations}; +static PyObject *__pyx_pw_3tpm_229nutations(PyObject *__pyx_self, PyObject *__pyx_v_tdt) { + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("nutations (wrapper)", 0); + __pyx_r = __pyx_pf_3tpm_228nutations(__pyx_self, ((PyObject *)__pyx_v_tdt)); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_228nutations(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tdt) { double __pyx_v_delta_phi; double __pyx_v_delta_eps; PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations double __pyx_t_1; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; - __Pyx_RefNannySetupContext("nutations"); - __pyx_self = __pyx_self; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("nutations", 0); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1806 + /* "src/tpm_astro.pxi":1806 * """ * cdef double delta_phi, delta_eps * delta_phi = 0.0 # <<<<<<<<<<<<<< @@ -27079,7 +39638,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_114nutations(PyObject *__pyx_self, PyObjec */ __pyx_v_delta_phi = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1807 + /* "src/tpm_astro.pxi":1807 * cdef double delta_phi, delta_eps * delta_phi = 0.0 * delta_eps = 0.0 # <<<<<<<<<<<<<< @@ -27088,46 +39647,53 @@ static PyObject *__pyx_pf_5pytpm_3tpm_114nutations(PyObject *__pyx_self, PyObjec */ __pyx_v_delta_eps = 0.0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1808 + /* "src/tpm_astro.pxi":1808 * delta_phi = 0.0 * delta_eps = 0.0 * tpm_astro.nutations(tdt, &delta_phi, &delta_eps) # <<<<<<<<<<<<<< * return (delta_phi, delta_eps) * */ - __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __pyx_PyFloat_AsDouble(__pyx_v_tdt); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(2, 1808, __pyx_L1_error) nutations(__pyx_t_1, (&__pyx_v_delta_phi), (&__pyx_v_delta_eps)); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1809 + /* "src/tpm_astro.pxi":1809 * delta_eps = 0.0 * tpm_astro.nutations(tdt, &delta_phi, &delta_eps) * return (delta_phi, delta_eps) # <<<<<<<<<<<<<< * */ __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = PyFloat_FromDouble(__pyx_v_delta_phi); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1809; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(__pyx_v_delta_phi); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1809, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyFloat_FromDouble(__pyx_v_delta_eps); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1809; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyFloat_FromDouble(__pyx_v_delta_eps); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1809, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1809; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); + __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1809, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); + __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "src/tpm_astro.pxi":1790 + * + * + * def nutations(tdt): # <<<<<<<<<<<<<< + * """Nutations in longitude and obliquity. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.nutations"); + __Pyx_AddTraceback("tpm.nutations", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -27135,7 +39701,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_114nutations(PyObject *__pyx_self, PyObjec return __pyx_r; } -/* "src/tpm.pyx":13 +/* "tpm.pyx":13 * * # Some functions that use features in TPM. * def nalpha(alpha, degrees=True): # <<<<<<<<<<<<<< @@ -27143,85 +39709,109 @@ static PyObject *__pyx_pf_5pytpm_3tpm_114nutations(PyObject *__pyx_self, PyObjec * */ -static PyObject *__pyx_pf_5pytpm_3tpm_115nalpha(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_115nalpha[] = "Normalize angle in the x-y plane, i.e., longitudinal angle.\n\n Normalize angles to the range [0, 360.0) degrees or [0, 2\317\200)\n radians. This is useful for longitudinal angles, such as right\n ascension and longitude.\n\n Parameters\n ----------\n alpha : float\n Angle in the x-y plane, such as RA and Longitude.\n degrees : bool\n If True then `alpha` is in degrees (default), else it is in radians.\n\n Returns\n -------\n nalpha : float\n Angle normalized into the range [0, 360) or [0, 2\317\200).\n\n See also\n --------\n r2r, h2h\n \n Notes\n -----\n For normalizing `alpha` and `delta` in `V6S` or `V3SP`\n objects, use the `nalpha` and `ndelta` attributes; they store\n properly normalized values, taking into account the sign of `r`.\n This function is for situations were we have a scalar angle and\n don't want to create a `V6S` or `V6SP` object just for\n normalizing the angle.\n \n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_115nalpha = {__Pyx_NAMESTR("nalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_115nalpha, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_115nalpha)}; -static PyObject *__pyx_pf_5pytpm_3tpm_115nalpha(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_231nalpha(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_230nalpha[] = "Normalize angle in the x-y plane, i.e., longitudinal angle.\n\n Normalize angles to the range [0, 360.0) degrees or [0, 2\317\200)\n radians. This is useful for longitudinal angles, such as right\n ascension and longitude.\n\n Parameters\n ----------\n alpha : float\n Angle in the x-y plane, such as RA and Longitude.\n degrees : bool\n If True then `alpha` is in degrees (default), else it is in radians.\n\n Returns\n -------\n nalpha : float\n Angle normalized into the range [0, 360) or [0, 2\317\200).\n\n See also\n --------\n r2r, h2h\n \n Notes\n -----\n For normalizing `alpha` and `delta` in `V6S` or `V3SP`\n objects, use the `nalpha` and `ndelta` attributes; they store\n properly normalized values, taking into account the sign of `r`.\n This function is for situations were we have a scalar angle and\n don't want to create a `V6S` or `V6SP` object just for\n normalizing the angle.\n \n "; +static PyMethodDef __pyx_mdef_3tpm_231nalpha = {"nalpha", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_231nalpha, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_230nalpha}; +static PyObject *__pyx_pw_3tpm_231nalpha(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_alpha = 0; PyObject *__pyx_v_degrees = 0; - double __pyx_v_x; - PyObject *__pyx_r = NULL; - int __pyx_t_1; - double __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__alpha,&__pyx_n_s__degrees,0}; - __Pyx_RefNannySetupContext("nalpha"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("nalpha (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_alpha,&__pyx_n_s_degrees,0}; PyObject* values[2] = {0,0}; - values[1] = __pyx_k_81; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__alpha); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__degrees); - if (value) { values[1] = value; kw_args--; } + values[1] = ((PyObject *)Py_True); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_alpha)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_degrees); + if (value) { values[1] = value; kw_args--; } + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "nalpha") < 0)) __PYX_ERR(5, 13, __pyx_L3_error) + } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "nalpha") < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } __pyx_v_alpha = values[0]; __pyx_v_degrees = values[1]; - } else { - __pyx_v_degrees = __pyx_k_81; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: __pyx_v_degrees = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_alpha = PyTuple_GET_ITEM(__pyx_args, 0); - break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("nalpha", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[4]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("nalpha", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(5, 13, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.nalpha"); + __Pyx_AddTraceback("tpm.nalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_230nalpha(__pyx_self, __pyx_v_alpha, __pyx_v_degrees); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_230nalpha(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_alpha, PyObject *__pyx_v_degrees) { + double __pyx_v_x; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_t_1; + double __pyx_t_2; + PyObject *__pyx_t_3 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("nalpha", 0); - /* "src/tpm.pyx":46 + /* "tpm.pyx":46 * * """ * if degrees: # <<<<<<<<<<<<<< * x = tpm_times.d2r(alpha) * x = tpm_times.r2r(x) */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_degrees); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_degrees); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(5, 46, __pyx_L1_error) if (__pyx_t_1) { - /* "src/tpm.pyx":47 + /* "tpm.pyx":47 * """ * if degrees: * x = tpm_times.d2r(alpha) # <<<<<<<<<<<<<< * x = tpm_times.r2r(x) * return tpm_times.r2d(x) */ - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(5, 47, __pyx_L1_error) __pyx_v_x = d2r(__pyx_t_2); - /* "src/tpm.pyx":48 + /* "tpm.pyx":48 * if degrees: * x = tpm_times.d2r(alpha) * x = tpm_times.r2r(x) # <<<<<<<<<<<<<< @@ -27230,7 +39820,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_115nalpha(PyObject *__pyx_self, PyObject * */ __pyx_v_x = r2r(__pyx_v_x); - /* "src/tpm.pyx":49 + /* "tpm.pyx":49 * x = tpm_times.d2r(alpha) * x = tpm_times.r2r(x) * return tpm_times.r2d(x) # <<<<<<<<<<<<<< @@ -27238,37 +39828,50 @@ static PyObject *__pyx_pf_5pytpm_3tpm_115nalpha(PyObject *__pyx_self, PyObject * * return tpm_times.r2r(alpha) */ __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyFloat_FromDouble(r2d(__pyx_v_x)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyFloat_FromDouble(r2d(__pyx_v_x)); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; - goto __pyx_L6; + + /* "tpm.pyx":46 + * + * """ + * if degrees: # <<<<<<<<<<<<<< + * x = tpm_times.d2r(alpha) + * x = tpm_times.r2r(x) + */ } - /*else*/ { - /* "src/tpm.pyx":51 + /* "tpm.pyx":51 * return tpm_times.r2d(x) * else: * return tpm_times.r2r(alpha) # <<<<<<<<<<<<<< * * def ndelta(delta, degrees=True): */ + /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyFloat_FromDouble(r2r(__pyx_t_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __pyx_PyFloat_AsDouble(__pyx_v_alpha); if (unlikely((__pyx_t_2 == (double)-1) && PyErr_Occurred())) __PYX_ERR(5, 51, __pyx_L1_error) + __pyx_t_3 = PyFloat_FromDouble(r2r(__pyx_t_2)); if (unlikely(!__pyx_t_3)) __PYX_ERR(5, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; } - __pyx_L6:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "tpm.pyx":13 + * + * # Some functions that use features in TPM. + * def nalpha(alpha, degrees=True): # <<<<<<<<<<<<<< + * """Normalize angle in the x-y plane, i.e., longitudinal angle. + * + */ + + /* function exit code */ __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("pytpm.tpm.nalpha"); + __Pyx_AddTraceback("tpm.nalpha", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -27276,7 +39879,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_115nalpha(PyObject *__pyx_self, PyObject * return __pyx_r; } -/* "src/tpm.pyx":53 +/* "tpm.pyx":53 * return tpm_times.r2r(alpha) * * def ndelta(delta, degrees=True): # <<<<<<<<<<<<<< @@ -27284,66 +39887,90 @@ static PyObject *__pyx_pf_5pytpm_3tpm_115nalpha(PyObject *__pyx_self, PyObject * * */ -static PyObject *__pyx_pf_5pytpm_3tpm_116ndelta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_5pytpm_3tpm_116ndelta[] = "Normalize angle out of the x-y plane, i.e., latitudinal angle.\n\n This function takes an angle and normalizes it into the range [-90,\n 90] if it is in degrees and into the range [-\317\200/2, \317\200/2] if it is in\n radians. This is useful for angles such as declination and\n latitude.\n\n Parameters\n ----------\n alpha : float\n Angle out of the x-y plane such as Dec.\n degrees: bool\n If True then `alpha` in in degrees (default), else it is in radians.\n\n Returns\n -------\n ndelta : float\n Angle normalized into the range [-90, 90] or [-\317\200/2, \317\200/2].\n\n See also\n --------\n fmt_delta\n \n Notes\n -----\n For normalizing `alpha` and `delta` in `V6S` or `V3SP`\n objects, use the `nalpha` and `ndelta` attributes; they store\n properly normalized values, taking into account the sign of `r`.\n This function is for situations were we have a scalar angle and\n don't want to create a `V6S` or `V6SP` object just for\n normalizing the angle.\n \n "; -static PyMethodDef __pyx_mdef_5pytpm_3tpm_116ndelta = {__Pyx_NAMESTR("ndelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_116ndelta, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_116ndelta)}; -static PyObject *__pyx_pf_5pytpm_3tpm_116ndelta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { +/* Python wrapper */ +static PyObject *__pyx_pw_3tpm_233ndelta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ +static char __pyx_doc_3tpm_232ndelta[] = "Normalize angle out of the x-y plane, i.e., latitudinal angle.\n\n This function takes an angle and normalizes it into the range [-90,\n 90] if it is in degrees and into the range [-\317\200/2, \317\200/2] if it is in\n radians. This is useful for angles such as declination and\n latitude.\n\n Parameters\n ----------\n alpha : float\n Angle out of the x-y plane such as Dec.\n degrees: bool\n If True then `alpha` in in degrees (default), else it is in radians.\n\n Returns\n -------\n ndelta : float\n Angle normalized into the range [-90, 90] or [-\317\200/2, \317\200/2].\n\n See also\n --------\n fmt_delta\n \n Notes\n -----\n For normalizing `alpha` and `delta` in `V6S` or `V3SP`\n objects, use the `nalpha` and `ndelta` attributes; they store\n properly normalized values, taking into account the sign of `r`.\n This function is for situations were we have a scalar angle and\n don't want to create a `V6S` or `V6SP` object just for\n normalizing the angle.\n \n "; +static PyMethodDef __pyx_mdef_3tpm_233ndelta = {"ndelta", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3tpm_233ndelta, METH_VARARGS|METH_KEYWORDS, __pyx_doc_3tpm_232ndelta}; +static PyObject *__pyx_pw_3tpm_233ndelta(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_delta = 0; PyObject *__pyx_v_degrees = 0; - V3 __pyx_v_v3; - PyObject *__pyx_r = NULL; - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - double __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__delta,&__pyx_n_s__degrees,0}; - __Pyx_RefNannySetupContext("ndelta"); - __pyx_self = __pyx_self; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args = PyDict_Size(__pyx_kwds); + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("ndelta (wrapper)", 0); + { + static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_delta,&__pyx_n_s_degrees,0}; PyObject* values[2] = {0,0}; - values[1] = __pyx_k_82; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__delta); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - if (kw_args > 0) { - PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__degrees); - if (value) { values[1] = value; kw_args--; } + values[1] = ((PyObject *)Py_True); + if (unlikely(__pyx_kwds)) { + Py_ssize_t kw_args; + const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); + switch (pos_args) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = PyDict_Size(__pyx_kwds); + switch (pos_args) { + case 0: + if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_delta)) != 0)) kw_args--; + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (kw_args > 0) { + PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_degrees); + if (value) { values[1] = value; kw_args--; } + } + } + if (unlikely(kw_args > 0)) { + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "ndelta") < 0)) __PYX_ERR(5, 53, __pyx_L3_error) + } + } else { + switch (PyTuple_GET_SIZE(__pyx_args)) { + case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); + break; + default: goto __pyx_L5_argtuple_error; } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "ndelta") < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } __pyx_v_delta = values[0]; __pyx_v_degrees = values[1]; - } else { - __pyx_v_degrees = __pyx_k_82; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: __pyx_v_degrees = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: __pyx_v_delta = PyTuple_GET_ITEM(__pyx_args, 0); - break; - default: goto __pyx_L5_argtuple_error; - } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("ndelta", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[4]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L3_error;} + __Pyx_RaiseArgtupleInvalid("ndelta", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(5, 53, __pyx_L3_error) __pyx_L3_error:; - __Pyx_AddTraceback("pytpm.tpm.ndelta"); + __Pyx_AddTraceback("tpm.ndelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_3tpm_232ndelta(__pyx_self, __pyx_v_delta, __pyx_v_degrees); + + /* function exit code */ + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_3tpm_232ndelta(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_delta, PyObject *__pyx_v_degrees) { + V3 __pyx_v_v3; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + double __pyx_t_1; + int __pyx_t_2; + double __pyx_t_3; + PyObject *__pyx_t_4 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("ndelta", 0); - /* "src/tpm.pyx":89 + /* "tpm.pyx":89 * # Create a V3 object and pass it to the v3delta function. * cdef tpm_vec.V3 v3 * v3.v[0] = 1.0 # <<<<<<<<<<<<<< @@ -27352,7 +39979,7 @@ static PyObject *__pyx_pf_5pytpm_3tpm_116ndelta(PyObject *__pyx_self, PyObject * */ (__pyx_v_v3.v[0]) = 1.0; - /* "src/tpm.pyx":90 + /* "tpm.pyx":90 * cdef tpm_vec.V3 v3 * v3.v[0] = 1.0 * v3.v[1] = tpm_times.M_PI # Can be any value. # <<<<<<<<<<<<<< @@ -27361,39 +39988,34 @@ static PyObject *__pyx_pf_5pytpm_3tpm_116ndelta(PyObject *__pyx_self, PyObject * */ (__pyx_v_v3.v[1]) = M_PI; - /* "src/tpm.pyx":91 + /* "tpm.pyx":91 * v3.v[0] = 1.0 * v3.v[1] = tpm_times.M_PI # Can be any value. * v3.v[2] = tpm_times.d2r(delta) if degrees else delta # <<<<<<<<<<<<<< * if degrees: * return tpm_times.r2d(tpm_vec.v3delta(v3)) */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_degrees); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_degrees); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(5, 91, __pyx_L1_error) if (__pyx_t_2) { - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = PyFloat_FromDouble(d2r(__pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = __pyx_t_4; - __pyx_t_4 = 0; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(5, 91, __pyx_L1_error) + __pyx_t_1 = d2r(__pyx_t_3); } else { - __Pyx_INCREF(__pyx_v_delta); - __pyx_t_1 = __pyx_v_delta; + __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_v_delta); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) __PYX_ERR(5, 91, __pyx_L1_error) + __pyx_t_1 = __pyx_t_3; } - __pyx_t_3 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_3 == (double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - (__pyx_v_v3.v[2]) = __pyx_t_3; + (__pyx_v_v3.v[2]) = __pyx_t_1; - /* "src/tpm.pyx":92 + /* "tpm.pyx":92 * v3.v[1] = tpm_times.M_PI # Can be any value. * v3.v[2] = tpm_times.d2r(delta) if degrees else delta * if degrees: # <<<<<<<<<<<<<< * return tpm_times.r2d(tpm_vec.v3delta(v3)) * else: */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_degrees); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_degrees); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(5, 92, __pyx_L1_error) if (__pyx_t_2) { - /* "src/tpm.pyx":93 + /* "tpm.pyx":93 * v3.v[2] = tpm_times.d2r(delta) if degrees else delta * if degrees: * return tpm_times.r2d(tpm_vec.v3delta(v3)) # <<<<<<<<<<<<<< @@ -27401,35 +40023,47 @@ static PyObject *__pyx_pf_5pytpm_3tpm_116ndelta(PyObject *__pyx_self, PyObject * * return tpm_vec.v3delta(v3) */ __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(r2d(v3delta(__pyx_v_v3))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __pyx_t_4 = PyFloat_FromDouble(r2d(v3delta(__pyx_v_v3))); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; goto __pyx_L0; - goto __pyx_L6; + + /* "tpm.pyx":92 + * v3.v[1] = tpm_times.M_PI # Can be any value. + * v3.v[2] = tpm_times.d2r(delta) if degrees else delta + * if degrees: # <<<<<<<<<<<<<< + * return tpm_times.r2d(tpm_vec.v3delta(v3)) + * else: + */ } - /*else*/ { - /* "src/tpm.pyx":95 + /* "tpm.pyx":95 * return tpm_times.r2d(tpm_vec.v3delta(v3)) * else: * return tpm_vec.v3delta(v3) # <<<<<<<<<<<<<< */ + /*else*/ { __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyFloat_FromDouble(v3delta(__pyx_v_v3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; + __pyx_t_4 = PyFloat_FromDouble(v3delta(__pyx_v_v3)); if (unlikely(!__pyx_t_4)) __PYX_ERR(5, 95, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_r = __pyx_t_4; + __pyx_t_4 = 0; goto __pyx_L0; } - __pyx_L6:; - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; + /* "tpm.pyx":53 + * return tpm_times.r2r(alpha) + * + * def ndelta(delta, degrees=True): # <<<<<<<<<<<<<< + * """Normalize angle out of the x-y plane, i.e., latitudinal angle. + * + */ + + /* function exit code */ __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("pytpm.tpm.ndelta"); + __Pyx_AddTraceback("tpm.ndelta", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); @@ -27437,39 +40071,52 @@ static PyObject *__pyx_pf_5pytpm_3tpm_116ndelta(PyObject *__pyx_self, PyObject * return __pyx_r; } -static PyObject *__pyx_tp_new_5pytpm_3tpm_DMS(PyTypeObject *t, PyObject *a, PyObject *k) { - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - if (__pyx_pf_5pytpm_3tpm_3DMS___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static PyObject *__pyx_tp_new_3tpm_DMS(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + if (unlikely(__pyx_pw_3tpm_3DMS_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_DMS(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_DMS(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_DMS[] = { - {__Pyx_NAMESTR("__getdd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_2__getdd, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_3__setdd, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_4__getmm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_5__setmm, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_6__getss, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_7__setss, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("to_hms"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_12to_hms, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3DMS_12to_hms)}, - {__Pyx_NAMESTR("normalize"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_13normalize, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3DMS_13normalize)}, - {__Pyx_NAMESTR("to_degrees"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_14to_degrees, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3DMS_14to_degrees)}, - {__Pyx_NAMESTR("to_hours"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_15to_hours, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3DMS_15to_hours)}, - {__Pyx_NAMESTR("to_radians"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3DMS_16to_radians, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3DMS_16to_radians)}, +static PyMethodDef __pyx_methods_3tpm_DMS[] = { + {"__getdd", (PyCFunction)__pyx_pw_3tpm_3DMS_5__getdd, METH_NOARGS, 0}, + {"__setdd", (PyCFunction)__pyx_pw_3tpm_3DMS_7__setdd, METH_O, 0}, + {"__getmm", (PyCFunction)__pyx_pw_3tpm_3DMS_9__getmm, METH_NOARGS, 0}, + {"__setmm", (PyCFunction)__pyx_pw_3tpm_3DMS_11__setmm, METH_O, 0}, + {"__getss", (PyCFunction)__pyx_pw_3tpm_3DMS_13__getss, METH_NOARGS, 0}, + {"__setss", (PyCFunction)__pyx_pw_3tpm_3DMS_15__setss, METH_O, 0}, + {"to_hms", (PyCFunction)__pyx_pw_3tpm_3DMS_25to_hms, METH_NOARGS, __pyx_doc_3tpm_3DMS_24to_hms}, + {"normalize", (PyCFunction)__pyx_pw_3tpm_3DMS_27normalize, METH_NOARGS, __pyx_doc_3tpm_3DMS_26normalize}, + {"to_degrees", (PyCFunction)__pyx_pw_3tpm_3DMS_29to_degrees, METH_NOARGS, __pyx_doc_3tpm_3DMS_28to_degrees}, + {"to_hours", (PyCFunction)__pyx_pw_3tpm_3DMS_31to_hours, METH_NOARGS, __pyx_doc_3tpm_3DMS_30to_hours}, + {"to_radians", (PyCFunction)__pyx_pw_3tpm_3DMS_33to_radians, METH_NOARGS, __pyx_doc_3tpm_3DMS_32to_radians}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_3DMS_35__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_3DMS_37__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_DMS = { - __pyx_pf_5pytpm_3tpm_3DMS_10__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_3DMS_11__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_3DMS_21__add__, /*nb_add*/ + __pyx_pw_3tpm_3DMS_23__sub__, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -27485,7 +40132,7 @@ static PyNumberMethods __pyx_tp_as_number_DMS = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -27495,16 +40142,16 @@ static PyNumberMethods __pyx_tp_as_number_DMS = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -27518,84 +40165,54 @@ static PyNumberMethods __pyx_tp_as_number_DMS = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_DMS = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_DMS = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_DMS = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_DMS = { +static PyTypeObject __pyx_type_3tpm_DMS = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.DMS"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_DMS), /*tp_basicsize*/ + "tpm.DMS", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_DMS), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_DMS, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_DMS, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ #endif - __pyx_pf_5pytpm_3tpm_3DMS_8__repr__, /*tp_repr*/ + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + __pyx_pw_3tpm_3DMS_17__repr__, /*tp_repr*/ &__pyx_tp_as_number_DMS, /*tp_as_number*/ - &__pyx_tp_as_sequence_DMS, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_DMS, /*tp_as_mapping*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_3DMS_9__str__, /*tp_str*/ + __pyx_pw_3tpm_3DMS_19__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_DMS, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Angle in degrees, arc-minutes and arc-seconds.\n\n A class to represent angle in degrees, arc-minutes and\n arc-seconds. It can be initialized using angle in other units and\n can be converted into other units. It can be initialized with angle\n in radians, `r`, angle in hours, `h`, and also using degrees,\n arc-minutes and arc-seconds of the angle, `dd`, `mm` and `ss`,\n respectively. If `r` is given then its value is used, and others\n are ignored. If `h` is present, then it is preferred over `dd`,\n `mm` and `ss`. All of `dd`, `mm` and `ss` are used, if they are\n present.\n\n .. warning:: In this class, the negative sign is used for each part\n of the angle separately. This is different from the\n usual case in sexagesimal notation where the sign\n applies to the whole angle. Also, after calling the\n normalize method the sign gets assigned to the degrees\n part. Hence this class is not recommended for use\n outside PyTPM.\n\n Parameters\n ----------\n r : float, optional\n Angle in radians\n h : float, optional\n Angle in hours.\n dd : float, int, optional\n Angle in degrees, or the degrees part.\n mm : float, int, optional\n Angle in arc-minutes or the arc-minutes part of angle.\n ss : float, int, optional\n Angle in arc-seconds or the arc-seconds part of angle.\n\n Attributes\n ----------\n dd : float\n Hours part of the angle.\n mm : float\n Minutes part of the angle.\n ss : float\n Seconds part of the angle.\n\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Angle in degrees, arc-minutes and arc-seconds.\n\n A class to represent angle in degrees, arc-minutes and\n arc-seconds. It can be initialized using angle in other units and\n can be converted into other units. It can be initialized with angle\n in radians, `r`, angle in hours, `h`, and also using degrees,\n arc-minutes and arc-seconds of the angle, `dd`, `mm` and `ss`,\n respectively. If `r` is given then its value is used, and others\n are ignored. If `h` is present, then it is preferred over `dd`,\n `mm` and `ss`. All of `dd`, `mm` and `ss` are used, if they are\n present.\n\n .. warning:: In this class, the negative sign is used for each part\n of the angle separately. This is different from the\n usual case in sexagesimal notation where the sign\n applies to the whole angle. Also, after calling the\n normalize method the sign gets assigned to the degrees\n part. Hence this class is not recommended for use\n outside PyTPM.\n\n Parameters\n ----------\n r : float, optional\n Angle in radians\n h : float, optional\n Angle in hours.\n dd : float, int, optional\n Angle in degrees, or the degrees part.\n mm : float, int, optional\n Angle in arc-minutes or the arc-minutes part of angle.\n ss : float, int, optional\n Angle in arc-seconds or the arc-seconds part of angle.\n\n Attributes\n ----------\n dd : float\n Hours part of the angle.\n mm : float\n Minutes part of the angle.\n ss : float\n Seconds part of the angle.\n\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_DMS, /*tp_methods*/ + __pyx_methods_3tpm_DMS, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -27603,9 +40220,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_DMS = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_3DMS_1__init__, /*tp_init*/ + __pyx_pw_3tpm_3DMS_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_DMS, /*tp_new*/ + __pyx_tp_new_3tpm_DMS, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27614,44 +40231,64 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_DMS = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static PyObject *__pyx_tp_new_5pytpm_3tpm_HMS(PyTypeObject *t, PyObject *a, PyObject *k) { - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - if (__pyx_pf_5pytpm_3tpm_3HMS___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static PyObject *__pyx_tp_new_3tpm_HMS(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + if (unlikely(__pyx_pw_3tpm_3HMS_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_HMS(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_HMS(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_HMS[] = { - {__Pyx_NAMESTR("__gethh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_2__gethh, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__sethh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_3__sethh, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_4__getmm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_5__setmm, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_6__getss, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_7__setss, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("to_dms"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_12to_dms, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3HMS_12to_dms)}, - {__Pyx_NAMESTR("normalize"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_13normalize, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3HMS_13normalize)}, - {__Pyx_NAMESTR("to_hours"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_14to_hours, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3HMS_14to_hours)}, - {__Pyx_NAMESTR("to_degrees"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_15to_degrees, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3HMS_15to_degrees)}, - {__Pyx_NAMESTR("to_radians"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3HMS_16to_radians, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3HMS_16to_radians)}, +static PyMethodDef __pyx_methods_3tpm_HMS[] = { + {"__gethh", (PyCFunction)__pyx_pw_3tpm_3HMS_5__gethh, METH_NOARGS, 0}, + {"__sethh", (PyCFunction)__pyx_pw_3tpm_3HMS_7__sethh, METH_O, 0}, + {"__getmm", (PyCFunction)__pyx_pw_3tpm_3HMS_9__getmm, METH_NOARGS, 0}, + {"__setmm", (PyCFunction)__pyx_pw_3tpm_3HMS_11__setmm, METH_O, 0}, + {"__getss", (PyCFunction)__pyx_pw_3tpm_3HMS_13__getss, METH_NOARGS, 0}, + {"__setss", (PyCFunction)__pyx_pw_3tpm_3HMS_15__setss, METH_O, 0}, + {"to_dms", (PyCFunction)__pyx_pw_3tpm_3HMS_25to_dms, METH_NOARGS, __pyx_doc_3tpm_3HMS_24to_dms}, + {"normalize", (PyCFunction)__pyx_pw_3tpm_3HMS_27normalize, METH_NOARGS, __pyx_doc_3tpm_3HMS_26normalize}, + {"to_hours", (PyCFunction)__pyx_pw_3tpm_3HMS_29to_hours, METH_NOARGS, __pyx_doc_3tpm_3HMS_28to_hours}, + {"to_degrees", (PyCFunction)__pyx_pw_3tpm_3HMS_31to_degrees, METH_NOARGS, __pyx_doc_3tpm_3HMS_30to_degrees}, + {"to_radians", (PyCFunction)__pyx_pw_3tpm_3HMS_33to_radians, METH_NOARGS, __pyx_doc_3tpm_3HMS_32to_radians}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_3HMS_35__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_3HMS_37__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_HMS = { - __pyx_pf_5pytpm_3tpm_3HMS_10__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_3HMS_11__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_3HMS_21__add__, /*nb_add*/ + __pyx_pw_3tpm_3HMS_23__sub__, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -27667,7 +40304,7 @@ static PyNumberMethods __pyx_tp_as_number_HMS = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -27677,16 +40314,16 @@ static PyNumberMethods __pyx_tp_as_number_HMS = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -27700,84 +40337,54 @@ static PyNumberMethods __pyx_tp_as_number_HMS = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_HMS = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_HMS = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_HMS = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_HMS = { +static PyTypeObject __pyx_type_3tpm_HMS = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.HMS"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_HMS), /*tp_basicsize*/ + "tpm.HMS", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_HMS), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_HMS, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_HMS, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ #endif - __pyx_pf_5pytpm_3tpm_3HMS_8__repr__, /*tp_repr*/ + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + __pyx_pw_3tpm_3HMS_17__repr__, /*tp_repr*/ &__pyx_tp_as_number_HMS, /*tp_as_number*/ - &__pyx_tp_as_sequence_HMS, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_HMS, /*tp_as_mapping*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_3HMS_9__str__, /*tp_str*/ + __pyx_pw_3tpm_3HMS_19__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_HMS, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Angle (or time) in hours, minutes and seconds.\n\n This can be initialized using angles in radians, `r`, degrees `dd`,\n and directly providing hours, `hh`, minutes `mm` and seconds `ss`.\n The keyword used in initialization is the first keyword in the\n following order of precedence: `r`, `dd` and then zero or more\n of `hh`, `mm` and `ss`.\n\n Parameters\n ----------\n r : float, optional\n Angle in radians\n dd : float, optional\n Angle in degrees.\n hh : float, int, optional\n Angle in hours, or the hours part.\n mm : float, int, optional\n Angle in minutes or the minutes part of angle.\n ss : float, int, optional\n Angle in seconds or the seconds part of angle.\n\n Attributes\n ----------\n hh : float\n Hours part of the angle.\n mm : float\n Minutes part of the angle.\n ss : float\n Seconds part of the angle.\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Angle (or time) in hours, minutes and seconds.\n\n This can be initialized using angles in radians, `r`, degrees `dd`,\n and directly providing hours, `hh`, minutes `mm` and seconds `ss`.\n The keyword used in initialization is the first keyword in the\n following order of precedence: `r`, `dd` and then zero or more\n of `hh`, `mm` and `ss`.\n\n Parameters\n ----------\n r : float, optional\n Angle in radians\n dd : float, optional\n Angle in degrees.\n hh : float, int, optional\n Angle in hours, or the hours part.\n mm : float, int, optional\n Angle in minutes or the minutes part of angle.\n ss : float, int, optional\n Angle in seconds or the seconds part of angle.\n\n Attributes\n ----------\n hh : float\n Hours part of the angle.\n mm : float\n Minutes part of the angle.\n ss : float\n Seconds part of the angle.\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_HMS, /*tp_methods*/ + __pyx_methods_3tpm_HMS, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -27785,9 +40392,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_HMS = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_3HMS_1__init__, /*tp_init*/ + __pyx_pw_3tpm_3HMS_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_HMS, /*tp_new*/ + __pyx_tp_new_3tpm_HMS, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27796,51 +40403,71 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_HMS = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static PyObject *__pyx_tp_new_5pytpm_3tpm_YMD(PyTypeObject *t, PyObject *a, PyObject *k) { - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - if (__pyx_pf_5pytpm_3tpm_3YMD___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static PyObject *__pyx_tp_new_3tpm_YMD(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + if (unlikely(__pyx_pw_3tpm_3YMD_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_YMD(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_YMD(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_YMD[] = { - {__Pyx_NAMESTR("__gety"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_2__gety, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__sety"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_3__sety, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_4__getm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_5__setm, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getdd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_6__getdd, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_7__setdd, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gethh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_8__gethh, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__sethh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_9__sethh, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_10__getmm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_11__setmm, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_12__getss, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_13__setss, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("normalize"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_17normalize, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3YMD_17normalize)}, - {__Pyx_NAMESTR("to_jd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_18to_jd, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3YMD_18to_jd)}, - {__Pyx_NAMESTR("to_j"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_19to_j, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3YMD_19to_j)}, - {__Pyx_NAMESTR("raw_str"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_20raw_str, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3YMD_20raw_str)}, - {__Pyx_NAMESTR("doy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_21doy, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3YMD_21doy)}, - {__Pyx_NAMESTR("to_year"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3YMD_22to_year, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3YMD_22to_year)}, +static PyMethodDef __pyx_methods_3tpm_YMD[] = { + {"__gety", (PyCFunction)__pyx_pw_3tpm_3YMD_5__gety, METH_NOARGS, 0}, + {"__sety", (PyCFunction)__pyx_pw_3tpm_3YMD_7__sety, METH_O, 0}, + {"__getm", (PyCFunction)__pyx_pw_3tpm_3YMD_9__getm, METH_NOARGS, 0}, + {"__setm", (PyCFunction)__pyx_pw_3tpm_3YMD_11__setm, METH_O, 0}, + {"__getdd", (PyCFunction)__pyx_pw_3tpm_3YMD_13__getdd, METH_NOARGS, 0}, + {"__setdd", (PyCFunction)__pyx_pw_3tpm_3YMD_15__setdd, METH_O, 0}, + {"__gethh", (PyCFunction)__pyx_pw_3tpm_3YMD_17__gethh, METH_NOARGS, 0}, + {"__sethh", (PyCFunction)__pyx_pw_3tpm_3YMD_19__sethh, METH_O, 0}, + {"__getmm", (PyCFunction)__pyx_pw_3tpm_3YMD_21__getmm, METH_NOARGS, 0}, + {"__setmm", (PyCFunction)__pyx_pw_3tpm_3YMD_23__setmm, METH_O, 0}, + {"__getss", (PyCFunction)__pyx_pw_3tpm_3YMD_25__getss, METH_NOARGS, 0}, + {"__setss", (PyCFunction)__pyx_pw_3tpm_3YMD_27__setss, METH_O, 0}, + {"normalize", (PyCFunction)__pyx_pw_3tpm_3YMD_35normalize, METH_NOARGS, __pyx_doc_3tpm_3YMD_34normalize}, + {"to_jd", (PyCFunction)__pyx_pw_3tpm_3YMD_37to_jd, METH_NOARGS, __pyx_doc_3tpm_3YMD_36to_jd}, + {"to_j", (PyCFunction)__pyx_pw_3tpm_3YMD_39to_j, METH_NOARGS, __pyx_doc_3tpm_3YMD_38to_j}, + {"raw_str", (PyCFunction)__pyx_pw_3tpm_3YMD_41raw_str, METH_NOARGS, __pyx_doc_3tpm_3YMD_40raw_str}, + {"doy", (PyCFunction)__pyx_pw_3tpm_3YMD_43doy, METH_NOARGS, __pyx_doc_3tpm_3YMD_42doy}, + {"to_year", (PyCFunction)__pyx_pw_3tpm_3YMD_45to_year, METH_NOARGS, __pyx_doc_3tpm_3YMD_44to_year}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_3YMD_47__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_3YMD_49__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_YMD = { 0, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_3YMD_16__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_3YMD_33__sub__, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -27856,7 +40483,7 @@ static PyNumberMethods __pyx_tp_as_number_YMD = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -27866,16 +40493,16 @@ static PyNumberMethods __pyx_tp_as_number_YMD = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -27889,84 +40516,54 @@ static PyNumberMethods __pyx_tp_as_number_YMD = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_YMD = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_YMD = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_YMD = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_YMD = { +static PyTypeObject __pyx_type_3tpm_YMD = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.YMD"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_YMD), /*tp_basicsize*/ + "tpm.YMD", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_YMD), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_YMD, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_YMD, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ #endif - __pyx_pf_5pytpm_3tpm_3YMD_14__repr__, /*tp_repr*/ + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + __pyx_pw_3tpm_3YMD_29__repr__, /*tp_repr*/ &__pyx_tp_as_number_YMD, /*tp_as_number*/ - &__pyx_tp_as_sequence_YMD, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_YMD, /*tp_as_mapping*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_3YMD_15__str__, /*tp_str*/ + __pyx_pw_3tpm_3YMD_31__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_YMD, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class for representing data-time.\n\n Date and time is represented using (year, month, day, hours,\n minutes and seconds) in the Gregorian calendar. This can be\n initialized in several ways. If `j` is present then other are\n ignored. If `j` is not present then preference is given to `year`,\n and `jdd` in that order. If none of these are present then zero or\n more of the remaining arguments are used.\n\n Parameters\n ----------\n j : float, optional\n Julian date. The calendar date-time will be calculated from\n this.\n year : float, optional\n Year with fractional part.\n ydd : 2-element tuple of floats, optional\n Year and day of the year. Year is in the Gregorian calendar.\n y : int, optional\n Year.\n m : int, optional\n Month.\n dd : float, optional\n Day, which can have a fractional part.\n hh : float, optional\n Hour of the day.\n mm : float, optional\n Minute.\n ss : float, optional\n Second.\n\n Attributes\n ----------\n y : int\n Year.\n m : int\n Month.\n dd : float\n Day.\n hh : float\n Hour.\n mm : float\n Minute.\n ss : float\n Second.\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class for representing data-time.\n\n Date and time is represented using (year, month, day, hours,\n minutes and seconds) in the Gregorian calendar. This can be\n initialized in several ways. If `j` is present then other are\n ignored. If `j` is not present then preference is given to `year`,\n and `jdd` in that order. If none of these are present then zero or\n more of the remaining arguments are used.\n\n Parameters\n ----------\n j : float, optional\n Julian date. The calendar date-time will be calculated from\n this.\n year : float, optional\n Year with fractional part.\n ydd : 2-element tuple of floats, optional\n Year and day of the year. Year is in the Gregorian calendar.\n y : int, optional\n Year.\n m : int, optional\n Month.\n dd : float, optional\n Day, which can have a fractional part.\n hh : float, optional\n Hour of the day.\n mm : float, optional\n Minute.\n ss : float, optional\n Second.\n\n Attributes\n ----------\n y : int\n Year.\n m : int\n Month.\n dd : float\n Day.\n hh : float\n Hour.\n mm : float\n Minute.\n ss : float\n Second.\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_YMD, /*tp_methods*/ + __pyx_methods_3tpm_YMD, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -27974,9 +40571,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_YMD = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_3YMD_1__init__, /*tp_init*/ + __pyx_pw_3tpm_3YMD_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_YMD, /*tp_new*/ + __pyx_tp_new_3tpm_YMD, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -27985,45 +40582,65 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_YMD = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static PyObject *__pyx_tp_new_5pytpm_3tpm_JD(PyTypeObject *t, PyObject *a, PyObject *k) { - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - if (__pyx_pf_5pytpm_3tpm_2JD___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static PyObject *__pyx_tp_new_3tpm_JD(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + if (unlikely(__pyx_pw_3tpm_2JD_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_JD(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_JD(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_JD[] = { - {__Pyx_NAMESTR("__getdd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_2__getdd, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_3__setdd, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gethh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_4__gethh, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__sethh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_5__sethh, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_6__getmm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setmm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_7__setmm, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_8__getss, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setss"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_9__setss, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("normalize"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_14normalize, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2JD_14normalize)}, - {__Pyx_NAMESTR("to_ymd"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_15to_ymd, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2JD_15to_ymd)}, - {__Pyx_NAMESTR("to_j"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_16to_j, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2JD_16to_j)}, - {__Pyx_NAMESTR("to_year"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2JD_17to_year, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2JD_17to_year)}, +static PyMethodDef __pyx_methods_3tpm_JD[] = { + {"__getdd", (PyCFunction)__pyx_pw_3tpm_2JD_5__getdd, METH_NOARGS, 0}, + {"__setdd", (PyCFunction)__pyx_pw_3tpm_2JD_7__setdd, METH_O, 0}, + {"__gethh", (PyCFunction)__pyx_pw_3tpm_2JD_9__gethh, METH_NOARGS, 0}, + {"__sethh", (PyCFunction)__pyx_pw_3tpm_2JD_11__sethh, METH_O, 0}, + {"__getmm", (PyCFunction)__pyx_pw_3tpm_2JD_13__getmm, METH_NOARGS, 0}, + {"__setmm", (PyCFunction)__pyx_pw_3tpm_2JD_15__setmm, METH_O, 0}, + {"__getss", (PyCFunction)__pyx_pw_3tpm_2JD_17__getss, METH_NOARGS, 0}, + {"__setss", (PyCFunction)__pyx_pw_3tpm_2JD_19__setss, METH_O, 0}, + {"normalize", (PyCFunction)__pyx_pw_3tpm_2JD_29normalize, METH_NOARGS, __pyx_doc_3tpm_2JD_28normalize}, + {"to_ymd", (PyCFunction)__pyx_pw_3tpm_2JD_31to_ymd, METH_NOARGS, __pyx_doc_3tpm_2JD_30to_ymd}, + {"to_j", (PyCFunction)__pyx_pw_3tpm_2JD_33to_j, METH_NOARGS, __pyx_doc_3tpm_2JD_32to_j}, + {"to_year", (PyCFunction)__pyx_pw_3tpm_2JD_35to_year, METH_NOARGS, __pyx_doc_3tpm_2JD_34to_year}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_2JD_37__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_2JD_39__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_JD = { - __pyx_pf_5pytpm_3tpm_2JD_12__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_2JD_13__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_2JD_25__add__, /*nb_add*/ + __pyx_pw_3tpm_2JD_27__sub__, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -28039,7 +40656,7 @@ static PyNumberMethods __pyx_tp_as_number_JD = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -28049,16 +40666,16 @@ static PyNumberMethods __pyx_tp_as_number_JD = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -28072,84 +40689,54 @@ static PyNumberMethods __pyx_tp_as_number_JD = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_JD = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_JD = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_JD = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_JD = { +static PyTypeObject __pyx_type_3tpm_JD = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.JD"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_JD), /*tp_basicsize*/ + "tpm.JD", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_JD), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_JD, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_JD, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ #endif - __pyx_pf_5pytpm_3tpm_2JD_10__repr__, /*tp_repr*/ + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + __pyx_pw_3tpm_2JD_21__repr__, /*tp_repr*/ &__pyx_tp_as_number_JD, /*tp_as_number*/ - &__pyx_tp_as_sequence_JD, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_JD, /*tp_as_mapping*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_2JD_11__str__, /*tp_str*/ + __pyx_pw_3tpm_2JD_23__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_JD, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class for Julian dates, with hours, minutes and seconds.\n\n This class represents a Julian date using a day part and hours,\n minutes and seconds. This can be initialized using several\n parameters. If multiple keyword arguments are given then one that\n gets used is based on this order: `j`, `year` and then zero or more\n of `dd`, `hh`, `mm` and `ss`.\n\n Parameters\n ----------\n j : float, optional\n Scalar Julian date.\n year : float, optional.\n Date-time as a year number. This is just\n (integer_year + day / num_of_days.)\n dd : float, optional\n Scalar Julian date or scalar Julian day number.\n hh : float, optional\n Hour of the day.\n mm : float, optional\n Minute.\n ss : float, optional\n Second.\n\n Attributes\n ----------\n dd : float\n The day part of the Julian date. This can also contain\n fractional part.\n hh : float\n Hour of the day.\n mm : float\n Minutes.\n ss : float\n Seconds.\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class for Julian dates, with hours, minutes and seconds.\n\n This class represents a Julian date using a day part and hours,\n minutes and seconds. This can be initialized using several\n parameters. If multiple keyword arguments are given then one that\n gets used is based on this order: `j`, `year` and then zero or more\n of `dd`, `hh`, `mm` and `ss`.\n\n Parameters\n ----------\n j : float, optional\n Scalar Julian date.\n year : float, optional.\n Date-time as a year number. This is just\n (integer_year + day / num_of_days.)\n dd : float, optional\n Scalar Julian date or scalar Julian day number.\n hh : float, optional\n Hour of the day.\n mm : float, optional\n Minute.\n ss : float, optional\n Second.\n\n Attributes\n ----------\n dd : float\n The day part of the Julian date. This can also contain\n fractional part.\n hh : float\n Hour of the day.\n mm : float\n Minutes.\n ss : float\n Seconds.\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_JD, /*tp_methods*/ + __pyx_methods_3tpm_JD, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -28157,9 +40744,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_JD = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_2JD_1__init__, /*tp_init*/ + __pyx_pw_3tpm_2JD_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_JD, /*tp_new*/ + __pyx_tp_new_3tpm_JD, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28168,163 +40755,91 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_JD = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V3 __pyx_vtable_5pytpm_3tpm_V3; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_V3(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_V3 *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_V3 *)o); - p->__pyx_vtab = __pyx_vtabptr_5pytpm_3tpm_V3; - if (__pyx_pf_5pytpm_3tpm_2V3___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static struct __pyx_vtabstruct_3tpm_V3 __pyx_vtable_3tpm_V3; + +static PyObject *__pyx_tp_new_3tpm_V3(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_3tpm_V3 *p; + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_V3 *)o); + p->__pyx_vtab = __pyx_vtabptr_3tpm_V3; + if (unlikely(__pyx_pw_3tpm_2V3_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_V3(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_V3(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_V3[] = { +static PyMethodDef __pyx_methods_3tpm_V3[] = { + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_2V3_5__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_2V3_7__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; -static PyNumberMethods __pyx_tp_as_number_V3 = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_V3 = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_V3 = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_V3 = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_5pytpm_3tpm_V3 = { +static PyTypeObject __pyx_type_3tpm_V3 = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.V3"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_V3), /*tp_basicsize*/ + "tpm.V3", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_V3), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_V3, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_V3, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_V3, /*tp_as_number*/ - &__pyx_tp_as_sequence_V3, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_V3, /*tp_as_mapping*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_V3, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class that wraps tpm_vec.V3; for use from Cython only."), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class that wraps tpm_vec.V3; for use from Cython only.", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_V3, /*tp_methods*/ + __pyx_methods_3tpm_V3, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -28332,9 +40847,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V3 = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_2V3_1__init__, /*tp_init*/ + __pyx_pw_3tpm_2V3_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_V3, /*tp_new*/ + __pyx_tp_new_3tpm_V3, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28343,41 +40858,50 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V3 = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V3CP __pyx_vtable_5pytpm_3tpm_V3CP; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_V3CP(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_V3CP *p; - PyObject *o = __pyx_tp_new_5pytpm_3tpm_V3(t, a, k); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_V3CP *)o); - p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_5pytpm_3tpm_V3*)__pyx_vtabptr_5pytpm_3tpm_V3CP; +static struct __pyx_vtabstruct_3tpm_V3CP __pyx_vtable_3tpm_V3CP; + +static PyObject *__pyx_tp_new_3tpm_V3CP(PyTypeObject *t, PyObject *a, PyObject *k) { + struct __pyx_obj_3tpm_V3CP *p; + PyObject *o = __pyx_tp_new_3tpm_V3(t, a, k); + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_V3CP *)o); + p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_3tpm_V3*)__pyx_vtabptr_3tpm_V3CP; return o; } -static PyMethodDef __pyx_methods_5pytpm_3tpm_V3CP[] = { - {__Pyx_NAMESTR("__getx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_1__getx, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_2__setx, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gety"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_3__gety, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__sety"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_4__sety, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_5__getz, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_6__setz, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("c2s"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_7c2s, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3CP_7c2s)}, - {__Pyx_NAMESTR("unit"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_8unit, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3CP_8unit)}, - {__Pyx_NAMESTR("mod"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_9mod, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3CP_9mod)}, - {__Pyx_NAMESTR("dot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_10dot, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3CP_10dot)}, - {__Pyx_NAMESTR("cross"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3CP_11cross, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3CP_11cross)}, +static PyMethodDef __pyx_methods_3tpm_V3CP[] = { + {"__getx", (PyCFunction)__pyx_pw_3tpm_4V3CP_3__getx, METH_NOARGS, 0}, + {"__setx", (PyCFunction)__pyx_pw_3tpm_4V3CP_5__setx, METH_O, 0}, + {"__gety", (PyCFunction)__pyx_pw_3tpm_4V3CP_7__gety, METH_NOARGS, 0}, + {"__sety", (PyCFunction)__pyx_pw_3tpm_4V3CP_9__sety, METH_O, 0}, + {"__getz", (PyCFunction)__pyx_pw_3tpm_4V3CP_11__getz, METH_NOARGS, 0}, + {"__setz", (PyCFunction)__pyx_pw_3tpm_4V3CP_13__setz, METH_O, 0}, + {"c2s", (PyCFunction)__pyx_pw_3tpm_4V3CP_15c2s, METH_NOARGS, __pyx_doc_3tpm_4V3CP_14c2s}, + {"unit", (PyCFunction)__pyx_pw_3tpm_4V3CP_17unit, METH_NOARGS, __pyx_doc_3tpm_4V3CP_16unit}, + {"mod", (PyCFunction)__pyx_pw_3tpm_4V3CP_19mod, METH_NOARGS, __pyx_doc_3tpm_4V3CP_18mod}, + {"dot", (PyCFunction)__pyx_pw_3tpm_4V3CP_21dot, METH_O, __pyx_doc_3tpm_4V3CP_20dot}, + {"cross", (PyCFunction)__pyx_pw_3tpm_4V3CP_23cross, METH_O, __pyx_doc_3tpm_4V3CP_22cross}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_4V3CP_33__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_4V3CP_35__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_V3CP = { - __pyx_pf_5pytpm_3tpm_4V3CP_13__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_4V3CP_12__sub__, /*nb_subtract*/ - __pyx_pf_5pytpm_3tpm_4V3CP_14__mul__, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + __pyx_pw_3tpm_4V3CP_27__add__, /*nb_add*/ + __pyx_pw_3tpm_4V3CP_25__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_4V3CP_29__mul__, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -28393,7 +40917,7 @@ static PyNumberMethods __pyx_tp_as_number_V3CP = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -28403,16 +40927,16 @@ static PyNumberMethods __pyx_tp_as_number_V3CP = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -28426,84 +40950,54 @@ static PyNumberMethods __pyx_tp_as_number_V3CP = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_V3CP = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_V3CP = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_V3CP = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_V3CP = { +static PyTypeObject __pyx_type_3tpm_V3CP = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.V3CP"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_V3CP), /*tp_basicsize*/ + "tpm.V3CP", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_V3CP), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_V3, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_V3, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ &__pyx_tp_as_number_V3CP, /*tp_as_number*/ - &__pyx_tp_as_sequence_V3CP, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_V3CP, /*tp_as_mapping*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_4V3CP_15__str__, /*tp_str*/ + __pyx_pw_3tpm_4V3CP_31__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_V3CP, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("A V3 Cartesian position vector.\n\n Parameters\n ----------\n x : float\n X coordinate.\n y : float\n Y coordinate.\n z : float\n Z coordinate.\n\n Attributes\n ----------\n x\n y\n z\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "A V3 Cartesian position vector.\n\n Parameters\n ----------\n x : float\n X coordinate.\n y : float\n Y coordinate.\n z : float\n Z coordinate.\n\n Attributes\n ----------\n x\n y\n z\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_V3CP, /*tp_methods*/ + __pyx_methods_3tpm_V3CP, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -28511,9 +41005,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V3CP = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_4V3CP___init__, /*tp_init*/ + __pyx_pw_3tpm_4V3CP_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_V3CP, /*tp_new*/ + __pyx_tp_new_3tpm_V3CP, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28522,42 +41016,51 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V3CP = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V3SP __pyx_vtable_5pytpm_3tpm_V3SP; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_V3SP(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_V3SP *p; - PyObject *o = __pyx_tp_new_5pytpm_3tpm_V3(t, a, k); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_V3SP *)o); - p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_5pytpm_3tpm_V3*)__pyx_vtabptr_5pytpm_3tpm_V3SP; +static struct __pyx_vtabstruct_3tpm_V3SP __pyx_vtable_3tpm_V3SP; + +static PyObject *__pyx_tp_new_3tpm_V3SP(PyTypeObject *t, PyObject *a, PyObject *k) { + struct __pyx_obj_3tpm_V3SP *p; + PyObject *o = __pyx_tp_new_3tpm_V3(t, a, k); + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_V3SP *)o); + p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_3tpm_V3*)__pyx_vtabptr_3tpm_V3SP; return o; } -static PyMethodDef __pyx_methods_5pytpm_3tpm_V3SP[] = { - {__Pyx_NAMESTR("__getr"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_1__getr, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setr"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_2__setr, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_3__getalpha, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_4__setalpha, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getdelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_5__getdelta, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_6__setdelta, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getnalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_7__getnalpha, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getndelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_8__getndelta, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("s2c"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_9s2c, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3SP_9s2c)}, - {__Pyx_NAMESTR("mod"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_10mod, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3SP_10mod)}, - {__Pyx_NAMESTR("dot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_11dot, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3SP_11dot)}, - {__Pyx_NAMESTR("cross"), (PyCFunction)__pyx_pf_5pytpm_3tpm_4V3SP_12cross, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_4V3SP_12cross)}, +static PyMethodDef __pyx_methods_3tpm_V3SP[] = { + {"__getr", (PyCFunction)__pyx_pw_3tpm_4V3SP_3__getr, METH_NOARGS, 0}, + {"__setr", (PyCFunction)__pyx_pw_3tpm_4V3SP_5__setr, METH_O, 0}, + {"__getalpha", (PyCFunction)__pyx_pw_3tpm_4V3SP_7__getalpha, METH_NOARGS, 0}, + {"__setalpha", (PyCFunction)__pyx_pw_3tpm_4V3SP_9__setalpha, METH_O, 0}, + {"__getdelta", (PyCFunction)__pyx_pw_3tpm_4V3SP_11__getdelta, METH_NOARGS, 0}, + {"__setdelta", (PyCFunction)__pyx_pw_3tpm_4V3SP_13__setdelta, METH_O, 0}, + {"__getnalpha", (PyCFunction)__pyx_pw_3tpm_4V3SP_15__getnalpha, METH_NOARGS, 0}, + {"__getndelta", (PyCFunction)__pyx_pw_3tpm_4V3SP_17__getndelta, METH_NOARGS, 0}, + {"s2c", (PyCFunction)__pyx_pw_3tpm_4V3SP_19s2c, METH_NOARGS, __pyx_doc_3tpm_4V3SP_18s2c}, + {"mod", (PyCFunction)__pyx_pw_3tpm_4V3SP_21mod, METH_NOARGS, __pyx_doc_3tpm_4V3SP_20mod}, + {"dot", (PyCFunction)__pyx_pw_3tpm_4V3SP_23dot, METH_O, __pyx_doc_3tpm_4V3SP_22dot}, + {"cross", (PyCFunction)__pyx_pw_3tpm_4V3SP_25cross, METH_O, __pyx_doc_3tpm_4V3SP_24cross}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_4V3SP_35__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_4V3SP_37__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_V3SP = { - __pyx_pf_5pytpm_3tpm_4V3SP_14__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_4V3SP_13__sub__, /*nb_subtract*/ - __pyx_pf_5pytpm_3tpm_4V3SP_15__mul__, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + __pyx_pw_3tpm_4V3SP_29__add__, /*nb_add*/ + __pyx_pw_3tpm_4V3SP_27__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_4V3SP_31__mul__, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -28573,7 +41076,7 @@ static PyNumberMethods __pyx_tp_as_number_V3SP = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -28583,16 +41086,16 @@ static PyNumberMethods __pyx_tp_as_number_V3SP = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -28606,84 +41109,54 @@ static PyNumberMethods __pyx_tp_as_number_V3SP = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_V3SP = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_V3SP = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_V3SP = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_V3SP = { +static PyTypeObject __pyx_type_3tpm_V3SP = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.V3SP"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_V3SP), /*tp_basicsize*/ + "tpm.V3SP", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_V3SP), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_V3, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_V3, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ &__pyx_tp_as_number_V3SP, /*tp_as_number*/ - &__pyx_tp_as_sequence_V3SP, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_V3SP, /*tp_as_mapping*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_4V3SP_16__str__, /*tp_str*/ + __pyx_pw_3tpm_4V3SP_33__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_V3SP, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("A V3 spherical position vector.\n\n Parameters\n ----------\n r : float\n Radial coordinate.\n alpha : float\n Longitudinal angle in radians.\n delta : float\n Latitudinal angle in radians.\n\n Attributes\n ----------\n r\n alpha\n delta\n\n Notes\n -----\n The following attributes are also present:\n\n nalpha : `alpha` normalized to [0, 2\317\200).\n ndelta : `delta` normalized to [-\317\200/2, \317\200/2].\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "A V3 spherical position vector.\n\n Parameters\n ----------\n r : float\n Radial coordinate.\n alpha : float\n Longitudinal angle in radians.\n delta : float\n Latitudinal angle in radians.\n\n Attributes\n ----------\n r\n alpha\n delta\n\n Notes\n -----\n The following attributes are also present:\n\n nalpha : `alpha` normalized to [0, 2\317\200).\n ndelta : `delta` normalized to [-\317\200/2, \317\200/2].\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_V3SP, /*tp_methods*/ + __pyx_methods_3tpm_V3SP, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -28691,9 +41164,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V3SP = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_4V3SP___init__, /*tp_init*/ + __pyx_pw_3tpm_4V3SP_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_V3SP, /*tp_new*/ + __pyx_tp_new_3tpm_V3SP, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28702,163 +41175,91 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V3SP = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V6 __pyx_vtable_5pytpm_3tpm_V6; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_V6(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_V6 *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_V6 *)o); - p->__pyx_vtab = __pyx_vtabptr_5pytpm_3tpm_V6; - if (__pyx_pf_5pytpm_3tpm_2V6___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static struct __pyx_vtabstruct_3tpm_V6 __pyx_vtable_3tpm_V6; + +static PyObject *__pyx_tp_new_3tpm_V6(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_3tpm_V6 *p; + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_V6 *)o); + p->__pyx_vtab = __pyx_vtabptr_3tpm_V6; + if (unlikely(__pyx_pw_3tpm_2V6_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_V6(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_V6(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_V6[] = { +static PyMethodDef __pyx_methods_3tpm_V6[] = { + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_2V6_5__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_2V6_7__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; -static PyNumberMethods __pyx_tp_as_number_V6 = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_V6 = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_V6 = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_V6 = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_5pytpm_3tpm_V6 = { +static PyTypeObject __pyx_type_3tpm_V6 = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.V6"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_V6), /*tp_basicsize*/ + "tpm.V6", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_V6), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_V6, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_V6, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_V6, /*tp_as_number*/ - &__pyx_tp_as_sequence_V6, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_V6, /*tp_as_mapping*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_V6, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class that wraps tpm_vec.V6; for use from Cython only."), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class that wraps tpm_vec.V6; for use from Cython only.", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_V6, /*tp_methods*/ + __pyx_methods_3tpm_V6, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -28866,9 +41267,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V6 = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_2V6_1__init__, /*tp_init*/ + __pyx_pw_3tpm_2V6_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_V6, /*tp_new*/ + __pyx_tp_new_3tpm_V6, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -28877,51 +41278,60 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V6 = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V6C __pyx_vtable_5pytpm_3tpm_V6C; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_V6C(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_V6C *p; - PyObject *o = __pyx_tp_new_5pytpm_3tpm_V6(t, a, k); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_V6C *)o); - p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_5pytpm_3tpm_V6*)__pyx_vtabptr_5pytpm_3tpm_V6C; +static struct __pyx_vtabstruct_3tpm_V6C __pyx_vtable_3tpm_V6C; + +static PyObject *__pyx_tp_new_3tpm_V6C(PyTypeObject *t, PyObject *a, PyObject *k) { + struct __pyx_obj_3tpm_V6C *p; + PyObject *o = __pyx_tp_new_3tpm_V6(t, a, k); + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_V6C *)o); + p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_3tpm_V6*)__pyx_vtabptr_3tpm_V6C; return o; } -static PyMethodDef __pyx_methods_5pytpm_3tpm_V6C[] = { - {__Pyx_NAMESTR("__getx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_1__getx, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_2__setx, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gety"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_3__gety, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__sety"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_4__sety, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_5__getz, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_6__setz, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getxdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_7__getxdot, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setxdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_8__setxdot, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getydot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_9__getydot, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setydot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_10__setydot, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getzdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_11__getzdot, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setzdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_12__setzdot, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getPOS"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_13__getPOS, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setPOS"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_14__setPOS, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("mod"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_17mod, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_17mod)}, - {__Pyx_NAMESTR("unit"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_18unit, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_18unit)}, - {__Pyx_NAMESTR("scale"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_19scale, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_19scale)}, - {__Pyx_NAMESTR("v62v3"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_20v62v3, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_20v62v3)}, - {__Pyx_NAMESTR("dot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_21dot, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_21dot)}, - {__Pyx_NAMESTR("cross"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_22cross, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_22cross)}, - {__Pyx_NAMESTR("c2s"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6C_23c2s, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6C_23c2s)}, +static PyMethodDef __pyx_methods_3tpm_V6C[] = { + {"__getx", (PyCFunction)__pyx_pw_3tpm_3V6C_3__getx, METH_NOARGS, 0}, + {"__setx", (PyCFunction)__pyx_pw_3tpm_3V6C_5__setx, METH_O, 0}, + {"__gety", (PyCFunction)__pyx_pw_3tpm_3V6C_7__gety, METH_NOARGS, 0}, + {"__sety", (PyCFunction)__pyx_pw_3tpm_3V6C_9__sety, METH_O, 0}, + {"__getz", (PyCFunction)__pyx_pw_3tpm_3V6C_11__getz, METH_NOARGS, 0}, + {"__setz", (PyCFunction)__pyx_pw_3tpm_3V6C_13__setz, METH_O, 0}, + {"__getxdot", (PyCFunction)__pyx_pw_3tpm_3V6C_15__getxdot, METH_NOARGS, 0}, + {"__setxdot", (PyCFunction)__pyx_pw_3tpm_3V6C_17__setxdot, METH_O, 0}, + {"__getydot", (PyCFunction)__pyx_pw_3tpm_3V6C_19__getydot, METH_NOARGS, 0}, + {"__setydot", (PyCFunction)__pyx_pw_3tpm_3V6C_21__setydot, METH_O, 0}, + {"__getzdot", (PyCFunction)__pyx_pw_3tpm_3V6C_23__getzdot, METH_NOARGS, 0}, + {"__setzdot", (PyCFunction)__pyx_pw_3tpm_3V6C_25__setzdot, METH_O, 0}, + {"__getPOS", (PyCFunction)__pyx_pw_3tpm_3V6C_27__getPOS, METH_NOARGS, 0}, + {"__setPOS", (PyCFunction)__pyx_pw_3tpm_3V6C_29__setPOS, METH_O, 0}, + {"mod", (PyCFunction)__pyx_pw_3tpm_3V6C_35mod, METH_NOARGS, __pyx_doc_3tpm_3V6C_34mod}, + {"unit", (PyCFunction)__pyx_pw_3tpm_3V6C_37unit, METH_NOARGS, __pyx_doc_3tpm_3V6C_36unit}, + {"scale", (PyCFunction)__pyx_pw_3tpm_3V6C_39scale, METH_O, __pyx_doc_3tpm_3V6C_38scale}, + {"v62v3", (PyCFunction)__pyx_pw_3tpm_3V6C_41v62v3, METH_O, __pyx_doc_3tpm_3V6C_40v62v3}, + {"dot", (PyCFunction)__pyx_pw_3tpm_3V6C_43dot, METH_O, __pyx_doc_3tpm_3V6C_42dot}, + {"cross", (PyCFunction)__pyx_pw_3tpm_3V6C_45cross, METH_O, __pyx_doc_3tpm_3V6C_44cross}, + {"c2s", (PyCFunction)__pyx_pw_3tpm_3V6C_47c2s, METH_NOARGS, __pyx_doc_3tpm_3V6C_46c2s}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_3V6C_49__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_3V6C_51__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_V6C = { - __pyx_pf_5pytpm_3tpm_3V6C_16__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_3V6C_15__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_3V6C_33__add__, /*nb_add*/ + __pyx_pw_3tpm_3V6C_31__sub__, /*nb_subtract*/ 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -28937,7 +41347,7 @@ static PyNumberMethods __pyx_tp_as_number_V6C = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -28947,16 +41357,16 @@ static PyNumberMethods __pyx_tp_as_number_V6C = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -28970,84 +41380,154 @@ static PyNumberMethods __pyx_tp_as_number_V6C = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ + #endif + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PySequenceMethods __pyx_tp_as_sequence_V6C = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_V6C = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_V6C = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ +static PyTypeObject __pyx_type_3tpm_V6C = { + PyVarObject_HEAD_INIT(0, 0) + "tpm.V6C", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_V6C), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_3tpm_V6, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 + 0, /*tp_print*/ #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ #endif + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ + 0, /*tp_compare*/ #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + 0, /*tp_repr*/ + &__pyx_tp_as_number_V6C, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class for Cartesian V6 vector.\n\n Parameters\n ----------\n x : float\n X coordinate.\n y : float\n Y coordinate.\n z : float\n Z coordinate.\n xdot : float\n Rate of change of `x`.\n ydot : float\n Rate of change of `y`.\n zdot : float\n Rate of change of `z`.\n\n Attributes\n ----------\n x\n y\n z\n xdot\n ydot\n zdot\n\n ", /*tp_doc*/ + 0, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + __pyx_methods_3tpm_V6C, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + 0, /*tp_dictoffset*/ + __pyx_pw_3tpm_3V6C_1__init__, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_3tpm_V6C, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; +static struct __pyx_vtabstruct_3tpm_V6S __pyx_vtable_3tpm_V6S; + +static PyObject *__pyx_tp_new_3tpm_V6S(PyTypeObject *t, PyObject *a, PyObject *k) { + struct __pyx_obj_3tpm_V6S *p; + PyObject *o = __pyx_tp_new_3tpm_V6(t, a, k); + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_V6S *)o); + p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_3tpm_V6*)__pyx_vtabptr_3tpm_V6S; + return o; +} + +static PyMethodDef __pyx_methods_3tpm_V6S[] = { + {"__getr", (PyCFunction)__pyx_pw_3tpm_3V6S_3__getr, METH_NOARGS, 0}, + {"__setr", (PyCFunction)__pyx_pw_3tpm_3V6S_5__setr, METH_O, 0}, + {"__getalpha", (PyCFunction)__pyx_pw_3tpm_3V6S_7__getalpha, METH_NOARGS, 0}, + {"__setalpha", (PyCFunction)__pyx_pw_3tpm_3V6S_9__setalpha, METH_O, 0}, + {"__getdelta", (PyCFunction)__pyx_pw_3tpm_3V6S_11__getdelta, METH_NOARGS, 0}, + {"__setdelta", (PyCFunction)__pyx_pw_3tpm_3V6S_13__setdelta, METH_O, 0}, + {"__getrdot", (PyCFunction)__pyx_pw_3tpm_3V6S_15__getrdot, METH_NOARGS, 0}, + {"__setrdot", (PyCFunction)__pyx_pw_3tpm_3V6S_17__setrdot, METH_O, 0}, + {"__getalphadot", (PyCFunction)__pyx_pw_3tpm_3V6S_19__getalphadot, METH_NOARGS, 0}, + {"__setalphadot", (PyCFunction)__pyx_pw_3tpm_3V6S_21__setalphadot, METH_O, 0}, + {"__getdeltadot", (PyCFunction)__pyx_pw_3tpm_3V6S_23__getdeltadot, METH_NOARGS, 0}, + {"__setdeltadot", (PyCFunction)__pyx_pw_3tpm_3V6S_25__setdeltadot, METH_O, 0}, + {"__getnalpha", (PyCFunction)__pyx_pw_3tpm_3V6S_27__getnalpha, METH_NOARGS, 0}, + {"__getndelta", (PyCFunction)__pyx_pw_3tpm_3V6S_29__getndelta, METH_NOARGS, 0}, + {"s2c", (PyCFunction)__pyx_pw_3tpm_3V6S_31s2c, METH_NOARGS, __pyx_doc_3tpm_3V6S_30s2c}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_3V6S_33__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_3V6S_35__setstate_cython__, METH_O, 0}, + {0, 0, 0, 0} +}; -static PyTypeObject __pyx_type_5pytpm_3tpm_V6C = { +static PyTypeObject __pyx_type_3tpm_V6S = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.V6C"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_V6C), /*tp_basicsize*/ + "tpm.V6S", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_V6S), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_V6, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_V6, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_V6C, /*tp_as_number*/ - &__pyx_tp_as_sequence_V6C, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_V6C, /*tp_as_mapping*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_V6C, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class for Cartesian V6 vector.\n\n Parameters\n ----------\n x : float\n X coordinate.\n y : float\n Y coordinate.\n z : float\n Z coordinate.\n xdot : float\n Rate of change of `x`.\n ydot : float\n Rate of change of `y`.\n zdot : float\n Rate of change of `z`.\n\n Attributes\n ----------\n x\n y\n z\n xdot\n ydot\n zdot\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class for spherical V6 vector.\n\n Parameters\n ----------\n r : float\n Radial coordinate.\n alpha : float\n Longitudinal angle.\n delta : float\n Latitudinal angle.\n rdot : float\n Rate of change in `r`.\n alphadot : float\n Rate of change in `alpha`.\n deltadot : float\n Rate of change in `delta`.\n\n Attributes\n ----------\n r\n alpha\n delta\n rdot\n alphadot\n deltadot\n\n Notes\n -----\n The following attributes are also present:\n\n nalpha : `alpha` normalized to [0, 2\317\200).\n ndelta : `delta` normalized to [-\317\200/2, \317\200/2].\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_V6C, /*tp_methods*/ + __pyx_methods_3tpm_V6S, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -29055,9 +41535,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V6C = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_3V6C___init__, /*tp_init*/ + __pyx_pw_3tpm_3V6S_1__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_V6C, /*tp_new*/ + __pyx_tp_new_3tpm_V6S, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29066,45 +41546,79 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V6C = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_V6S __pyx_vtable_5pytpm_3tpm_V6S; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_V6S(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_V6S *p; - PyObject *o = __pyx_tp_new_5pytpm_3tpm_V6(t, a, k); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_V6S *)o); - p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_5pytpm_3tpm_V6*)__pyx_vtabptr_5pytpm_3tpm_V6S; +static struct __pyx_vtabstruct_3tpm_M3 __pyx_vtable_3tpm_M3; + +static PyObject *__pyx_tp_new_3tpm_M3(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_3tpm_M3 *p; + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); + } + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_M3 *)o); + p->__pyx_vtab = __pyx_vtabptr_3tpm_M3; + if (unlikely(__pyx_pw_3tpm_2M3_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; +} + +static void __pyx_tp_dealloc_3tpm_M3(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif + (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_V6S[] = { - {__Pyx_NAMESTR("__getr"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_1__getr, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setr"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_2__setr, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_3__getalpha, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_4__setalpha, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getdelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_5__getdelta, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_6__setdelta, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getrdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_7__getrdot, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setrdot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_8__setrdot, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getalphadot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_9__getalphadot, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setalphadot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_10__setalphadot, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getdeltadot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_11__getdeltadot, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdeltadot"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_12__setdeltadot, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getnalpha"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_13__getnalpha, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getndelta"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_14__getndelta, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("s2c"), (PyCFunction)__pyx_pf_5pytpm_3tpm_3V6S_15s2c, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_3V6S_15s2c)}, +static PyMethodDef __pyx_methods_3tpm_M3[] = { + {"__getxx", (PyCFunction)__pyx_pw_3tpm_2M3_5__getxx, METH_NOARGS, 0}, + {"__setxx", (PyCFunction)__pyx_pw_3tpm_2M3_7__setxx, METH_O, 0}, + {"__getxy", (PyCFunction)__pyx_pw_3tpm_2M3_9__getxy, METH_NOARGS, 0}, + {"__setxy", (PyCFunction)__pyx_pw_3tpm_2M3_11__setxy, METH_O, 0}, + {"__getxz", (PyCFunction)__pyx_pw_3tpm_2M3_13__getxz, METH_NOARGS, 0}, + {"__setxz", (PyCFunction)__pyx_pw_3tpm_2M3_15__setxz, METH_O, 0}, + {"__getyx", (PyCFunction)__pyx_pw_3tpm_2M3_17__getyx, METH_NOARGS, 0}, + {"__setyx", (PyCFunction)__pyx_pw_3tpm_2M3_19__setyx, METH_O, 0}, + {"__getyy", (PyCFunction)__pyx_pw_3tpm_2M3_21__getyy, METH_NOARGS, 0}, + {"__setyy", (PyCFunction)__pyx_pw_3tpm_2M3_23__setyy, METH_O, 0}, + {"__getyz", (PyCFunction)__pyx_pw_3tpm_2M3_25__getyz, METH_NOARGS, 0}, + {"__setyz", (PyCFunction)__pyx_pw_3tpm_2M3_27__setyz, METH_O, 0}, + {"__getzx", (PyCFunction)__pyx_pw_3tpm_2M3_29__getzx, METH_NOARGS, 0}, + {"__setzx", (PyCFunction)__pyx_pw_3tpm_2M3_31__setzx, METH_O, 0}, + {"__getzy", (PyCFunction)__pyx_pw_3tpm_2M3_33__getzy, METH_NOARGS, 0}, + {"__setzy", (PyCFunction)__pyx_pw_3tpm_2M3_35__setzy, METH_O, 0}, + {"__getzz", (PyCFunction)__pyx_pw_3tpm_2M3_37__getzz, METH_NOARGS, 0}, + {"__setzz", (PyCFunction)__pyx_pw_3tpm_2M3_39__setzz, METH_O, 0}, + {"inv", (PyCFunction)__pyx_pw_3tpm_2M3_49inv, METH_NOARGS, __pyx_doc_3tpm_2M3_48inv}, + {"m3m3", (PyCFunction)__pyx_pw_3tpm_2M3_51m3m3, METH_O, __pyx_doc_3tpm_2M3_50m3m3}, + {"m3v3", (PyCFunction)__pyx_pw_3tpm_2M3_53m3v3, METH_O, __pyx_doc_3tpm_2M3_52m3v3}, + {"m3v6", (PyCFunction)__pyx_pw_3tpm_2M3_55m3v6, METH_O, __pyx_doc_3tpm_2M3_54m3v6}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_2M3_57__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_2M3_59__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; -static PyNumberMethods __pyx_tp_as_number_V6S = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 +static PyNumberMethods __pyx_tp_as_number_M3 = { + __pyx_pw_3tpm_2M3_45__add__, /*nb_add*/ + __pyx_pw_3tpm_2M3_43__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_2M3_47__mul__, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -29120,7 +41634,7 @@ static PyNumberMethods __pyx_tp_as_number_V6S = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -29130,16 +41644,16 @@ static PyNumberMethods __pyx_tp_as_number_V6S = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -29153,84 +41667,54 @@ static PyNumberMethods __pyx_tp_as_number_V6S = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_V6S = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_V6S = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_V6S = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_V6S = { +static PyTypeObject __pyx_type_3tpm_M3 = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.V6S"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_V6S), /*tp_basicsize*/ + "tpm.M3", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_M3), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_V6, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_M3, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_V6S, /*tp_as_number*/ - &__pyx_tp_as_sequence_V6S, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_V6S, /*tp_as_mapping*/ + &__pyx_tp_as_number_M3, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - 0, /*tp_str*/ + __pyx_pw_3tpm_2M3_41__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_V6S, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class for spherical V6 vector.\n\n Parameters\n ----------\n r : float\n Radial coordinate.\n alpha : float\n Longitudinal angle.\n delta : float\n Latitudinal angle.\n rdot : float\n Rate of change in `r`.\n alphadot : float\n Rate of change in `alpha`.\n deltadot : float\n Rate of change in `delta`.\n\n Attributes\n ----------\n r\n alpha\n delta\n rdot\n alphadot\n deltadot\n\n Notes\n -----\n The following attributes are also present:\n\n nalpha : `alpha` normalized to [0, 2\317\200).\n ndelta : `delta` normalized to [-\317\200/2, \317\200/2].\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class that wraps M3 structure, representing a matrix.\n\n Parameters\n ----------\n xx : float\n m[0][0].\n xy : float\n m[0][1].\n xz : float\n m[0][2].\n yx : float\n m[1][0]\n yy : float\n m[1][1].\n yz : float\n m[1][2].\n zx : float\n m[2][0].\n zy : float\n m[2][1].\n zz : float\n m[2][2].\n\n Attributes\n ----------\n xx\n xy\n xz\n yx\n yy\n yz\n zx\n zy\n zz\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_V6S, /*tp_methods*/ + __pyx_methods_3tpm_M3, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -29238,9 +41722,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V6S = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_3V6S___init__, /*tp_init*/ + __pyx_pw_3tpm_2M3_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_V6S, /*tp_new*/ + __pyx_tp_new_3tpm_M3, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29249,59 +41733,68 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_V6S = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_M3 __pyx_vtable_5pytpm_3tpm_M3; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_M3(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_M3 *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_M3 *)o); - p->__pyx_vtab = __pyx_vtabptr_5pytpm_3tpm_M3; - if (__pyx_pf_5pytpm_3tpm_2M3___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static struct __pyx_vtabstruct_3tpm_M6 __pyx_vtable_3tpm_M6; + +static PyObject *__pyx_tp_new_3tpm_M6(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_3tpm_M6 *p; + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_M6 *)o); + p->__pyx_vtab = __pyx_vtabptr_3tpm_M6; + if (unlikely(__pyx_pw_3tpm_2M6_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_M3(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_M6(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_M3[] = { - {__Pyx_NAMESTR("__getxx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_2__getxx, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setxx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_3__setxx, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getxy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_4__getxy, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setxy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_5__setxy, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getxz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_6__getxz, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setxz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_7__setxz, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getyx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_8__getyx, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setyx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_9__setyx, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getyy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_10__getyy, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setyy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_11__setyy, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getyz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_12__getyz, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setyz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_13__setyz, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getzx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_14__getzx, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setzx"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_15__setzx, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getzy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_16__getzy, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setzy"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_17__setzy, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getzz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_18__getzz, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setzz"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_19__setzz, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("inv"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_24inv, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M3_24inv)}, - {__Pyx_NAMESTR("m3m3"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_25m3m3, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M3_25m3m3)}, - {__Pyx_NAMESTR("m3v3"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_26m3v3, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M3_26m3v3)}, - {__Pyx_NAMESTR("m3v6"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M3_27m3v6, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M3_27m3v6)}, +static PyMethodDef __pyx_methods_3tpm_M6[] = { + {"__getPP", (PyCFunction)__pyx_pw_3tpm_2M6_5__getPP, METH_NOARGS, 0}, + {"__setPP", (PyCFunction)__pyx_pw_3tpm_2M6_7__setPP, METH_O, 0}, + {"__getPV", (PyCFunction)__pyx_pw_3tpm_2M6_9__getPV, METH_NOARGS, 0}, + {"__setPV", (PyCFunction)__pyx_pw_3tpm_2M6_11__setPV, METH_O, 0}, + {"__getVP", (PyCFunction)__pyx_pw_3tpm_2M6_13__getVP, METH_NOARGS, 0}, + {"__setVP", (PyCFunction)__pyx_pw_3tpm_2M6_15__setVP, METH_O, 0}, + {"__getVV", (PyCFunction)__pyx_pw_3tpm_2M6_17__getVV, METH_NOARGS, 0}, + {"__setVV", (PyCFunction)__pyx_pw_3tpm_2M6_19__setVV, METH_O, 0}, + {"inv", (PyCFunction)__pyx_pw_3tpm_2M6_29inv, METH_NOARGS, __pyx_doc_3tpm_2M6_28inv}, + {"m6v3", (PyCFunction)__pyx_pw_3tpm_2M6_31m6v3, METH_O, __pyx_doc_3tpm_2M6_30m6v3}, + {"m6v6", (PyCFunction)__pyx_pw_3tpm_2M6_33m6v6, METH_O, __pyx_doc_3tpm_2M6_32m6v6}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_2M6_35__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_2M6_37__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; -static PyNumberMethods __pyx_tp_as_number_M3 = { - __pyx_pf_5pytpm_3tpm_2M3_22__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_2M3_21__sub__, /*nb_subtract*/ - __pyx_pf_5pytpm_3tpm_2M3_23__mul__, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 +static PyNumberMethods __pyx_tp_as_number_M6 = { + __pyx_pw_3tpm_2M6_21__add__, /*nb_add*/ + __pyx_pw_3tpm_2M6_23__sub__, /*nb_subtract*/ + __pyx_pw_3tpm_2M6_25__mul__, /*nb_multiply*/ + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ @@ -29317,7 +41810,7 @@ static PyNumberMethods __pyx_tp_as_number_M3 = { 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_coerce*/ #endif 0, /*nb_int*/ @@ -29327,16 +41820,16 @@ static PyNumberMethods __pyx_tp_as_number_M3 = { 0, /*reserved*/ #endif 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_oct*/ #endif - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 + #if PY_MAJOR_VERSION < 3 || (CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x03050000) 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ @@ -29350,84 +41843,54 @@ static PyNumberMethods __pyx_tp_as_number_M3 = { 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_matrix_multiply*/ #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_M3 = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_M3 = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_M3 = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ + #if PY_VERSION_HEX >= 0x03050000 + 0, /*nb_inplace_matrix_multiply*/ #endif }; -static PyTypeObject __pyx_type_5pytpm_3tpm_M3 = { +static PyTypeObject __pyx_type_3tpm_M6 = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.M3"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_M3), /*tp_basicsize*/ + "tpm.M6", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_M6), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_M3, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_M6, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_M3, /*tp_as_number*/ - &__pyx_tp_as_sequence_M3, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_M3, /*tp_as_mapping*/ + &__pyx_tp_as_number_M6, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_2M3_20__str__, /*tp_str*/ + __pyx_pw_3tpm_2M6_27__str__, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_M3, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class that wraps M3 structure, representing a matrix.\n\n Parameters\n ----------\n xx : float\n m[0][0].\n xy : float\n m[0][1].\n xz : float\n m[0][2].\n yx : float\n m[1][0]\n yy : float\n m[1][1].\n yz : float\n m[1][2].\n zx : float\n m[2][0].\n zy : float\n m[2][1].\n zz : float\n m[2][2].\n\n Attributes\n ----------\n xx\n xy\n xz\n yx\n yy\n yz\n zx\n zy\n zz\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class that wraps M6 structure.\n\n This is essential a 2x2 array of tpm.M3 matrices.\n\n Attributes\n ----------\n pp : tpm.M3\n m6[0][0].\n pv : tpm.M3\n m6[0][1].\n vp : tpm.M3\n m6[1][0].\n vv : tpm.M3\n m6[1][1]\n\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_M3, /*tp_methods*/ + __pyx_methods_3tpm_M6, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -29435,9 +41898,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_M3 = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_2M3_1__init__, /*tp_init*/ + __pyx_pw_3tpm_2M6_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_M3, /*tp_new*/ + __pyx_tp_new_3tpm_M6, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29446,174 +41909,134 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_M3 = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ #endif -}; -static struct __pyx_vtabstruct_5pytpm_3tpm_M6 __pyx_vtable_5pytpm_3tpm_M6; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_M6(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_M6 *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_M6 *)o); - p->__pyx_vtab = __pyx_vtabptr_5pytpm_3tpm_M6; - if (__pyx_pf_5pytpm_3tpm_2M6___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ + #endif +}; +static struct __pyx_vtabstruct_3tpm_TSTATE __pyx_vtable_3tpm_TSTATE; + +static PyObject *__pyx_tp_new_3tpm_TSTATE(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_3tpm_TSTATE *p; + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_TSTATE *)o); + p->__pyx_vtab = __pyx_vtabptr_3tpm_TSTATE; + if (unlikely(__pyx_pw_3tpm_6TSTATE_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_M6(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_TSTATE(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } -static PyMethodDef __pyx_methods_5pytpm_3tpm_M6[] = { - {__Pyx_NAMESTR("__getPP"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_2__getPP, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setPP"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_3__setPP, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getPV"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_4__getPV, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setPV"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_5__setPV, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getVP"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_6__getVP, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setVP"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_7__setVP, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getVV"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_8__getVV, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setVV"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_9__setVV, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("inv"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_14inv, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M6_14inv)}, - {__Pyx_NAMESTR("m6v3"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_15m6v3, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M6_15m6v3)}, - {__Pyx_NAMESTR("m6v6"), (PyCFunction)__pyx_pf_5pytpm_3tpm_2M6_16m6v6, METH_O, __Pyx_DOCSTR(__pyx_doc_5pytpm_3tpm_2M6_16m6v6)}, +static PyMethodDef __pyx_methods_3tpm_TSTATE[] = { + {"__getutc", (PyCFunction)__pyx_pw_3tpm_6TSTATE_5__getutc, METH_NOARGS, 0}, + {"__setutc", (PyCFunction)__pyx_pw_3tpm_6TSTATE_7__setutc, METH_O, 0}, + {"__getdelta_at", (PyCFunction)__pyx_pw_3tpm_6TSTATE_9__getdelta_at, METH_NOARGS, 0}, + {"__setdelta_at", (PyCFunction)__pyx_pw_3tpm_6TSTATE_11__setdelta_at, METH_O, 0}, + {"__getdelta_ut", (PyCFunction)__pyx_pw_3tpm_6TSTATE_13__getdelta_ut, METH_NOARGS, 0}, + {"__setdelta_ut", (PyCFunction)__pyx_pw_3tpm_6TSTATE_15__setdelta_ut, METH_O, 0}, + {"__getlon", (PyCFunction)__pyx_pw_3tpm_6TSTATE_17__getlon, METH_NOARGS, 0}, + {"__setlon", (PyCFunction)__pyx_pw_3tpm_6TSTATE_19__setlon, METH_O, 0}, + {"__getlat", (PyCFunction)__pyx_pw_3tpm_6TSTATE_21__getlat, METH_NOARGS, 0}, + {"__setlat", (PyCFunction)__pyx_pw_3tpm_6TSTATE_23__setlat, METH_O, 0}, + {"__getalt", (PyCFunction)__pyx_pw_3tpm_6TSTATE_25__getalt, METH_NOARGS, 0}, + {"__setalt", (PyCFunction)__pyx_pw_3tpm_6TSTATE_27__setalt, METH_O, 0}, + {"__getxpole", (PyCFunction)__pyx_pw_3tpm_6TSTATE_29__getxpole, METH_NOARGS, 0}, + {"__setxpole", (PyCFunction)__pyx_pw_3tpm_6TSTATE_31__setxpole, METH_O, 0}, + {"__getypole", (PyCFunction)__pyx_pw_3tpm_6TSTATE_33__getypole, METH_NOARGS, 0}, + {"__setypole", (PyCFunction)__pyx_pw_3tpm_6TSTATE_35__setypole, METH_O, 0}, + {"__getT", (PyCFunction)__pyx_pw_3tpm_6TSTATE_37__getT, METH_NOARGS, 0}, + {"__setT", (PyCFunction)__pyx_pw_3tpm_6TSTATE_39__setT, METH_O, 0}, + {"__getP", (PyCFunction)__pyx_pw_3tpm_6TSTATE_41__getP, METH_NOARGS, 0}, + {"__setP", (PyCFunction)__pyx_pw_3tpm_6TSTATE_43__setP, METH_O, 0}, + {"__getH", (PyCFunction)__pyx_pw_3tpm_6TSTATE_45__getH, METH_NOARGS, 0}, + {"__setH", (PyCFunction)__pyx_pw_3tpm_6TSTATE_47__setH, METH_O, 0}, + {"__getwavelength", (PyCFunction)__pyx_pw_3tpm_6TSTATE_49__getwavelength, METH_NOARGS, 0}, + {"__setwavelength", (PyCFunction)__pyx_pw_3tpm_6TSTATE_51__setwavelength, METH_O, 0}, + {"__gettai", (PyCFunction)__pyx_pw_3tpm_6TSTATE_53__gettai, METH_NOARGS, 0}, + {"__gettdt", (PyCFunction)__pyx_pw_3tpm_6TSTATE_55__gettdt, METH_NOARGS, 0}, + {"__gettdb", (PyCFunction)__pyx_pw_3tpm_6TSTATE_57__gettdb, METH_NOARGS, 0}, + {"__getobliquity", (PyCFunction)__pyx_pw_3tpm_6TSTATE_59__getobliquity, METH_NOARGS, 0}, + {"__getnut_lon", (PyCFunction)__pyx_pw_3tpm_6TSTATE_61__getnut_lon, METH_NOARGS, 0}, + {"__getnut_obl", (PyCFunction)__pyx_pw_3tpm_6TSTATE_63__getnut_obl, METH_NOARGS, 0}, + {"__getnm", (PyCFunction)__pyx_pw_3tpm_6TSTATE_65__getnm, METH_NOARGS, 0}, + {"__getpm", (PyCFunction)__pyx_pw_3tpm_6TSTATE_67__getpm, METH_NOARGS, 0}, + {"__getut1", (PyCFunction)__pyx_pw_3tpm_6TSTATE_69__getut1, METH_NOARGS, 0}, + {"__getgmst", (PyCFunction)__pyx_pw_3tpm_6TSTATE_71__getgmst, METH_NOARGS, 0}, + {"__getgast", (PyCFunction)__pyx_pw_3tpm_6TSTATE_73__getgast, METH_NOARGS, 0}, + {"__getlast", (PyCFunction)__pyx_pw_3tpm_6TSTATE_75__getlast, METH_NOARGS, 0}, + {"__geteb", (PyCFunction)__pyx_pw_3tpm_6TSTATE_77__geteb, METH_NOARGS, 0}, + {"__geteh", (PyCFunction)__pyx_pw_3tpm_6TSTATE_79__geteh, METH_NOARGS, 0}, + {"__getobs_m", (PyCFunction)__pyx_pw_3tpm_6TSTATE_81__getobs_m, METH_NOARGS, 0}, + {"__getobs_t", (PyCFunction)__pyx_pw_3tpm_6TSTATE_83__getobs_t, METH_NOARGS, 0}, + {"__getobs_s", (PyCFunction)__pyx_pw_3tpm_6TSTATE_85__getobs_s, METH_NOARGS, 0}, + {"__getrefa", (PyCFunction)__pyx_pw_3tpm_6TSTATE_87__getrefa, METH_NOARGS, 0}, + {"__getrefb", (PyCFunction)__pyx_pw_3tpm_6TSTATE_89__getrefb, METH_NOARGS, 0}, + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_6TSTATE_91__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_6TSTATE_93__setstate_cython__, METH_O, 0}, {0, 0, 0, 0} }; -static PyNumberMethods __pyx_tp_as_number_M6 = { - __pyx_pf_5pytpm_3tpm_2M6_10__add__, /*nb_add*/ - __pyx_pf_5pytpm_3tpm_2M6_11__sub__, /*nb_subtract*/ - __pyx_pf_5pytpm_3tpm_2M6_12__mul__, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence_M6 = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_M6 = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_M6 = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_5pytpm_3tpm_M6 = { +static PyTypeObject __pyx_type_3tpm_TSTATE = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.M6"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_M6), /*tp_basicsize*/ + "tpm.TSTATE", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_TSTATE), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_M6, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_TSTATE, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_M6, /*tp_as_number*/ - &__pyx_tp_as_sequence_M6, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_M6, /*tp_as_mapping*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ - __pyx_pf_5pytpm_3tpm_2M6_13__str__, /*tp_str*/ + 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_M6, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class that wraps M6 structure.\n\n This is essential a 2x2 array of tpm.M3 matrices.\n\n Attributes\n ----------\n pp : tpm.M3\n m6[0][0].\n pv : tpm.M3\n m6[0][1].\n vp : tpm.M3\n m6[1][0].\n vv : tpm.M3\n m6[1][1]\n\n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class corresponding to TPM TSTATE structure.\n\n The class stores all 30 quantities needed to define a state in\n TPM. These quantities are accessible as attributes of an\n object. The 12 independent attributes are read-write and the 18\n dependent attributes are read-only.\n\n Parameters\n ----------\n utc : float\n The \"current time\" as a Julian date (UTC).\n delta_at : float\n TAI - UTC in seconds.\n delta_ut : float\n UT1 - UTC in seconds.\n lon : float\n Longitude of an observer in radians. Eastern longitudes are\n positive.\n lat : float\n Latitude of an observer in radians. Northern latitide are\n positive.\n alt : float\n Altitude of an observer in meters.\n xpole : float\n Polar motion in radians.\n ypole : float\n Polar motion in radians.\n T : float\n Temperature in Kelvins.\n P : float\n Pressure in milli-bars.\n H : float\n Ambient humidity [0-1].\n wavelength : float\n Wavelength of observation in microns.\n\n Attributes\n ----------\n utc : float\n The \"current time\" as a Julian date (UTC).\n delta_at : float\n TAI - UTC in seconds.\n delta_ut : float\n UT1 - UTC in seconds.\n lon : float\n Longitude of an observer in radians. Eastern longitudes are\n positive.\n lat : float\n Latitude of an observer in radians. Northern latitide are\n positive.\n alt : float\n Altitude of an observer in meters.\n xpole : float\n Polar motion in radians.\n ypole : float\n Polar motion in radians.\n T : float\n Temperature in Kelvins.\n P : float\n Pressure in milli-bars.\n H : float\n Ambient humidity [0-1].\n wavelength : float\n Wavelength of observation in microns.\n tai : float\n International Atomic Time as a Julian date.\n tdt : float\n Terrestrial Dyn""amic Time (Terrestrial Time) as a Julian date.\n tdb : float\n Barycentric Dynamic Time as a Julian date.\n obliquity : float\n Mean obliquity of the ecliptic at the \"current time\" in\n radians.\n nut_lon : float\n Nutation in longitude in radinas.\n nut_obl : float\n Nutation in obliquity in radians.\n nm : tpm.M3\n Nutation matric for \"current time\".\n pm : tpm.M3\n Precession matric from J2000.0 to \"current time\".\n ut1 : float\n Universal Time as a Julian date.\n gmst : float\n Greewich Mean Sidereal Time in radians.\n gast : float\n Greewich Apparent Sidereal Time in radians.\n last : float\n Local Apparent Sidereal Time in radians.\n eb : tpm.V6C\n Barycentric Earth position and velocity, w.r.t mean J2000.0\n equator and equinox.\n eh : tpm.V6C\n Heliocentric Earth position and velocity, w.r.t mean J2000.0\n equator and equinox.\n obs_m : tpm.V6C\n Geocentric Earth-fixed mean state vector.\n obs_t : tpm.V6C\n Geocentric Earth-fixed true state vector. This takes into\n account polar motion.\n obs_s : tpm.V6C\n Geocentric space-fixed true state vector.\n refa : float\n Refraction coefficient.\n refb : float\n Refraction coefficient.\n \n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_M6, /*tp_methods*/ + __pyx_methods_3tpm_TSTATE, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -29621,9 +42044,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_M6 = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_2M6_1__init__, /*tp_init*/ + __pyx_pw_3tpm_6TSTATE_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_M6, /*tp_new*/ + __pyx_tp_new_3tpm_TSTATE, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29632,138 +42055,75 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_M6 = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_TSTATE __pyx_vtable_5pytpm_3tpm_TSTATE; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_TSTATE(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_TSTATE *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_TSTATE *)o); - p->__pyx_vtab = __pyx_vtabptr_5pytpm_3tpm_TSTATE; - if (__pyx_pf_5pytpm_3tpm_6TSTATE___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; +static struct __pyx_vtabstruct_3tpm_PVEC __pyx_vtable_3tpm_PVEC; + +static PyObject *__pyx_tp_new_3tpm_PVEC(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + struct __pyx_obj_3tpm_PVEC *p; + PyObject *o; + if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { + o = (*t->tp_alloc)(t, 0); + } else { + o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); } + if (unlikely(!o)) return 0; + p = ((struct __pyx_obj_3tpm_PVEC *)o); + p->__pyx_vtab = __pyx_vtabptr_3tpm_PVEC; + if (unlikely(__pyx_pw_3tpm_4PVEC_1__cinit__(o, __pyx_empty_tuple, NULL) < 0)) goto bad; return o; + bad: + Py_DECREF(o); o = 0; + return NULL; } -static void __pyx_tp_dealloc_5pytpm_3tpm_TSTATE(PyObject *o) { +static void __pyx_tp_dealloc_3tpm_PVEC(PyObject *o) { + #if CYTHON_USE_TP_FINALIZE + if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + #endif (*Py_TYPE(o)->tp_free)(o); } +static PyObject *__pyx_sq_item_3tpm_PVEC(PyObject *o, Py_ssize_t i) { + PyObject *r; + PyObject *x = PyInt_FromSsize_t(i); if(!x) return 0; + r = Py_TYPE(o)->tp_as_mapping->mp_subscript(o, x); + Py_DECREF(x); + return r; +} -static PyMethodDef __pyx_methods_5pytpm_3tpm_TSTATE[] = { - {__Pyx_NAMESTR("__getutc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_2__getutc, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setutc"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_3__setutc, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getdelta_at"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_4__getdelta_at, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdelta_at"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_5__setdelta_at, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getdelta_ut"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_6__getdelta_ut, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setdelta_ut"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_7__setdelta_ut, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getlon"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_8__getlon, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setlon"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_9__setlon, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getlat"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_10__getlat, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setlat"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_11__setlat, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getalt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_12__getalt, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setalt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_13__setalt, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getxpole"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_14__getxpole, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setxpole"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_15__setxpole, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getypole"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_16__getypole, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setypole"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_17__setypole, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getT"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_18__getT, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setT"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_19__setT, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getP"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_20__getP, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setP"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_21__setP, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getH"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_22__getH, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setH"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_23__setH, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getwavelength"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_24__getwavelength, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__setwavelength"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_25__setwavelength, METH_O, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gettai"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_26__gettai, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gettdt"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_27__gettdt, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__gettdb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_28__gettdb, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getobliquity"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_29__getobliquity, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getnut_lon"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_30__getnut_lon, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getnut_obl"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_31__getnut_obl, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getnm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_32__getnm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getpm"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_33__getpm, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getut1"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_34__getut1, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getgmst"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_35__getgmst, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getgast"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_36__getgast, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getlast"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_37__getlast, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__geteb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_38__geteb, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__geteh"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_39__geteh, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getobs_m"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_40__getobs_m, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getobs_t"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_41__getobs_t, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getobs_s"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_42__getobs_s, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getrefa"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_43__getrefa, METH_NOARGS, __Pyx_DOCSTR(0)}, - {__Pyx_NAMESTR("__getrefb"), (PyCFunction)__pyx_pf_5pytpm_3tpm_6TSTATE_44__getrefb, METH_NOARGS, __Pyx_DOCSTR(0)}, - {0, 0, 0, 0} -}; +static int __pyx_mp_ass_subscript_3tpm_PVEC(PyObject *o, PyObject *i, PyObject *v) { + if (v) { + return __pyx_pw_3tpm_4PVEC_7__setitem__(o, i, v); + } + else { + PyErr_Format(PyExc_NotImplementedError, + "Subscript deletion not supported by %.200s", Py_TYPE(o)->tp_name); + return -1; + } +} -static PyNumberMethods __pyx_tp_as_number_TSTATE = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif +static PyMethodDef __pyx_methods_3tpm_PVEC[] = { + {"__reduce_cython__", (PyCFunction)__pyx_pw_3tpm_4PVEC_9__reduce_cython__, METH_NOARGS, 0}, + {"__setstate_cython__", (PyCFunction)__pyx_pw_3tpm_4PVEC_11__setstate_cython__, METH_O, 0}, + {0, 0, 0, 0} }; -static PySequenceMethods __pyx_tp_as_sequence_TSTATE = { +static PySequenceMethods __pyx_tp_as_sequence_PVEC = { 0, /*sq_length*/ 0, /*sq_concat*/ 0, /*sq_repeat*/ - 0, /*sq_item*/ + __pyx_sq_item_3tpm_PVEC, /*sq_item*/ 0, /*sq_slice*/ 0, /*sq_ass_item*/ 0, /*sq_ass_slice*/ @@ -29772,66 +42132,51 @@ static PySequenceMethods __pyx_tp_as_sequence_TSTATE = { 0, /*sq_inplace_repeat*/ }; -static PyMappingMethods __pyx_tp_as_mapping_TSTATE = { +static PyMappingMethods __pyx_tp_as_mapping_PVEC = { 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_TSTATE = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif + __pyx_pw_3tpm_4PVEC_5__getitem__, /*mp_subscript*/ + __pyx_mp_ass_subscript_3tpm_PVEC, /*mp_ass_subscript*/ }; -static PyTypeObject __pyx_type_5pytpm_3tpm_TSTATE = { +static PyTypeObject __pyx_type_3tpm_PVEC = { PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.TSTATE"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_TSTATE), /*tp_basicsize*/ + "tpm.PVEC", /*tp_name*/ + sizeof(struct __pyx_obj_3tpm_PVEC), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_TSTATE, /*tp_dealloc*/ + __pyx_tp_dealloc_3tpm_PVEC, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ - #else - 0, /*reserved*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ #endif 0, /*tp_repr*/ - &__pyx_tp_as_number_TSTATE, /*tp_as_number*/ - &__pyx_tp_as_sequence_TSTATE, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_TSTATE, /*tp_as_mapping*/ + 0, /*tp_as_number*/ + &__pyx_tp_as_sequence_PVEC, /*tp_as_sequence*/ + &__pyx_tp_as_mapping_PVEC, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_TSTATE, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class corresponding to TPM TSTATE structure.\n\n The class stores all 30 quantities needed to define a state in\n TPM. These quantities are accessible as attributes of an\n object. The 12 independent attributes are read-write and the 18\n dependent attributes are read-only.\n\n Parameters\n ----------\n utc : float\n The \"current time\" as a Julian date (UTC).\n delta_at : float\n TAI - UTC in seconds.\n delta_ut : float\n UT1 - UTC in seconds.\n lon : float\n Longitude of an observer in radians. Eastern longitudes are\n positive.\n lat : float\n Latitude of an observer in radians. Northern latitide are\n positive.\n alt : float\n Altitude of an observer in meters.\n xpole : float\n Polar motion in radians.\n ypole : float\n Polar motion in radians.\n T : float\n Temperature in Kelvins.\n P : float\n Pressure in milli-bars.\n H : float\n Ambient humidity [0-1].\n wavelength : float\n Wavelength of observation in microns.\n\n Attributes\n ----------\n utc : float\n The \"current time\" as a Julian date (UTC).\n delta_at : float\n TAI - UTC in seconds.\n delta_ut : float\n UT1 - UTC in seconds.\n lon : float\n Longitude of an observer in radians. Eastern longitudes are\n positive.\n lat : float\n Latitude of an observer in radians. Northern latitide are\n positive.\n alt : float\n Altitude of an observer in meters.\n xpole : float\n Polar motion in radians.\n ypole : float\n Polar motion in radians.\n T : float\n Temperature in Kelvins.\n P : float\n Pressure in milli-bars.\n H : float\n Ambient humidity [0-1].\n wavelength : float\n Wavelength of observation in microns.\n tai : float\n International Atomic Time as a Julian date.\n tdt : float\n Terrestrial Dynamic Time (Terrestrial Time) as a Julian date.\n tdb : float\n Barycentric Dynamic Time as a Julian date.\n obliquity : float\n Mean obliquity of the ecliptic at the \"current time\" in\n radians.\n nut_lon : float\n Nutation in longitude in radinas.\n nut_obl : float\n Nutation in obliquity in radians.\n nm : tpm.M3\n Nutation matric for \"current time\".\n pm : tpm.M3\n Precession matric from J2000.0 to \"current time\".\n ut1 : float\n Universal Time as a Julian date.\n gmst : float\n Greewich Mean Sidereal Time in radians.\n gast : float\n Greewich Apparent Sidereal Time in radians.\n last : float\n Local Apparent Sidereal Time in radians.\n eb : tpm.V6C\n Barycentric Earth position and velocity, w.r.t mean J2000.0\n equator and equinox.\n eh : tpm.V6C\n Heliocentric Earth position and velocity, w.r.t mean J2000.0\n equator and equinox.\n obs_m : tpm.V6C\n Geocentric Earth-fixed mean state vector.\n obs_t : tpm.V6C\n Geocentric Earth-fixed true state vector. This takes into\n account polar motion.\n obs_s : tpm.V6C\n Geocentric space-fixed true state vector.\n refa : float\n Refraction coefficient.\n refb : float\n Refraction coefficient.\n \n "), /*tp_doc*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ + "Class for holding N_TPM_STATES element array of V6 vectors.\n\n This is a list like object with valid indexes from 0 to 21. Each\n index represents the state having the same number. Each index\n location stores a V6C vector corresponding to that state.\n ", /*tp_doc*/ 0, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_TSTATE, /*tp_methods*/ + __pyx_methods_3tpm_PVEC, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ @@ -29839,9 +42184,9 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_TSTATE = { 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_6TSTATE_1__init__, /*tp_init*/ + __pyx_pw_3tpm_4PVEC_3__init__, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_TSTATE, /*tp_new*/ + __pyx_tp_new_3tpm_PVEC, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -29850,1017 +42195,2461 @@ static PyTypeObject __pyx_type_5pytpm_3tpm_TSTATE = { 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + 0, /*tp_finalize*/ + #endif + #if PY_VERSION_HEX >= 0x030800b1 + 0, /*tp_vectorcall*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 + 0, /*tp_print*/ #endif }; -static struct __pyx_vtabstruct_5pytpm_3tpm_PVEC __pyx_vtable_5pytpm_3tpm_PVEC; - -static PyObject *__pyx_tp_new_5pytpm_3tpm_PVEC(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_5pytpm_3tpm_PVEC *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_5pytpm_3tpm_PVEC *)o); - p->__pyx_vtab = __pyx_vtabptr_5pytpm_3tpm_PVEC; - if (__pyx_pf_5pytpm_3tpm_4PVEC___cinit__(o, __pyx_empty_tuple, NULL) < 0) { - Py_DECREF(o); o = 0; - } - return o; -} - -static void __pyx_tp_dealloc_5pytpm_3tpm_PVEC(PyObject *o) { - (*Py_TYPE(o)->tp_free)(o); -} -static PyObject *__pyx_sq_item_5pytpm_3tpm_PVEC(PyObject *o, Py_ssize_t i) { - PyObject *r; - PyObject *x = PyInt_FromSsize_t(i); if(!x) return 0; - r = Py_TYPE(o)->tp_as_mapping->mp_subscript(o, x); - Py_DECREF(x); - return r; -} - -static int __pyx_mp_ass_subscript_5pytpm_3tpm_PVEC(PyObject *o, PyObject *i, PyObject *v) { - if (v) { - return __pyx_pf_5pytpm_3tpm_4PVEC_3__setitem__(o, i, v); - } - else { - PyErr_Format(PyExc_NotImplementedError, - "Subscript deletion not supported by %s", Py_TYPE(o)->tp_name); - return -1; - } -} -static PyMethodDef __pyx_methods_5pytpm_3tpm_PVEC[] = { +static PyMethodDef __pyx_methods[] = { {0, 0, 0, 0} }; -static PyNumberMethods __pyx_tp_as_number_PVEC = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ +#if PY_MAJOR_VERSION >= 3 +#if CYTHON_PEP489_MULTI_PHASE_INIT +static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ +static int __pyx_pymod_exec_tpm(PyObject* module); /*proto*/ +static PyModuleDef_Slot __pyx_moduledef_slots[] = { + {Py_mod_create, (void*)__pyx_pymod_create}, + {Py_mod_exec, (void*)__pyx_pymod_exec_tpm}, + {0, NULL} +}; +#endif + +static struct PyModuleDef __pyx_moduledef = { + PyModuleDef_HEAD_INIT, + "tpm", + 0, /* m_doc */ + #if CYTHON_PEP489_MULTI_PHASE_INIT + 0, /* m_size */ + #else + -1, /* m_size */ #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ + __pyx_methods /* m_methods */, + #if CYTHON_PEP489_MULTI_PHASE_INIT + __pyx_moduledef_slots, /* m_slots */ #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ + NULL, /* m_reload */ #endif + NULL, /* m_traverse */ + NULL, /* m_clear */ + NULL /* m_free */ }; +#endif +#ifndef CYTHON_SMALL_CODE +#if defined(__clang__) + #define CYTHON_SMALL_CODE +#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) + #define CYTHON_SMALL_CODE __attribute__((cold)) +#else + #define CYTHON_SMALL_CODE +#endif +#endif -static PySequenceMethods __pyx_tp_as_sequence_PVEC = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - __pyx_sq_item_5pytpm_3tpm_PVEC, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ +static __Pyx_StringTabEntry __pyx_string_tab[] = { + {&__pyx_kp_s_ALPHA_coordinate, __pyx_k_ALPHA_coordinate, sizeof(__pyx_k_ALPHA_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_u_A_string_representation_in_the_r, __pyx_k_A_string_representation_in_the_r, sizeof(__pyx_k_A_string_representation_in_the_r), 0, 1, 0, 0}, + {&__pyx_kp_s_Altitude_above_geoid_in_meters, __pyx_k_Altitude_above_geoid_in_meters, sizeof(__pyx_k_Altitude_above_geoid_in_meters), 0, 0, 1, 0}, + {&__pyx_kp_s_Ambient_humidity_0_1, __pyx_k_Ambient_humidity_0_1, sizeof(__pyx_k_Ambient_humidity_0_1), 0, 0, 1, 0}, + {&__pyx_kp_s_Ambient_pressure_in_millibars, __pyx_k_Ambient_pressure_in_millibars, sizeof(__pyx_k_Ambient_pressure_in_millibars), 0, 0, 1, 0}, + {&__pyx_kp_s_Ambient_temperature_in_Kelvins, __pyx_k_Ambient_temperature_in_Kelvins, sizeof(__pyx_k_Ambient_temperature_in_Kelvins), 0, 0, 1, 0}, + {&__pyx_n_s_B1950, __pyx_k_B1950, sizeof(__pyx_k_B1950), 0, 0, 1, 1}, + {&__pyx_kp_s_Barycentric_Dynamic_Time, __pyx_k_Barycentric_Dynamic_Time, sizeof(__pyx_k_Barycentric_Dynamic_Time), 0, 0, 1, 0}, + {&__pyx_kp_s_Barycentric_Earth_state_vector, __pyx_k_Barycentric_Earth_state_vector, sizeof(__pyx_k_Barycentric_Earth_state_vector), 0, 0, 1, 0}, + {&__pyx_n_s_C, __pyx_k_C, sizeof(__pyx_k_C), 0, 0, 1, 1}, + {&__pyx_n_s_CARTESIAN, __pyx_k_CARTESIAN, sizeof(__pyx_k_CARTESIAN), 0, 0, 1, 1}, + {&__pyx_n_s_CB, __pyx_k_CB, sizeof(__pyx_k_CB), 0, 0, 1, 1}, + {&__pyx_n_s_CJ, __pyx_k_CJ, sizeof(__pyx_k_CJ), 0, 0, 1, 1}, + {&__pyx_kp_s_Can_only_add_two_DMS_values, __pyx_k_Can_only_add_two_DMS_values, sizeof(__pyx_k_Can_only_add_two_DMS_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_add_two_HMS_values, __pyx_k_Can_only_add_two_HMS_values, sizeof(__pyx_k_Can_only_add_two_HMS_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_add_two_JD_values, __pyx_k_Can_only_add_two_JD_values, sizeof(__pyx_k_Can_only_add_two_JD_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_add_two_V3CP_values, __pyx_k_Can_only_add_two_V3CP_values, sizeof(__pyx_k_Can_only_add_two_V3CP_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_add_two_V3SP_values, __pyx_k_Can_only_add_two_V3SP_values, sizeof(__pyx_k_Can_only_add_two_V3SP_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_add_two_V6C_values, __pyx_k_Can_only_add_two_V6C_values, sizeof(__pyx_k_Can_only_add_two_V6C_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_subtract_two_DMS_values, __pyx_k_Can_only_subtract_two_DMS_values, sizeof(__pyx_k_Can_only_subtract_two_DMS_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_subtract_two_HMS_values, __pyx_k_Can_only_subtract_two_HMS_values, sizeof(__pyx_k_Can_only_subtract_two_HMS_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_subtract_two_V3CP_value, __pyx_k_Can_only_subtract_two_V3CP_value, sizeof(__pyx_k_Can_only_subtract_two_V3CP_value), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_subtract_two_V3SP_value, __pyx_k_Can_only_subtract_two_V3SP_value, sizeof(__pyx_k_Can_only_subtract_two_V3SP_value), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_subtract_two_V6C_values, __pyx_k_Can_only_subtract_two_V6C_values, sizeof(__pyx_k_Can_only_subtract_two_V6C_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_subtract_two_YMD_values, __pyx_k_Can_only_subtract_two_YMD_values, sizeof(__pyx_k_Can_only_subtract_two_YMD_values), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_take_cross_product_of_t, __pyx_k_Can_only_take_cross_product_of_t, sizeof(__pyx_k_Can_only_take_cross_product_of_t), 0, 0, 1, 0}, + {&__pyx_kp_s_Can_only_take_dot_product_of_two, __pyx_k_Can_only_take_dot_product_of_two, sizeof(__pyx_k_Can_only_take_dot_product_of_two), 0, 0, 1, 0}, + {&__pyx_kp_u_Convert_Besselian_year_into_a_Ju, __pyx_k_Convert_Besselian_year_into_a_Ju, sizeof(__pyx_k_Convert_Besselian_year_into_a_Ju), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Gregorian_calendar_year, __pyx_k_Convert_Gregorian_calendar_year, sizeof(__pyx_k_Convert_Gregorian_calendar_year), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_JD_into_year_Gregorian_c, __pyx_k_Convert_JD_into_year_Gregorian_c, sizeof(__pyx_k_Convert_JD_into_year_Gregorian_c), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_JD_to_a_scalar_Julian_da, __pyx_k_Convert_JD_to_a_scalar_Julian_da, sizeof(__pyx_k_Convert_JD_to_a_scalar_Julian_da), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Julian_date_into_Gregori, __pyx_k_Convert_Julian_date_into_Gregori, sizeof(__pyx_k_Convert_Julian_date_into_Gregori), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Julian_date_into_Gregori_2, __pyx_k_Convert_Julian_date_into_Gregori_2, sizeof(__pyx_k_Convert_Julian_date_into_Gregori_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Julian_date_into_Julian, __pyx_k_Convert_Julian_date_into_Julian, sizeof(__pyx_k_Convert_Julian_date_into_Julian), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Julian_date_into_Julian_2, __pyx_k_Convert_Julian_date_into_Julian_2, sizeof(__pyx_k_Convert_Julian_date_into_Julian_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Julian_date_into_a_Besse, __pyx_k_Convert_Julian_date_into_a_Besse, sizeof(__pyx_k_Convert_Julian_date_into_a_Besse), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_Julian_year_into_a_Julia, __pyx_k_Convert_Julian_year_into_a_Julia, sizeof(__pyx_k_Convert_Julian_year_into_a_Julia), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_YMD_into_scalar_Julian_d, __pyx_k_Convert_YMD_into_scalar_Julian_d, sizeof(__pyx_k_Convert_YMD_into_scalar_Julian_d), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_arc_seconds_int, __pyx_k_Convert_angle_in_arc_seconds_int, sizeof(__pyx_k_Convert_angle_in_arc_seconds_int), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_arc_seconds_int_2, __pyx_k_Convert_angle_in_arc_seconds_int_2, sizeof(__pyx_k_Convert_angle_in_arc_seconds_int_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_arc_seconds_int_3, __pyx_k_Convert_angle_in_arc_seconds_int_3, sizeof(__pyx_k_Convert_angle_in_arc_seconds_int_3), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_degrees_into_ar, __pyx_k_Convert_angle_in_degrees_into_ar, sizeof(__pyx_k_Convert_angle_in_degrees_into_ar), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_degrees_into_de, __pyx_k_Convert_angle_in_degrees_into_de, sizeof(__pyx_k_Convert_angle_in_degrees_into_de), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_degrees_into_ho, __pyx_k_Convert_angle_in_degrees_into_ho, sizeof(__pyx_k_Convert_angle_in_degrees_into_ho), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_hours_into_arc, __pyx_k_Convert_angle_in_hours_into_arc, sizeof(__pyx_k_Convert_angle_in_hours_into_arc), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_hours_into_degr, __pyx_k_Convert_angle_in_hours_into_degr, sizeof(__pyx_k_Convert_angle_in_hours_into_degr), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_hours_into_radi, __pyx_k_Convert_angle_in_hours_into_radi, sizeof(__pyx_k_Convert_angle_in_hours_into_radi), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_radians_into_ar, __pyx_k_Convert_angle_in_radians_into_ar, sizeof(__pyx_k_Convert_angle_in_radians_into_ar), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_radians_into_de, __pyx_k_Convert_angle_in_radians_into_de, sizeof(__pyx_k_Convert_angle_in_radians_into_de), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_angle_in_radians_into_ho, __pyx_k_Convert_angle_in_radians_into_ho, sizeof(__pyx_k_Convert_angle_in_radians_into_ho), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_date_time_into_a_year_nu, __pyx_k_Convert_date_time_into_a_year_nu, sizeof(__pyx_k_Convert_date_time_into_a_year_nu), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_into_a_tpm_JD_object_Ret, __pyx_k_Convert_into_a_tpm_JD_object_Ret, sizeof(__pyx_k_Convert_into_a_tpm_JD_object_Ret), 0, 1, 0, 0}, + {&__pyx_kp_u_Convert_to_YMD_Gregorian_calenda, __pyx_k_Convert_to_YMD_Gregorian_calenda, sizeof(__pyx_k_Convert_to_YMD_Gregorian_calenda), 0, 1, 0, 0}, + {&__pyx_kp_s_DELTA_AT_TAI_UTC_s, __pyx_k_DELTA_AT_TAI_UTC_s, sizeof(__pyx_k_DELTA_AT_TAI_UTC_s), 0, 0, 1, 0}, + {&__pyx_kp_s_DELTA_UT_UT1_UTC_s, __pyx_k_DELTA_UT_UT1_UTC_s, sizeof(__pyx_k_DELTA_UT_UT1_UTC_s), 0, 0, 1, 0}, + {&__pyx_kp_s_DELTA_coordinate, __pyx_k_DELTA_coordinate, sizeof(__pyx_k_DELTA_coordinate), 0, 0, 1, 0}, + {&__pyx_n_s_DMS, __pyx_k_DMS, sizeof(__pyx_k_DMS), 0, 0, 1, 1}, + {&__pyx_kp_u_DMS_normalize_line_161, __pyx_k_DMS_normalize_line_161, sizeof(__pyx_k_DMS_normalize_line_161), 0, 1, 0, 0}, + {&__pyx_kp_s_Day_as_a_float, __pyx_k_Day_as_a_float, sizeof(__pyx_k_Day_as_a_float), 0, 0, 1, 0}, + {&__pyx_kp_u_Day_of_the_year_corresponding_to, __pyx_k_Day_of_the_year_corresponding_to, sizeof(__pyx_k_Day_of_the_year_corresponding_to), 0, 1, 0, 0}, + {&__pyx_kp_s_Degrees, __pyx_k_Degrees, sizeof(__pyx_k_Degrees), 0, 0, 1, 0}, + {&__pyx_kp_s_East_longitude_in_radians, __pyx_k_East_longitude_in_radians, sizeof(__pyx_k_East_longitude_in_radians), 0, 0, 1, 0}, + {&__pyx_n_s_FRIDAY, __pyx_k_FRIDAY, sizeof(__pyx_k_FRIDAY), 0, 0, 1, 1}, + {&__pyx_kp_u_Format_Julian_date_into_a_string, __pyx_k_Format_Julian_date_into_a_string, sizeof(__pyx_k_Format_Julian_date_into_a_string), 0, 1, 0, 0}, + {&__pyx_kp_u_Format_angle_in_degrees_into_a_s, __pyx_k_Format_angle_in_degrees_into_a_s, sizeof(__pyx_k_Format_angle_in_degrees_into_a_s), 0, 1, 0, 0}, + {&__pyx_kp_u_Format_hours_into_a_string_H_M_S, __pyx_k_Format_hours_into_a_string_H_M_S, sizeof(__pyx_k_Format_hours_into_a_string_H_M_S), 0, 1, 0, 0}, + {&__pyx_kp_u_Format_radians_into_a_string_wit, __pyx_k_Format_radians_into_a_string_wit, sizeof(__pyx_k_Format_radians_into_a_string_wit), 0, 1, 0, 0}, + {&__pyx_kp_u_Format_years_including_fractiona, __pyx_k_Format_years_including_fractiona, sizeof(__pyx_k_Format_years_including_fractiona), 0, 1, 0, 0}, + {&__pyx_n_s_GAL_DEC, __pyx_k_GAL_DEC, sizeof(__pyx_k_GAL_DEC), 0, 0, 1, 1}, + {&__pyx_n_s_GAL_LON, __pyx_k_GAL_LON, sizeof(__pyx_k_GAL_LON), 0, 0, 1, 1}, + {&__pyx_n_s_GAL_RA, __pyx_k_GAL_RA, sizeof(__pyx_k_GAL_RA), 0, 0, 1, 1}, + {&__pyx_kp_s_Geocentric_Earth_fixed_mean_stat, __pyx_k_Geocentric_Earth_fixed_mean_stat, sizeof(__pyx_k_Geocentric_Earth_fixed_mean_stat), 0, 0, 1, 0}, + {&__pyx_kp_s_Geocentric_Earth_fixed_true_stat, __pyx_k_Geocentric_Earth_fixed_true_stat, sizeof(__pyx_k_Geocentric_Earth_fixed_true_stat), 0, 0, 1, 0}, + {&__pyx_kp_s_Geocentric_space_fixed_true_stat, __pyx_k_Geocentric_space_fixed_true_stat, sizeof(__pyx_k_Geocentric_space_fixed_true_stat), 0, 0, 1, 0}, + {&__pyx_kp_s_Greewich_Apparent_Sidereal_Time, __pyx_k_Greewich_Apparent_Sidereal_Time, sizeof(__pyx_k_Greewich_Apparent_Sidereal_Time), 0, 0, 1, 0}, + {&__pyx_kp_s_Greewich_Mean_Sidereal_Time, __pyx_k_Greewich_Mean_Sidereal_Time, sizeof(__pyx_k_Greewich_Mean_Sidereal_Time), 0, 0, 1, 0}, + {&__pyx_n_s_H, __pyx_k_H, sizeof(__pyx_k_H), 0, 0, 1, 1}, + {&__pyx_n_s_HMS, __pyx_k_HMS, sizeof(__pyx_k_HMS), 0, 0, 1, 1}, + {&__pyx_kp_u_HMS_normalize_line_367, __pyx_k_HMS_normalize_line_367, sizeof(__pyx_k_HMS_normalize_line_367), 0, 1, 0, 0}, + {&__pyx_kp_s_Heliocentric_Earth_state_vector, __pyx_k_Heliocentric_Earth_state_vector, sizeof(__pyx_k_Heliocentric_Earth_state_vector), 0, 0, 1, 0}, + {&__pyx_kp_s_Hours, __pyx_k_Hours, sizeof(__pyx_k_Hours), 0, 0, 1, 0}, + {&__pyx_kp_s_Hours_as_a_float, __pyx_k_Hours_as_a_float, sizeof(__pyx_k_Hours_as_a_float), 0, 0, 1, 0}, + {&__pyx_n_s_IAU_AU, __pyx_k_IAU_AU, sizeof(__pyx_k_IAU_AU), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_C, __pyx_k_IAU_C, sizeof(__pyx_k_IAU_C), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_DM, __pyx_k_IAU_DM, sizeof(__pyx_k_IAU_DM), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_F, __pyx_k_IAU_F, sizeof(__pyx_k_IAU_F), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_K, __pyx_k_IAU_K, sizeof(__pyx_k_IAU_K), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_KAPPA, __pyx_k_IAU_KAPPA, sizeof(__pyx_k_IAU_KAPPA), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_RE, __pyx_k_IAU_RE, sizeof(__pyx_k_IAU_RE), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_RM, __pyx_k_IAU_RM, sizeof(__pyx_k_IAU_RM), 0, 0, 1, 1}, + {&__pyx_n_s_IAU_W, __pyx_k_IAU_W, sizeof(__pyx_k_IAU_W), 0, 0, 1, 1}, + {&__pyx_n_s_IndexError, __pyx_k_IndexError, sizeof(__pyx_k_IndexError), 0, 0, 1, 1}, + {&__pyx_kp_s_Index_must_be_an_integer, __pyx_k_Index_must_be_an_integer, sizeof(__pyx_k_Index_must_be_an_integer), 0, 0, 1, 0}, + {&__pyx_kp_s_Index_must_be_in_0_index_N_TPM_S, __pyx_k_Index_must_be_in_0_index_N_TPM_S, sizeof(__pyx_k_Index_must_be_in_0_index_N_TPM_S), 0, 0, 1, 0}, + {&__pyx_kp_s_International_Atomic_Time, __pyx_k_International_Atomic_Time, sizeof(__pyx_k_International_Atomic_Time), 0, 0, 1, 0}, + {&__pyx_kp_s_Invalid_keyword_0, __pyx_k_Invalid_keyword_0, sizeof(__pyx_k_Invalid_keyword_0), 0, 0, 1, 0}, + {&__pyx_n_s_J1984, __pyx_k_J1984, sizeof(__pyx_k_J1984), 0, 0, 1, 1}, + {&__pyx_n_s_J2000, __pyx_k_J2000, sizeof(__pyx_k_J2000), 0, 0, 1, 1}, + {&__pyx_n_s_JD, __pyx_k_JD, sizeof(__pyx_k_JD), 0, 0, 1, 1}, + {&__pyx_kp_u_JD_normalize_line_847, __pyx_k_JD_normalize_line_847, sizeof(__pyx_k_JD_normalize_line_847), 0, 1, 0, 0}, + {&__pyx_kp_u_JD_to_j_line_888, __pyx_k_JD_to_j_line_888, sizeof(__pyx_k_JD_to_j_line_888), 0, 1, 0, 0}, + {&__pyx_kp_u_JD_to_year_line_905, __pyx_k_JD_to_year_line_905, sizeof(__pyx_k_JD_to_year_line_905), 0, 1, 0, 0}, + {&__pyx_kp_u_JD_to_ymd_line_865, __pyx_k_JD_to_ymd_line_865, sizeof(__pyx_k_JD_to_ymd_line_865), 0, 1, 0, 0}, + {&__pyx_kp_s_Latitude_in_radians, __pyx_k_Latitude_in_radians, sizeof(__pyx_k_Latitude_in_radians), 0, 0, 1, 0}, + {&__pyx_kp_s_Latitudinal_coordinate, __pyx_k_Latitudinal_coordinate, sizeof(__pyx_k_Latitudinal_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Local_Apparent_Sidereal_Time, __pyx_k_Local_Apparent_Sidereal_Time, sizeof(__pyx_k_Local_Apparent_Sidereal_Time), 0, 0, 1, 0}, + {&__pyx_kp_s_Longitudinal_coordinate, __pyx_k_Longitudinal_coordinate, sizeof(__pyx_k_Longitudinal_coordinate), 0, 0, 1, 0}, + {&__pyx_n_s_M3, __pyx_k_M3, sizeof(__pyx_k_M3), 0, 0, 1, 1}, + {&__pyx_n_s_M6, __pyx_k_M6, sizeof(__pyx_k_M6), 0, 0, 1, 1}, + {&__pyx_n_s_MJD_0, __pyx_k_MJD_0, sizeof(__pyx_k_MJD_0), 0, 0, 1, 1}, + {&__pyx_n_s_MONDAY, __pyx_k_MONDAY, sizeof(__pyx_k_MONDAY), 0, 0, 1, 1}, + {&__pyx_n_s_M_PI, __pyx_k_M_PI, sizeof(__pyx_k_M_PI), 0, 0, 1, 1}, + {&__pyx_kp_s_Minutes, __pyx_k_Minutes, sizeof(__pyx_k_Minutes), 0, 0, 1, 0}, + {&__pyx_kp_s_Minutes_as_a_float, __pyx_k_Minutes_as_a_float, sizeof(__pyx_k_Minutes_as_a_float), 0, 0, 1, 0}, + {&__pyx_kp_s_Minutes_of_arc, __pyx_k_Minutes_of_arc, sizeof(__pyx_k_Minutes_of_arc), 0, 0, 1, 0}, + {&__pyx_kp_s_Month_as_an_integer, __pyx_k_Month_as_an_integer, sizeof(__pyx_k_Month_as_an_integer), 0, 0, 1, 0}, + {&__pyx_kp_s_Month_must_be_an_integer, __pyx_k_Month_must_be_an_integer, sizeof(__pyx_k_Month_must_be_an_integer), 0, 0, 1, 0}, + {&__pyx_n_s_N_TPM_STATES, __pyx_k_N_TPM_STATES, sizeof(__pyx_k_N_TPM_STATES), 0, 0, 1, 1}, + {&__pyx_n_s_N_TPM_TRANS, __pyx_k_N_TPM_TRANS, sizeof(__pyx_k_N_TPM_TRANS), 0, 0, 1, 1}, + {&__pyx_kp_u_Normalize_YMD_The_components_y_m, __pyx_k_Normalize_YMD_The_components_y_m, sizeof(__pyx_k_Normalize_YMD_The_components_y_m), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_and_format_angle_in_ra, __pyx_k_Normalize_and_format_angle_in_ra, sizeof(__pyx_k_Normalize_and_format_angle_in_ra), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_and_format_angle_in_ra_2, __pyx_k_Normalize_and_format_angle_in_ra_2, sizeof(__pyx_k_Normalize_and_format_angle_in_ra_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_angle_in_degrees_into, __pyx_k_Normalize_angle_in_degrees_into, sizeof(__pyx_k_Normalize_angle_in_degrees_into), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_angle_in_hours_into_0, __pyx_k_Normalize_angle_in_hours_into_0, sizeof(__pyx_k_Normalize_angle_in_hours_into_0), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_angle_in_radians_into, __pyx_k_Normalize_angle_in_radians_into, sizeof(__pyx_k_Normalize_angle_in_radians_into), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_components_Normalizes, __pyx_k_Normalize_components_Normalizes, sizeof(__pyx_k_Normalize_components_Normalizes), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_components_Normalizes_2, __pyx_k_Normalize_components_Normalizes_2, sizeof(__pyx_k_Normalize_components_Normalizes_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Normalize_the_JD_structure_Norma, __pyx_k_Normalize_the_JD_structure_Norma, sizeof(__pyx_k_Normalize_the_JD_structure_Norma), 0, 1, 0, 0}, + {&__pyx_kp_s_Nutation_in_longitude, __pyx_k_Nutation_in_longitude, sizeof(__pyx_k_Nutation_in_longitude), 0, 0, 1, 0}, + {&__pyx_kp_s_Nutation_in_obliquity, __pyx_k_Nutation_in_obliquity, sizeof(__pyx_k_Nutation_in_obliquity), 0, 0, 1, 0}, + {&__pyx_kp_s_Nutation_matrix_for_NOW, __pyx_k_Nutation_matrix_for_NOW, sizeof(__pyx_k_Nutation_matrix_for_NOW), 0, 0, 1, 0}, + {&__pyx_kp_s_Obliquity_of_the_Ecliptic, __pyx_k_Obliquity_of_the_Ecliptic, sizeof(__pyx_k_Obliquity_of_the_Ecliptic), 0, 0, 1, 0}, + {&__pyx_kp_s_Observing_wavelength_in_microns, __pyx_k_Observing_wavelength_in_microns, sizeof(__pyx_k_Observing_wavelength_in_microns), 0, 0, 1, 0}, + {&__pyx_n_s_P, __pyx_k_P, sizeof(__pyx_k_P), 0, 0, 1, 1}, + {&__pyx_n_s_POLAR, __pyx_k_POLAR, sizeof(__pyx_k_POLAR), 0, 0, 1, 1}, + {&__pyx_n_s_POS, __pyx_k_POS, sizeof(__pyx_k_POS), 0, 0, 1, 1}, + {&__pyx_kp_s_PP_component, __pyx_k_PP_component, sizeof(__pyx_k_PP_component), 0, 0, 1, 0}, + {&__pyx_n_s_PRECESS_ANDOYER, __pyx_k_PRECESS_ANDOYER, sizeof(__pyx_k_PRECESS_ANDOYER), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_FK4, __pyx_k_PRECESS_FK4, sizeof(__pyx_k_PRECESS_FK4), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_FK5, __pyx_k_PRECESS_FK5, sizeof(__pyx_k_PRECESS_FK5), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_INERTIAL, __pyx_k_PRECESS_INERTIAL, sizeof(__pyx_k_PRECESS_INERTIAL), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_KINOSHITA, __pyx_k_PRECESS_KINOSHITA, sizeof(__pyx_k_PRECESS_KINOSHITA), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_LIESKE, __pyx_k_PRECESS_LIESKE, sizeof(__pyx_k_PRECESS_LIESKE), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_NEWCOMB, __pyx_k_PRECESS_NEWCOMB, sizeof(__pyx_k_PRECESS_NEWCOMB), 0, 0, 1, 1}, + {&__pyx_n_s_PRECESS_ROTATING, __pyx_k_PRECESS_ROTATING, sizeof(__pyx_k_PRECESS_ROTATING), 0, 0, 1, 1}, + {&__pyx_n_s_PVEC, __pyx_k_PVEC, sizeof(__pyx_k_PVEC), 0, 0, 1, 1}, + {&__pyx_kp_s_PV_component, __pyx_k_PV_component, sizeof(__pyx_k_PV_component), 0, 0, 1, 0}, + {&__pyx_kp_s_Polar_motion_in_radians, __pyx_k_Polar_motion_in_radians, sizeof(__pyx_k_Polar_motion_in_radians), 0, 0, 1, 0}, + {&__pyx_kp_s_Precession_matrix_from_J2000_to, __pyx_k_Precession_matrix_from_J2000_to, sizeof(__pyx_k_Precession_matrix_from_J2000_to), 0, 0, 1, 0}, + {&__pyx_kp_s_R_coordinate, __pyx_k_R_coordinate, sizeof(__pyx_k_R_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Radial_coordinate, __pyx_k_Radial_coordinate, sizeof(__pyx_k_Radial_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Rate_of_change_of_ALPHA_coordina, __pyx_k_Rate_of_change_of_ALPHA_coordina, sizeof(__pyx_k_Rate_of_change_of_ALPHA_coordina), 0, 0, 1, 0}, + {&__pyx_kp_s_Rate_of_change_of_DELTA_coordina, __pyx_k_Rate_of_change_of_DELTA_coordina, sizeof(__pyx_k_Rate_of_change_of_DELTA_coordina), 0, 0, 1, 0}, + {&__pyx_kp_s_Rate_of_change_of_R_coordinate, __pyx_k_Rate_of_change_of_R_coordinate, sizeof(__pyx_k_Rate_of_change_of_R_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Rate_of_change_of_X_coordinate, __pyx_k_Rate_of_change_of_X_coordinate, sizeof(__pyx_k_Rate_of_change_of_X_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Rate_of_change_of_Y_coordinate, __pyx_k_Rate_of_change_of_Y_coordinate, sizeof(__pyx_k_Rate_of_change_of_Y_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Rate_of_change_of_Z_coordinate, __pyx_k_Rate_of_change_of_Z_coordinate, sizeof(__pyx_k_Rate_of_change_of_Z_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Refraction_coefficient, __pyx_k_Refraction_coefficient, sizeof(__pyx_k_Refraction_coefficient), 0, 0, 1, 0}, + {&__pyx_kp_u_Return_Julian_day_number_for_the, __pyx_k_Return_Julian_day_number_for_the, sizeof(__pyx_k_Return_Julian_day_number_for_the), 0, 1, 0, 0}, + {&__pyx_kp_u_Return_Julian_day_number_for_the_2, __pyx_k_Return_Julian_day_number_for_the_2, sizeof(__pyx_k_Return_Julian_day_number_for_the_2), 0, 1, 0, 0}, + {&__pyx_kp_u_Return_day_of_week_for_the_given, __pyx_k_Return_day_of_week_for_the_given, sizeof(__pyx_k_Return_day_of_week_for_the_given), 0, 1, 0, 0}, + {&__pyx_kp_u_Return_number_of_days_in_the_giv, __pyx_k_Return_number_of_days_in_the_giv, sizeof(__pyx_k_Return_number_of_days_in_the_giv), 0, 1, 0, 0}, + {&__pyx_kp_u_Return_state_name_given_state_id, __pyx_k_Return_state_name_given_state_id, sizeof(__pyx_k_Return_state_name_given_state_id), 0, 1, 0, 0}, + {&__pyx_kp_s_S1_must_be_in_0_S1_N_TPM_STATES, __pyx_k_S1_must_be_in_0_S1_N_TPM_STATES, sizeof(__pyx_k_S1_must_be_in_0_S1_N_TPM_STATES), 0, 0, 1, 0}, + {&__pyx_kp_s_S2_must_be_in_0_S2_N_TPM_STATES, __pyx_k_S2_must_be_in_0_S2_N_TPM_STATES, sizeof(__pyx_k_S2_must_be_in_0_S2_N_TPM_STATES), 0, 0, 1, 0}, + {&__pyx_n_s_SATURDAY, __pyx_k_SATURDAY, sizeof(__pyx_k_SATURDAY), 0, 0, 1, 1}, + {&__pyx_n_s_SPHERICAL, __pyx_k_SPHERICAL, sizeof(__pyx_k_SPHERICAL), 0, 0, 1, 1}, + {&__pyx_n_s_SUNDAY, __pyx_k_SUNDAY, sizeof(__pyx_k_SUNDAY), 0, 0, 1, 1}, + {&__pyx_kp_s_Seconds, __pyx_k_Seconds, sizeof(__pyx_k_Seconds), 0, 0, 1, 0}, + {&__pyx_kp_s_Seconds_as_a_float, __pyx_k_Seconds_as_a_float, sizeof(__pyx_k_Seconds_as_a_float), 0, 0, 1, 0}, + {&__pyx_kp_s_Seconds_of_arc, __pyx_k_Seconds_of_arc, sizeof(__pyx_k_Seconds_of_arc), 0, 0, 1, 0}, + {&__pyx_n_s_T, __pyx_k_T, sizeof(__pyx_k_T), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_APP_AZEL, __pyx_k_TARGET_APP_AZEL, sizeof(__pyx_k_TARGET_APP_AZEL), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_APP_HADEC, __pyx_k_TARGET_APP_HADEC, sizeof(__pyx_k_TARGET_APP_HADEC), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_ECL, __pyx_k_TARGET_ECL, sizeof(__pyx_k_TARGET_ECL), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_FK4, __pyx_k_TARGET_FK4, sizeof(__pyx_k_TARGET_FK4), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_FK5, __pyx_k_TARGET_FK5, sizeof(__pyx_k_TARGET_FK5), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_GAL, __pyx_k_TARGET_GAL, sizeof(__pyx_k_TARGET_GAL), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_HADEC, __pyx_k_TARGET_HADEC, sizeof(__pyx_k_TARGET_HADEC), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_OBS_AZEL, __pyx_k_TARGET_OBS_AZEL, sizeof(__pyx_k_TARGET_OBS_AZEL), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_OBS_HADEC, __pyx_k_TARGET_OBS_HADEC, sizeof(__pyx_k_TARGET_OBS_HADEC), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_OBS_WHAM, __pyx_k_TARGET_OBS_WHAM, sizeof(__pyx_k_TARGET_OBS_WHAM), 0, 0, 1, 1}, + {&__pyx_n_s_TARGET_TOP_AZEL, __pyx_k_TARGET_TOP_AZEL, sizeof(__pyx_k_TARGET_TOP_AZEL), 0, 0, 1, 1}, + {&__pyx_n_s_THURSDAY, __pyx_k_THURSDAY, sizeof(__pyx_k_THURSDAY), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_ALL, __pyx_k_TPM_ALL, sizeof(__pyx_k_TPM_ALL), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_FAST, __pyx_k_TPM_FAST, sizeof(__pyx_k_TPM_FAST), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_INIT, __pyx_k_TPM_INIT, sizeof(__pyx_k_TPM_INIT), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_MEDIUM, __pyx_k_TPM_MEDIUM, sizeof(__pyx_k_TPM_MEDIUM), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_REFRACTION, __pyx_k_TPM_REFRACTION, sizeof(__pyx_k_TPM_REFRACTION), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S00, __pyx_k_TPM_S00, sizeof(__pyx_k_TPM_S00), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S01, __pyx_k_TPM_S01, sizeof(__pyx_k_TPM_S01), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S02, __pyx_k_TPM_S02, sizeof(__pyx_k_TPM_S02), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S03, __pyx_k_TPM_S03, sizeof(__pyx_k_TPM_S03), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S04, __pyx_k_TPM_S04, sizeof(__pyx_k_TPM_S04), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S05, __pyx_k_TPM_S05, sizeof(__pyx_k_TPM_S05), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S06, __pyx_k_TPM_S06, sizeof(__pyx_k_TPM_S06), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S07, __pyx_k_TPM_S07, sizeof(__pyx_k_TPM_S07), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S08, __pyx_k_TPM_S08, sizeof(__pyx_k_TPM_S08), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S09, __pyx_k_TPM_S09, sizeof(__pyx_k_TPM_S09), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S10, __pyx_k_TPM_S10, sizeof(__pyx_k_TPM_S10), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S11, __pyx_k_TPM_S11, sizeof(__pyx_k_TPM_S11), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S12, __pyx_k_TPM_S12, sizeof(__pyx_k_TPM_S12), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S13, __pyx_k_TPM_S13, sizeof(__pyx_k_TPM_S13), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S14, __pyx_k_TPM_S14, sizeof(__pyx_k_TPM_S14), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S15, __pyx_k_TPM_S15, sizeof(__pyx_k_TPM_S15), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S16, __pyx_k_TPM_S16, sizeof(__pyx_k_TPM_S16), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S17, __pyx_k_TPM_S17, sizeof(__pyx_k_TPM_S17), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S18, __pyx_k_TPM_S18, sizeof(__pyx_k_TPM_S18), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S19, __pyx_k_TPM_S19, sizeof(__pyx_k_TPM_S19), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S20, __pyx_k_TPM_S20, sizeof(__pyx_k_TPM_S20), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_S21, __pyx_k_TPM_S21, sizeof(__pyx_k_TPM_S21), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_SLOW, __pyx_k_TPM_SLOW, sizeof(__pyx_k_TPM_SLOW), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T00, __pyx_k_TPM_T00, sizeof(__pyx_k_TPM_T00), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T01, __pyx_k_TPM_T01, sizeof(__pyx_k_TPM_T01), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T02, __pyx_k_TPM_T02, sizeof(__pyx_k_TPM_T02), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T03, __pyx_k_TPM_T03, sizeof(__pyx_k_TPM_T03), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T04, __pyx_k_TPM_T04, sizeof(__pyx_k_TPM_T04), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T05, __pyx_k_TPM_T05, sizeof(__pyx_k_TPM_T05), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T06, __pyx_k_TPM_T06, sizeof(__pyx_k_TPM_T06), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T07, __pyx_k_TPM_T07, sizeof(__pyx_k_TPM_T07), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T08, __pyx_k_TPM_T08, sizeof(__pyx_k_TPM_T08), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T09, __pyx_k_TPM_T09, sizeof(__pyx_k_TPM_T09), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T10, __pyx_k_TPM_T10, sizeof(__pyx_k_TPM_T10), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T11, __pyx_k_TPM_T11, sizeof(__pyx_k_TPM_T11), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T12, __pyx_k_TPM_T12, sizeof(__pyx_k_TPM_T12), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T13, __pyx_k_TPM_T13, sizeof(__pyx_k_TPM_T13), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T14, __pyx_k_TPM_T14, sizeof(__pyx_k_TPM_T14), 0, 0, 1, 1}, + {&__pyx_n_s_TPM_T15, __pyx_k_TPM_T15, sizeof(__pyx_k_TPM_T15), 0, 0, 1, 1}, + {&__pyx_n_s_TSTATE, __pyx_k_TSTATE, sizeof(__pyx_k_TSTATE), 0, 0, 1, 1}, + {&__pyx_n_s_TUESDAY, __pyx_k_TUESDAY, sizeof(__pyx_k_TUESDAY), 0, 0, 1, 1}, + {&__pyx_kp_s_Terrestrial_Dynamic_Time_Terrest, __pyx_k_Terrestrial_Dynamic_Time_Terrest, sizeof(__pyx_k_Terrestrial_Dynamic_Time_Terrest), 0, 0, 1, 0}, + {&__pyx_kp_s_The_position_component, __pyx_k_The_position_component, sizeof(__pyx_k_The_position_component), 0, 0, 1, 0}, + {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, + {&__pyx_kp_s_Type_of_V3_must_be_the_same_as_t, __pyx_k_Type_of_V3_must_be_the_same_as_t, sizeof(__pyx_k_Type_of_V3_must_be_the_same_as_t), 0, 0, 1, 0}, + {&__pyx_kp_s_UTC_as_JD_Defines_NOW_i_e_curren, __pyx_k_UTC_as_JD_Defines_NOW_i_e_curren, sizeof(__pyx_k_UTC_as_JD_Defines_NOW_i_e_curren), 0, 0, 1, 0}, + {&__pyx_kp_s_Universal_time, __pyx_k_Universal_time, sizeof(__pyx_k_Universal_time), 0, 0, 1, 0}, + {&__pyx_n_s_V3, __pyx_k_V3, sizeof(__pyx_k_V3), 0, 0, 1, 1}, + {&__pyx_n_s_V3CP, __pyx_k_V3CP, sizeof(__pyx_k_V3CP), 0, 0, 1, 1}, + {&__pyx_n_s_V3SP, __pyx_k_V3SP, sizeof(__pyx_k_V3SP), 0, 0, 1, 1}, + {&__pyx_n_s_V6, __pyx_k_V6, sizeof(__pyx_k_V6), 0, 0, 1, 1}, + {&__pyx_n_s_V6C, __pyx_k_V6C, sizeof(__pyx_k_V6C), 0, 0, 1, 1}, + {&__pyx_n_s_V6S, __pyx_k_V6S, sizeof(__pyx_k_V6S), 0, 0, 1, 1}, + {&__pyx_n_s_VEL, __pyx_k_VEL, sizeof(__pyx_k_VEL), 0, 0, 1, 1}, + {&__pyx_kp_s_VP_component, __pyx_k_VP_component, sizeof(__pyx_k_VP_component), 0, 0, 1, 0}, + {&__pyx_kp_s_VV_component, __pyx_k_VV_component, sizeof(__pyx_k_VV_component), 0, 0, 1, 0}, + {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, + {&__pyx_kp_s_Value_must_be_a_V6C_object, __pyx_k_Value_must_be_a_V6C_object, sizeof(__pyx_k_Value_must_be_a_V6C_object), 0, 0, 1, 0}, + {&__pyx_n_s_WEDNESDAY, __pyx_k_WEDNESDAY, sizeof(__pyx_k_WEDNESDAY), 0, 0, 1, 1}, + {&__pyx_n_s_X, __pyx_k_X, sizeof(__pyx_k_X), 0, 0, 1, 1}, + {&__pyx_kp_s_XX, __pyx_k_XX, sizeof(__pyx_k_XX), 0, 0, 1, 0}, + {&__pyx_kp_s_XY, __pyx_k_XY, sizeof(__pyx_k_XY), 0, 0, 1, 0}, + {&__pyx_kp_s_XZ, __pyx_k_XZ, sizeof(__pyx_k_XZ), 0, 0, 1, 0}, + {&__pyx_kp_s_X_coordinate, __pyx_k_X_coordinate, sizeof(__pyx_k_X_coordinate), 0, 0, 1, 0}, + {&__pyx_n_s_Y, __pyx_k_Y, sizeof(__pyx_k_Y), 0, 0, 1, 1}, + {&__pyx_n_s_YMD, __pyx_k_YMD, sizeof(__pyx_k_YMD), 0, 0, 1, 1}, + {&__pyx_kp_u_YMD_doy_line_677, __pyx_k_YMD_doy_line_677, sizeof(__pyx_k_YMD_doy_line_677), 0, 1, 0, 0}, + {&__pyx_kp_u_YMD_normalize_line_594, __pyx_k_YMD_normalize_line_594, sizeof(__pyx_k_YMD_normalize_line_594), 0, 1, 0, 0}, + {&__pyx_kp_u_YMD_raw_str_line_649, __pyx_k_YMD_raw_str_line_649, sizeof(__pyx_k_YMD_raw_str_line_649), 0, 1, 0, 0}, + {&__pyx_kp_u_YMD_to_j_line_633, __pyx_k_YMD_to_j_line_633, sizeof(__pyx_k_YMD_to_j_line_633), 0, 1, 0, 0}, + {&__pyx_kp_u_YMD_to_jd_line_612, __pyx_k_YMD_to_jd_line_612, sizeof(__pyx_k_YMD_to_jd_line_612), 0, 1, 0, 0}, + {&__pyx_kp_u_YMD_to_year_line_695, __pyx_k_YMD_to_year_line_695, sizeof(__pyx_k_YMD_to_year_line_695), 0, 1, 0, 0}, + {&__pyx_kp_s_YX, __pyx_k_YX, sizeof(__pyx_k_YX), 0, 0, 1, 0}, + {&__pyx_kp_s_YY, __pyx_k_YY, sizeof(__pyx_k_YY), 0, 0, 1, 0}, + {&__pyx_kp_s_YZ, __pyx_k_YZ, sizeof(__pyx_k_YZ), 0, 0, 1, 0}, + {&__pyx_kp_s_Y_coordinate, __pyx_k_Y_coordinate, sizeof(__pyx_k_Y_coordinate), 0, 0, 1, 0}, + {&__pyx_kp_s_Year_as_an_integer, __pyx_k_Year_as_an_integer, sizeof(__pyx_k_Year_as_an_integer), 0, 0, 1, 0}, + {&__pyx_kp_s_Year_must_be_an_integer, __pyx_k_Year_must_be_an_integer, sizeof(__pyx_k_Year_must_be_an_integer), 0, 0, 1, 0}, + {&__pyx_n_s_Z, __pyx_k_Z, sizeof(__pyx_k_Z), 0, 0, 1, 1}, + {&__pyx_kp_s_ZX, __pyx_k_ZX, sizeof(__pyx_k_ZX), 0, 0, 1, 0}, + {&__pyx_kp_s_ZY, __pyx_k_ZY, sizeof(__pyx_k_ZY), 0, 0, 1, 0}, + {&__pyx_kp_s_ZZ, __pyx_k_ZZ, sizeof(__pyx_k_ZZ), 0, 0, 1, 0}, + {&__pyx_kp_s_Z_coordinate, __pyx_k_Z_coordinate, sizeof(__pyx_k_Z_coordinate), 0, 0, 1, 0}, + {&__pyx_n_s_aberrate, __pyx_k_aberrate, sizeof(__pyx_k_aberrate), 0, 0, 1, 1}, + {&__pyx_n_s_action, __pyx_k_action, sizeof(__pyx_k_action), 0, 0, 1, 1}, + {&__pyx_n_s_alpha, __pyx_k_alpha, sizeof(__pyx_k_alpha), 0, 0, 1, 1}, + {&__pyx_kp_s_alpha_normalized_to_0_2, __pyx_k_alpha_normalized_to_0_2, sizeof(__pyx_k_alpha_normalized_to_0_2), 0, 0, 1, 0}, + {&__pyx_n_s_alphadot, __pyx_k_alphadot, sizeof(__pyx_k_alphadot), 0, 0, 1, 1}, + {&__pyx_n_s_alt, __pyx_k_alt, sizeof(__pyx_k_alt), 0, 0, 1, 1}, + {&__pyx_n_s_arcs, __pyx_k_arcs, sizeof(__pyx_k_arcs), 0, 0, 1, 1}, + {&__pyx_n_s_as2d, __pyx_k_as2d, sizeof(__pyx_k_as2d), 0, 0, 1, 1}, + {&__pyx_kp_u_as2d_line_1824, __pyx_k_as2d_line_1824, sizeof(__pyx_k_as2d_line_1824), 0, 1, 0, 0}, + {&__pyx_n_s_as2h, __pyx_k_as2h, sizeof(__pyx_k_as2h), 0, 0, 1, 1}, + {&__pyx_kp_u_as2h_line_1848, __pyx_k_as2h_line_1848, sizeof(__pyx_k_as2h_line_1848), 0, 1, 0, 0}, + {&__pyx_n_s_as2r, __pyx_k_as2r, sizeof(__pyx_k_as2r), 0, 0, 1, 1}, + {&__pyx_kp_u_as2r_line_1919, __pyx_k_as2r_line_1919, sizeof(__pyx_k_as2r_line_1919), 0, 1, 0, 0}, + {&__pyx_n_s_azel2hadec, __pyx_k_azel2hadec, sizeof(__pyx_k_azel2hadec), 0, 0, 1, 1}, + {&__pyx_n_s_byear, __pyx_k_byear, sizeof(__pyx_k_byear), 0, 0, 1, 1}, + {&__pyx_n_s_byear2jd, __pyx_k_byear2jd, sizeof(__pyx_k_byear2jd), 0, 0, 1, 1}, + {&__pyx_kp_u_byear2jd_line_927, __pyx_k_byear2jd_line_927, sizeof(__pyx_k_byear2jd_line_927), 0, 1, 0, 0}, + {&__pyx_n_s_c2s, __pyx_k_c2s, sizeof(__pyx_k_c2s), 0, 0, 1, 1}, + {&__pyx_n_s_cat2v6, __pyx_k_cat2v6, sizeof(__pyx_k_cat2v6), 0, 0, 1, 1}, + {&__pyx_n_s_class, __pyx_k_class, sizeof(__pyx_k_class), 0, 0, 1, 1}, + {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, + {&__pyx_n_s_ctype, __pyx_k_ctype, sizeof(__pyx_k_ctype), 0, 0, 1, 1}, + {&__pyx_n_s_d, __pyx_k_d, sizeof(__pyx_k_d), 0, 0, 1, 1}, + {&__pyx_n_s_d2as, __pyx_k_d2as, sizeof(__pyx_k_d2as), 0, 0, 1, 1}, + {&__pyx_kp_u_d2as_line_1800, __pyx_k_d2as_line_1800, sizeof(__pyx_k_d2as_line_1800), 0, 1, 0, 0}, + {&__pyx_n_s_d2d, __pyx_k_d2d, sizeof(__pyx_k_d2d), 0, 0, 1, 1}, + {&__pyx_kp_u_d2d_line_1549, __pyx_k_d2d_line_1549, sizeof(__pyx_k_d2d_line_1549), 0, 1, 0, 0}, + {&__pyx_n_s_d2h, __pyx_k_d2h, sizeof(__pyx_k_d2h), 0, 0, 1, 1}, + {&__pyx_kp_u_d2h_line_1646, __pyx_k_d2h_line_1646, sizeof(__pyx_k_d2h_line_1646), 0, 1, 0, 0}, + {&__pyx_n_s_d2r, __pyx_k_d2r, sizeof(__pyx_k_d2r), 0, 0, 1, 1}, + {&__pyx_kp_u_d2r_line_1698, __pyx_k_d2r_line_1698, sizeof(__pyx_k_d2r_line_1698), 0, 1, 0, 0}, + {&__pyx_n_s_dd, __pyx_k_dd, sizeof(__pyx_k_dd), 0, 0, 1, 1}, + {&__pyx_n_s_degrees, __pyx_k_degrees, sizeof(__pyx_k_degrees), 0, 0, 1, 1}, + {&__pyx_n_s_delta, __pyx_k_delta, sizeof(__pyx_k_delta), 0, 0, 1, 1}, + {&__pyx_n_s_delta_AT, __pyx_k_delta_AT, sizeof(__pyx_k_delta_AT), 0, 0, 1, 1}, + {&__pyx_n_s_delta_ET, __pyx_k_delta_ET, sizeof(__pyx_k_delta_ET), 0, 0, 1, 1}, + {&__pyx_n_s_delta_T, __pyx_k_delta_T, sizeof(__pyx_k_delta_T), 0, 0, 1, 1}, + {&__pyx_n_s_delta_TT, __pyx_k_delta_TT, sizeof(__pyx_k_delta_TT), 0, 0, 1, 1}, + {&__pyx_n_s_delta_UT, __pyx_k_delta_UT, sizeof(__pyx_k_delta_UT), 0, 0, 1, 1}, + {&__pyx_n_s_delta_at, __pyx_k_delta_at, sizeof(__pyx_k_delta_at), 0, 0, 1, 1}, + {&__pyx_n_s_delta_eps, __pyx_k_delta_eps, sizeof(__pyx_k_delta_eps), 0, 0, 1, 1}, + {&__pyx_kp_s_delta_normalized_to_2_2, __pyx_k_delta_normalized_to_2_2, sizeof(__pyx_k_delta_normalized_to_2_2), 0, 0, 1, 0}, + {&__pyx_n_s_delta_phi, __pyx_k_delta_phi, sizeof(__pyx_k_delta_phi), 0, 0, 1, 1}, + {&__pyx_n_s_delta_ut, __pyx_k_delta_ut, sizeof(__pyx_k_delta_ut), 0, 0, 1, 1}, + {&__pyx_n_s_deltadot, __pyx_k_deltadot, sizeof(__pyx_k_deltadot), 0, 0, 1, 1}, + {&__pyx_n_s_doc, __pyx_k_doc, sizeof(__pyx_k_doc), 0, 0, 1, 1}, + {&__pyx_n_s_e, __pyx_k_e, sizeof(__pyx_k_e), 0, 0, 1, 1}, + {&__pyx_n_s_earth, __pyx_k_earth, sizeof(__pyx_k_earth), 0, 0, 1, 1}, + {&__pyx_n_s_eb, __pyx_k_eb, sizeof(__pyx_k_eb), 0, 0, 1, 1}, + {&__pyx_n_s_eccentricity, __pyx_k_eccentricity, sizeof(__pyx_k_eccentricity), 0, 0, 1, 1}, + {&__pyx_n_s_eccentricity_dot, __pyx_k_eccentricity_dot, sizeof(__pyx_k_eccentricity_dot), 0, 0, 1, 1}, + {&__pyx_n_s_ecl2equ, __pyx_k_ecl2equ, sizeof(__pyx_k_ecl2equ), 0, 0, 1, 1}, + {&__pyx_n_s_eh, __pyx_k_eh, sizeof(__pyx_k_eh), 0, 0, 1, 1}, + {&__pyx_n_s_ellab, __pyx_k_ellab, sizeof(__pyx_k_ellab), 0, 0, 1, 1}, + {&__pyx_n_s_end, __pyx_k_end, sizeof(__pyx_k_end), 0, 0, 1, 1}, + {&__pyx_n_s_ep, __pyx_k_ep, sizeof(__pyx_k_ep), 0, 0, 1, 1}, + {&__pyx_n_s_eps, __pyx_k_eps, sizeof(__pyx_k_eps), 0, 0, 1, 1}, + {&__pyx_n_s_eq, __pyx_k_eq, sizeof(__pyx_k_eq), 0, 0, 1, 1}, + {&__pyx_n_s_equ2ecl, __pyx_k_equ2ecl, sizeof(__pyx_k_equ2ecl), 0, 0, 1, 1}, + {&__pyx_n_s_equ2gal, __pyx_k_equ2gal, sizeof(__pyx_k_equ2gal), 0, 0, 1, 1}, + {&__pyx_n_s_et, __pyx_k_et, sizeof(__pyx_k_et), 0, 0, 1, 1}, + {&__pyx_n_s_et2tai, __pyx_k_et2tai, sizeof(__pyx_k_et2tai), 0, 0, 1, 1}, + {&__pyx_n_s_et2tdb, __pyx_k_et2tdb, sizeof(__pyx_k_et2tdb), 0, 0, 1, 1}, + {&__pyx_n_s_et2tdt, __pyx_k_et2tdt, sizeof(__pyx_k_et2tdt), 0, 0, 1, 1}, + {&__pyx_n_s_et2ut, __pyx_k_et2ut, sizeof(__pyx_k_et2ut), 0, 0, 1, 1}, + {&__pyx_n_s_et2ut1, __pyx_k_et2ut1, sizeof(__pyx_k_et2ut1), 0, 0, 1, 1}, + {&__pyx_n_s_et2utc, __pyx_k_et2utc, sizeof(__pyx_k_et2utc), 0, 0, 1, 1}, + {&__pyx_n_s_eterms, __pyx_k_eterms, sizeof(__pyx_k_eterms), 0, 0, 1, 1}, + {&__pyx_n_s_evp, __pyx_k_evp, sizeof(__pyx_k_evp), 0, 0, 1, 1}, + {&__pyx_n_s_fk425, __pyx_k_fk425, sizeof(__pyx_k_fk425), 0, 0, 1, 1}, + {&__pyx_n_s_fk524, __pyx_k_fk524, sizeof(__pyx_k_fk524), 0, 0, 1, 1}, + {&__pyx_n_s_flag, __pyx_k_flag, sizeof(__pyx_k_flag), 0, 0, 1, 1}, + {&__pyx_n_s_fmt_alpha, __pyx_k_fmt_alpha, sizeof(__pyx_k_fmt_alpha), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_alpha_line_1287, __pyx_k_fmt_alpha_line_1287, sizeof(__pyx_k_fmt_alpha_line_1287), 0, 1, 0, 0}, + {&__pyx_n_s_fmt_d, __pyx_k_fmt_d, sizeof(__pyx_k_fmt_d), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_d_line_1370, __pyx_k_fmt_d_line_1370, sizeof(__pyx_k_fmt_d_line_1370), 0, 1, 0, 0}, + {&__pyx_n_s_fmt_delta, __pyx_k_fmt_delta, sizeof(__pyx_k_fmt_delta), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_delta_line_1331, __pyx_k_fmt_delta_line_1331, sizeof(__pyx_k_fmt_delta_line_1331), 0, 1, 0, 0}, + {&__pyx_n_s_fmt_h, __pyx_k_fmt_h, sizeof(__pyx_k_fmt_h), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_h_line_1410, __pyx_k_fmt_h_line_1410, sizeof(__pyx_k_fmt_h_line_1410), 0, 1, 0, 0}, + {&__pyx_n_s_fmt_j, __pyx_k_fmt_j, sizeof(__pyx_k_fmt_j), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_j_line_1444, __pyx_k_fmt_j_line_1444, sizeof(__pyx_k_fmt_j_line_1444), 0, 1, 0, 0}, + {&__pyx_n_s_fmt_r, __pyx_k_fmt_r, sizeof(__pyx_k_fmt_r), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_r_line_1480, __pyx_k_fmt_r_line_1480, sizeof(__pyx_k_fmt_r_line_1480), 0, 1, 0, 0}, + {&__pyx_n_s_fmt_y, __pyx_k_fmt_y, sizeof(__pyx_k_fmt_y), 0, 0, 1, 1}, + {&__pyx_kp_u_fmt_y_line_1517, __pyx_k_fmt_y_line_1517, sizeof(__pyx_k_fmt_y_line_1517), 0, 1, 0, 0}, + {&__pyx_n_s_format, __pyx_k_format, sizeof(__pyx_k_format), 0, 0, 1, 1}, + {&__pyx_n_s_gal2equ, __pyx_k_gal2equ, sizeof(__pyx_k_gal2equ), 0, 0, 1, 1}, + {&__pyx_n_s_gast, __pyx_k_gast, sizeof(__pyx_k_gast), 0, 0, 1, 1}, + {&__pyx_n_s_gcal2j, __pyx_k_gcal2j, sizeof(__pyx_k_gcal2j), 0, 0, 1, 1}, + {&__pyx_kp_u_gcal2j_line_1053, __pyx_k_gcal2j_line_1053, sizeof(__pyx_k_gcal2j_line_1053), 0, 1, 0, 0}, + {&__pyx_n_s_geod2geoc, __pyx_k_geod2geoc, sizeof(__pyx_k_geod2geoc), 0, 0, 1, 1}, + {&__pyx_n_s_get, __pyx_k_get, sizeof(__pyx_k_get), 0, 0, 1, 1}, + {&__pyx_n_s_getH, __pyx_k_getH, sizeof(__pyx_k_getH), 0, 0, 1, 1}, + {&__pyx_n_s_getP, __pyx_k_getP, sizeof(__pyx_k_getP), 0, 0, 1, 1}, + {&__pyx_n_s_getPOS, __pyx_k_getPOS, sizeof(__pyx_k_getPOS), 0, 0, 1, 1}, + {&__pyx_n_s_getPP, __pyx_k_getPP, sizeof(__pyx_k_getPP), 0, 0, 1, 1}, + {&__pyx_n_s_getPV, __pyx_k_getPV, sizeof(__pyx_k_getPV), 0, 0, 1, 1}, + {&__pyx_n_s_getT, __pyx_k_getT, sizeof(__pyx_k_getT), 0, 0, 1, 1}, + {&__pyx_n_s_getVP, __pyx_k_getVP, sizeof(__pyx_k_getVP), 0, 0, 1, 1}, + {&__pyx_n_s_getVV, __pyx_k_getVV, sizeof(__pyx_k_getVV), 0, 0, 1, 1}, + {&__pyx_n_s_getalpha, __pyx_k_getalpha, sizeof(__pyx_k_getalpha), 0, 0, 1, 1}, + {&__pyx_n_s_getalphadot, __pyx_k_getalphadot, sizeof(__pyx_k_getalphadot), 0, 0, 1, 1}, + {&__pyx_n_s_getalt, __pyx_k_getalt, sizeof(__pyx_k_getalt), 0, 0, 1, 1}, + {&__pyx_n_s_getdd, __pyx_k_getdd, sizeof(__pyx_k_getdd), 0, 0, 1, 1}, + {&__pyx_n_s_getdelta, __pyx_k_getdelta, sizeof(__pyx_k_getdelta), 0, 0, 1, 1}, + {&__pyx_n_s_getdelta_at, __pyx_k_getdelta_at, sizeof(__pyx_k_getdelta_at), 0, 0, 1, 1}, + {&__pyx_n_s_getdelta_ut, __pyx_k_getdelta_ut, sizeof(__pyx_k_getdelta_ut), 0, 0, 1, 1}, + {&__pyx_n_s_getdeltadot, __pyx_k_getdeltadot, sizeof(__pyx_k_getdeltadot), 0, 0, 1, 1}, + {&__pyx_n_s_geteb, __pyx_k_geteb, sizeof(__pyx_k_geteb), 0, 0, 1, 1}, + {&__pyx_n_s_geteh, __pyx_k_geteh, sizeof(__pyx_k_geteh), 0, 0, 1, 1}, + {&__pyx_n_s_getgast, __pyx_k_getgast, sizeof(__pyx_k_getgast), 0, 0, 1, 1}, + {&__pyx_n_s_getgmst, __pyx_k_getgmst, sizeof(__pyx_k_getgmst), 0, 0, 1, 1}, + {&__pyx_n_s_gethh, __pyx_k_gethh, sizeof(__pyx_k_gethh), 0, 0, 1, 1}, + {&__pyx_n_s_getlast, __pyx_k_getlast, sizeof(__pyx_k_getlast), 0, 0, 1, 1}, + {&__pyx_n_s_getlat, __pyx_k_getlat, sizeof(__pyx_k_getlat), 0, 0, 1, 1}, + {&__pyx_n_s_getlon, __pyx_k_getlon, sizeof(__pyx_k_getlon), 0, 0, 1, 1}, + {&__pyx_n_s_getm, __pyx_k_getm, sizeof(__pyx_k_getm), 0, 0, 1, 1}, + {&__pyx_n_s_getmm, __pyx_k_getmm, sizeof(__pyx_k_getmm), 0, 0, 1, 1}, + {&__pyx_n_s_getnalpha, __pyx_k_getnalpha, sizeof(__pyx_k_getnalpha), 0, 0, 1, 1}, + {&__pyx_n_s_getndelta, __pyx_k_getndelta, sizeof(__pyx_k_getndelta), 0, 0, 1, 1}, + {&__pyx_n_s_getnm, __pyx_k_getnm, sizeof(__pyx_k_getnm), 0, 0, 1, 1}, + {&__pyx_n_s_getnut_lon, __pyx_k_getnut_lon, sizeof(__pyx_k_getnut_lon), 0, 0, 1, 1}, + {&__pyx_n_s_getnut_obl, __pyx_k_getnut_obl, sizeof(__pyx_k_getnut_obl), 0, 0, 1, 1}, + {&__pyx_n_s_getobliquity, __pyx_k_getobliquity, sizeof(__pyx_k_getobliquity), 0, 0, 1, 1}, + {&__pyx_n_s_getobs_m, __pyx_k_getobs_m, sizeof(__pyx_k_getobs_m), 0, 0, 1, 1}, + {&__pyx_n_s_getobs_s, __pyx_k_getobs_s, sizeof(__pyx_k_getobs_s), 0, 0, 1, 1}, + {&__pyx_n_s_getobs_t, __pyx_k_getobs_t, sizeof(__pyx_k_getobs_t), 0, 0, 1, 1}, + {&__pyx_n_s_getpm, __pyx_k_getpm, sizeof(__pyx_k_getpm), 0, 0, 1, 1}, + {&__pyx_n_s_getr, __pyx_k_getr, sizeof(__pyx_k_getr), 0, 0, 1, 1}, + {&__pyx_n_s_getrdot, __pyx_k_getrdot, sizeof(__pyx_k_getrdot), 0, 0, 1, 1}, + {&__pyx_n_s_getrefa, __pyx_k_getrefa, sizeof(__pyx_k_getrefa), 0, 0, 1, 1}, + {&__pyx_n_s_getrefb, __pyx_k_getrefb, sizeof(__pyx_k_getrefb), 0, 0, 1, 1}, + {&__pyx_n_s_getss, __pyx_k_getss, sizeof(__pyx_k_getss), 0, 0, 1, 1}, + {&__pyx_n_s_getstate, __pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 0, 1, 1}, + {&__pyx_n_s_gettai, __pyx_k_gettai, sizeof(__pyx_k_gettai), 0, 0, 1, 1}, + {&__pyx_n_s_gettdb, __pyx_k_gettdb, sizeof(__pyx_k_gettdb), 0, 0, 1, 1}, + {&__pyx_n_s_gettdt, __pyx_k_gettdt, sizeof(__pyx_k_gettdt), 0, 0, 1, 1}, + {&__pyx_n_s_getut1, __pyx_k_getut1, sizeof(__pyx_k_getut1), 0, 0, 1, 1}, + {&__pyx_n_s_getutc, __pyx_k_getutc, sizeof(__pyx_k_getutc), 0, 0, 1, 1}, + {&__pyx_n_s_getwavelength, __pyx_k_getwavelength, sizeof(__pyx_k_getwavelength), 0, 0, 1, 1}, + {&__pyx_n_s_getx, __pyx_k_getx, sizeof(__pyx_k_getx), 0, 0, 1, 1}, + {&__pyx_n_s_getxdot, __pyx_k_getxdot, sizeof(__pyx_k_getxdot), 0, 0, 1, 1}, + {&__pyx_n_s_getxpole, __pyx_k_getxpole, sizeof(__pyx_k_getxpole), 0, 0, 1, 1}, + {&__pyx_n_s_getxx, __pyx_k_getxx, sizeof(__pyx_k_getxx), 0, 0, 1, 1}, + {&__pyx_n_s_getxy, __pyx_k_getxy, sizeof(__pyx_k_getxy), 0, 0, 1, 1}, + {&__pyx_n_s_getxz, __pyx_k_getxz, sizeof(__pyx_k_getxz), 0, 0, 1, 1}, + {&__pyx_n_s_gety, __pyx_k_gety, sizeof(__pyx_k_gety), 0, 0, 1, 1}, + {&__pyx_n_s_getydot, __pyx_k_getydot, sizeof(__pyx_k_getydot), 0, 0, 1, 1}, + {&__pyx_n_s_getypole, __pyx_k_getypole, sizeof(__pyx_k_getypole), 0, 0, 1, 1}, + {&__pyx_n_s_getyx, __pyx_k_getyx, sizeof(__pyx_k_getyx), 0, 0, 1, 1}, + {&__pyx_n_s_getyy, __pyx_k_getyy, sizeof(__pyx_k_getyy), 0, 0, 1, 1}, + {&__pyx_n_s_getyz, __pyx_k_getyz, sizeof(__pyx_k_getyz), 0, 0, 1, 1}, + {&__pyx_n_s_getz, __pyx_k_getz, sizeof(__pyx_k_getz), 0, 0, 1, 1}, + {&__pyx_n_s_getzdot, __pyx_k_getzdot, sizeof(__pyx_k_getzdot), 0, 0, 1, 1}, + {&__pyx_n_s_getzx, __pyx_k_getzx, sizeof(__pyx_k_getzx), 0, 0, 1, 1}, + {&__pyx_n_s_getzy, __pyx_k_getzy, sizeof(__pyx_k_getzy), 0, 0, 1, 1}, + {&__pyx_n_s_getzz, __pyx_k_getzz, sizeof(__pyx_k_getzz), 0, 0, 1, 1}, + {&__pyx_n_s_gmst, __pyx_k_gmst, sizeof(__pyx_k_gmst), 0, 0, 1, 1}, + {&__pyx_n_s_h, __pyx_k_h, sizeof(__pyx_k_h), 0, 0, 1, 1}, + {&__pyx_n_s_h2as, __pyx_k_h2as, sizeof(__pyx_k_h2as), 0, 0, 1, 1}, + {&__pyx_kp_u_h2as_line_1872, __pyx_k_h2as_line_1872, sizeof(__pyx_k_h2as_line_1872), 0, 1, 0, 0}, + {&__pyx_n_s_h2d, __pyx_k_h2d, sizeof(__pyx_k_h2d), 0, 0, 1, 1}, + {&__pyx_kp_u_h2d_line_1672, __pyx_k_h2d_line_1672, sizeof(__pyx_k_h2d_line_1672), 0, 1, 0, 0}, + {&__pyx_n_s_h2h, __pyx_k_h2h, sizeof(__pyx_k_h2h), 0, 0, 1, 1}, + {&__pyx_kp_u_h2h_line_1579, __pyx_k_h2h_line_1579, sizeof(__pyx_k_h2h_line_1579), 0, 1, 0, 0}, + {&__pyx_n_s_h2r, __pyx_k_h2r, sizeof(__pyx_k_h2r), 0, 0, 1, 1}, + {&__pyx_kp_u_h2r_line_1752, __pyx_k_h2r_line_1752, sizeof(__pyx_k_h2r_line_1752), 0, 1, 0, 0}, + {&__pyx_n_s_hadec2azel, __pyx_k_hadec2azel, sizeof(__pyx_k_hadec2azel), 0, 0, 1, 1}, + {&__pyx_n_s_hh, __pyx_k_hh, sizeof(__pyx_k_hh), 0, 0, 1, 1}, + {&__pyx_n_s_j, __pyx_k_j, sizeof(__pyx_k_j), 0, 0, 1, 1}, + {&__pyx_n_s_j2dow, __pyx_k_j2dow, sizeof(__pyx_k_j2dow), 0, 0, 1, 1}, + {&__pyx_kp_u_j2dow_line_1232, __pyx_k_j2dow_line_1232, sizeof(__pyx_k_j2dow_line_1232), 0, 1, 0, 0}, + {&__pyx_n_s_j2gcal, __pyx_k_j2gcal, sizeof(__pyx_k_j2gcal), 0, 0, 1, 1}, + {&__pyx_kp_u_j2gcal_line_1119, __pyx_k_j2gcal_line_1119, sizeof(__pyx_k_j2gcal_line_1119), 0, 1, 0, 0}, + {&__pyx_n_s_j2jcal, __pyx_k_j2jcal, sizeof(__pyx_k_j2jcal), 0, 0, 1, 1}, + {&__pyx_kp_u_j2jcal_line_1149, __pyx_k_j2jcal_line_1149, sizeof(__pyx_k_j2jcal_line_1149), 0, 1, 0, 0}, + {&__pyx_n_s_j2y, __pyx_k_j2y, sizeof(__pyx_k_j2y), 0, 0, 1, 1}, + {&__pyx_kp_u_j2y_line_1179, __pyx_k_j2y_line_1179, sizeof(__pyx_k_j2y_line_1179), 0, 1, 0, 0}, + {&__pyx_n_s_jcal2j, __pyx_k_jcal2j, sizeof(__pyx_k_jcal2j), 0, 0, 1, 1}, + {&__pyx_kp_u_jcal2j_line_1085, __pyx_k_jcal2j_line_1085, sizeof(__pyx_k_jcal2j_line_1085), 0, 1, 0, 0}, + {&__pyx_n_s_jd, __pyx_k_jd, sizeof(__pyx_k_jd), 0, 0, 1, 1}, + {&__pyx_n_s_jd2byear, __pyx_k_jd2byear, sizeof(__pyx_k_jd2byear), 0, 0, 1, 1}, + {&__pyx_kp_u_jd2byear_line_951, __pyx_k_jd2byear_line_951, sizeof(__pyx_k_jd2byear_line_951), 0, 1, 0, 0}, + {&__pyx_n_s_jd2jyear, __pyx_k_jd2jyear, sizeof(__pyx_k_jd2jyear), 0, 0, 1, 1}, + {&__pyx_kp_u_jd2jyear_line_999, __pyx_k_jd2jyear_line_999, sizeof(__pyx_k_jd2jyear_line_999), 0, 1, 0, 0}, + {&__pyx_n_s_jd_now, __pyx_k_jd_now, sizeof(__pyx_k_jd_now), 0, 0, 1, 1}, + {&__pyx_n_s_jyear, __pyx_k_jyear, sizeof(__pyx_k_jyear), 0, 0, 1, 1}, + {&__pyx_n_s_jyear2jd, __pyx_k_jyear2jd, sizeof(__pyx_k_jyear2jd), 0, 0, 1, 1}, + {&__pyx_kp_u_jyear2jd_line_975, __pyx_k_jyear2jd_line_975, sizeof(__pyx_k_jyear2jd_line_975), 0, 1, 0, 0}, + {&__pyx_n_s_last, __pyx_k_last, sizeof(__pyx_k_last), 0, 0, 1, 1}, + {&__pyx_n_s_lat, __pyx_k_lat, sizeof(__pyx_k_lat), 0, 0, 1, 1}, + {&__pyx_n_s_latitude, __pyx_k_latitude, sizeof(__pyx_k_latitude), 0, 0, 1, 1}, + {&__pyx_n_s_ldeflect, __pyx_k_ldeflect, sizeof(__pyx_k_ldeflect), 0, 0, 1, 1}, + {&__pyx_n_s_lon, __pyx_k_lon, sizeof(__pyx_k_lon), 0, 0, 1, 1}, + {&__pyx_n_s_m, __pyx_k_m, sizeof(__pyx_k_m), 0, 0, 1, 1}, + {&__pyx_n_s_m3, __pyx_k_m3, sizeof(__pyx_k_m3), 0, 0, 1, 1}, + {&__pyx_n_s_m3rx, __pyx_k_m3rx, sizeof(__pyx_k_m3rx), 0, 0, 1, 1}, + {&__pyx_n_s_m3rxdot, __pyx_k_m3rxdot, sizeof(__pyx_k_m3rxdot), 0, 0, 1, 1}, + {&__pyx_n_s_m3ry, __pyx_k_m3ry, sizeof(__pyx_k_m3ry), 0, 0, 1, 1}, + {&__pyx_n_s_m3rydot, __pyx_k_m3rydot, sizeof(__pyx_k_m3rydot), 0, 0, 1, 1}, + {&__pyx_n_s_m3rz, __pyx_k_m3rz, sizeof(__pyx_k_m3rz), 0, 0, 1, 1}, + {&__pyx_n_s_m3rzdot, __pyx_k_m3rzdot, sizeof(__pyx_k_m3rzdot), 0, 0, 1, 1}, + {&__pyx_n_s_m6, __pyx_k_m6, sizeof(__pyx_k_m6), 0, 0, 1, 1}, + {&__pyx_n_s_m6qx, __pyx_k_m6qx, sizeof(__pyx_k_m6qx), 0, 0, 1, 1}, + {&__pyx_n_s_m6qy, __pyx_k_m6qy, sizeof(__pyx_k_m6qy), 0, 0, 1, 1}, + {&__pyx_n_s_m6qz, __pyx_k_m6qz, sizeof(__pyx_k_m6qz), 0, 0, 1, 1}, + {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, + {&__pyx_n_s_mm, __pyx_k_mm, sizeof(__pyx_k_mm), 0, 0, 1, 1}, + {&__pyx_n_s_nalpha, __pyx_k_nalpha, sizeof(__pyx_k_nalpha), 0, 0, 1, 1}, + {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, + {&__pyx_n_s_ndelta, __pyx_k_ndelta, sizeof(__pyx_k_ndelta), 0, 0, 1, 1}, + {&__pyx_n_s_nm, __pyx_k_nm, sizeof(__pyx_k_nm), 0, 0, 1, 1}, + {&__pyx_kp_s_no_default___reduce___due_to_non, __pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 0, 1, 0}, + {&__pyx_n_s_nut_lon, __pyx_k_nut_lon, sizeof(__pyx_k_nut_lon), 0, 0, 1, 1}, + {&__pyx_n_s_nut_obl, __pyx_k_nut_obl, sizeof(__pyx_k_nut_obl), 0, 0, 1, 1}, + {&__pyx_n_s_nutations, __pyx_k_nutations, sizeof(__pyx_k_nutations), 0, 0, 1, 1}, + {&__pyx_n_s_obl, __pyx_k_obl, sizeof(__pyx_k_obl), 0, 0, 1, 1}, + {&__pyx_n_s_obliquity, __pyx_k_obliquity, sizeof(__pyx_k_obliquity), 0, 0, 1, 1}, + {&__pyx_n_s_obliquity_dot, __pyx_k_obliquity_dot, sizeof(__pyx_k_obliquity_dot), 0, 0, 1, 1}, + {&__pyx_n_s_obs_m, __pyx_k_obs_m, sizeof(__pyx_k_obs_m), 0, 0, 1, 1}, + {&__pyx_n_s_obs_s, __pyx_k_obs_s, sizeof(__pyx_k_obs_s), 0, 0, 1, 1}, + {&__pyx_n_s_obs_t, __pyx_k_obs_t, sizeof(__pyx_k_obs_t), 0, 0, 1, 1}, + {&__pyx_n_s_p, __pyx_k_p, sizeof(__pyx_k_p), 0, 0, 1, 1}, + {&__pyx_n_s_pflag, __pyx_k_pflag, sizeof(__pyx_k_pflag), 0, 0, 1, 1}, + {&__pyx_n_s_pm, __pyx_k_pm, sizeof(__pyx_k_pm), 0, 0, 1, 1}, + {&__pyx_n_s_pma, __pyx_k_pma, sizeof(__pyx_k_pma), 0, 0, 1, 1}, + {&__pyx_n_s_pmd, __pyx_k_pmd, sizeof(__pyx_k_pmd), 0, 0, 1, 1}, + {&__pyx_n_s_pos, __pyx_k_pos, sizeof(__pyx_k_pos), 0, 0, 1, 1}, + {&__pyx_n_s_pp, __pyx_k_pp, sizeof(__pyx_k_pp), 0, 0, 1, 1}, + {&__pyx_n_s_precess, __pyx_k_precess, sizeof(__pyx_k_precess), 0, 0, 1, 1}, + {&__pyx_n_s_precess_m, __pyx_k_precess_m, sizeof(__pyx_k_precess_m), 0, 0, 1, 1}, + {&__pyx_n_s_proper_motion, __pyx_k_proper_motion, sizeof(__pyx_k_proper_motion), 0, 0, 1, 1}, + {&__pyx_n_s_property, __pyx_k_property, sizeof(__pyx_k_property), 0, 0, 1, 1}, + {&__pyx_n_s_pv, __pyx_k_pv, sizeof(__pyx_k_pv), 0, 0, 1, 1}, + {&__pyx_n_s_pvec, __pyx_k_pvec, sizeof(__pyx_k_pvec), 0, 0, 1, 1}, + {&__pyx_n_s_px, __pyx_k_px, sizeof(__pyx_k_px), 0, 0, 1, 1}, + {&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1}, + {&__pyx_n_s_r, __pyx_k_r, sizeof(__pyx_k_r), 0, 0, 1, 1}, + {&__pyx_n_s_r2as, __pyx_k_r2as, sizeof(__pyx_k_r2as), 0, 0, 1, 1}, + {&__pyx_kp_u_r2as_line_1896, __pyx_k_r2as_line_1896, sizeof(__pyx_k_r2as_line_1896), 0, 1, 0, 0}, + {&__pyx_n_s_r2d, __pyx_k_r2d, sizeof(__pyx_k_r2d), 0, 0, 1, 1}, + {&__pyx_kp_u_r2d_line_1724, __pyx_k_r2d_line_1724, sizeof(__pyx_k_r2d_line_1724), 0, 1, 0, 0}, + {&__pyx_n_s_r2h, __pyx_k_r2h, sizeof(__pyx_k_r2h), 0, 0, 1, 1}, + {&__pyx_kp_u_r2h_line_1776, __pyx_k_r2h_line_1776, sizeof(__pyx_k_r2h_line_1776), 0, 1, 0, 0}, + {&__pyx_n_s_r2r, __pyx_k_r2r, sizeof(__pyx_k_r2r), 0, 0, 1, 1}, + {&__pyx_kp_u_r2r_line_1611, __pyx_k_r2r_line_1611, sizeof(__pyx_k_r2r_line_1611), 0, 1, 0, 0}, + {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1}, + {&__pyx_n_s_rdot, __pyx_k_rdot, sizeof(__pyx_k_rdot), 0, 0, 1, 1}, + {&__pyx_n_s_reduce, __pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 0, 1, 1}, + {&__pyx_n_s_reduce_cython, __pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 0, 1, 1}, + {&__pyx_n_s_reduce_ex, __pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 0, 1, 1}, + {&__pyx_n_s_refa, __pyx_k_refa, sizeof(__pyx_k_refa), 0, 0, 1, 1}, + {&__pyx_n_s_refb, __pyx_k_refb, sizeof(__pyx_k_refb), 0, 0, 1, 1}, + {&__pyx_n_s_refco, __pyx_k_refco, sizeof(__pyx_k_refco), 0, 0, 1, 1}, + {&__pyx_n_s_refract, __pyx_k_refract, sizeof(__pyx_k_refract), 0, 0, 1, 1}, + {&__pyx_n_s_rh, __pyx_k_rh, sizeof(__pyx_k_rh), 0, 0, 1, 1}, + {&__pyx_n_s_rv, __pyx_k_rv, sizeof(__pyx_k_rv), 0, 0, 1, 1}, + {&__pyx_n_s_s, __pyx_k_s, sizeof(__pyx_k_s), 0, 0, 1, 1}, + {&__pyx_n_s_s1, __pyx_k_s1, sizeof(__pyx_k_s1), 0, 0, 1, 1}, + {&__pyx_n_s_s2, __pyx_k_s2, sizeof(__pyx_k_s2), 0, 0, 1, 1}, + {&__pyx_n_s_setH, __pyx_k_setH, sizeof(__pyx_k_setH), 0, 0, 1, 1}, + {&__pyx_n_s_setP, __pyx_k_setP, sizeof(__pyx_k_setP), 0, 0, 1, 1}, + {&__pyx_n_s_setPOS, __pyx_k_setPOS, sizeof(__pyx_k_setPOS), 0, 0, 1, 1}, + {&__pyx_n_s_setPP, __pyx_k_setPP, sizeof(__pyx_k_setPP), 0, 0, 1, 1}, + {&__pyx_n_s_setPV, __pyx_k_setPV, sizeof(__pyx_k_setPV), 0, 0, 1, 1}, + {&__pyx_n_s_setT, __pyx_k_setT, sizeof(__pyx_k_setT), 0, 0, 1, 1}, + {&__pyx_n_s_setVP, __pyx_k_setVP, sizeof(__pyx_k_setVP), 0, 0, 1, 1}, + {&__pyx_n_s_setVV, __pyx_k_setVV, sizeof(__pyx_k_setVV), 0, 0, 1, 1}, + {&__pyx_n_s_setalpha, __pyx_k_setalpha, sizeof(__pyx_k_setalpha), 0, 0, 1, 1}, + {&__pyx_n_s_setalphadot, __pyx_k_setalphadot, sizeof(__pyx_k_setalphadot), 0, 0, 1, 1}, + {&__pyx_n_s_setalt, __pyx_k_setalt, sizeof(__pyx_k_setalt), 0, 0, 1, 1}, + {&__pyx_n_s_setdd, __pyx_k_setdd, sizeof(__pyx_k_setdd), 0, 0, 1, 1}, + {&__pyx_n_s_setdelta, __pyx_k_setdelta, sizeof(__pyx_k_setdelta), 0, 0, 1, 1}, + {&__pyx_n_s_setdelta_at, __pyx_k_setdelta_at, sizeof(__pyx_k_setdelta_at), 0, 0, 1, 1}, + {&__pyx_n_s_setdelta_ut, __pyx_k_setdelta_ut, sizeof(__pyx_k_setdelta_ut), 0, 0, 1, 1}, + {&__pyx_n_s_setdeltadot, __pyx_k_setdeltadot, sizeof(__pyx_k_setdeltadot), 0, 0, 1, 1}, + {&__pyx_n_s_sethh, __pyx_k_sethh, sizeof(__pyx_k_sethh), 0, 0, 1, 1}, + {&__pyx_n_s_setlat, __pyx_k_setlat, sizeof(__pyx_k_setlat), 0, 0, 1, 1}, + {&__pyx_n_s_setlon, __pyx_k_setlon, sizeof(__pyx_k_setlon), 0, 0, 1, 1}, + {&__pyx_n_s_setm, __pyx_k_setm, sizeof(__pyx_k_setm), 0, 0, 1, 1}, + {&__pyx_n_s_setmm, __pyx_k_setmm, sizeof(__pyx_k_setmm), 0, 0, 1, 1}, + {&__pyx_n_s_setr, __pyx_k_setr, sizeof(__pyx_k_setr), 0, 0, 1, 1}, + {&__pyx_n_s_setrdot, __pyx_k_setrdot, sizeof(__pyx_k_setrdot), 0, 0, 1, 1}, + {&__pyx_n_s_setss, __pyx_k_setss, sizeof(__pyx_k_setss), 0, 0, 1, 1}, + {&__pyx_n_s_setstate, __pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 0, 1, 1}, + {&__pyx_n_s_setstate_cython, __pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 0, 1, 1}, + {&__pyx_n_s_setutc, __pyx_k_setutc, sizeof(__pyx_k_setutc), 0, 0, 1, 1}, + {&__pyx_n_s_setwavelength, __pyx_k_setwavelength, sizeof(__pyx_k_setwavelength), 0, 0, 1, 1}, + {&__pyx_n_s_setx, __pyx_k_setx, sizeof(__pyx_k_setx), 0, 0, 1, 1}, + {&__pyx_n_s_setxdot, __pyx_k_setxdot, sizeof(__pyx_k_setxdot), 0, 0, 1, 1}, + {&__pyx_n_s_setxpole, __pyx_k_setxpole, sizeof(__pyx_k_setxpole), 0, 0, 1, 1}, + {&__pyx_n_s_setxx, __pyx_k_setxx, sizeof(__pyx_k_setxx), 0, 0, 1, 1}, + {&__pyx_n_s_setxy, __pyx_k_setxy, sizeof(__pyx_k_setxy), 0, 0, 1, 1}, + {&__pyx_n_s_setxz, __pyx_k_setxz, sizeof(__pyx_k_setxz), 0, 0, 1, 1}, + {&__pyx_n_s_sety, __pyx_k_sety, sizeof(__pyx_k_sety), 0, 0, 1, 1}, + {&__pyx_n_s_setydot, __pyx_k_setydot, sizeof(__pyx_k_setydot), 0, 0, 1, 1}, + {&__pyx_n_s_setypole, __pyx_k_setypole, sizeof(__pyx_k_setypole), 0, 0, 1, 1}, + {&__pyx_n_s_setyx, __pyx_k_setyx, sizeof(__pyx_k_setyx), 0, 0, 1, 1}, + {&__pyx_n_s_setyy, __pyx_k_setyy, sizeof(__pyx_k_setyy), 0, 0, 1, 1}, + {&__pyx_n_s_setyz, __pyx_k_setyz, sizeof(__pyx_k_setyz), 0, 0, 1, 1}, + {&__pyx_n_s_setz, __pyx_k_setz, sizeof(__pyx_k_setz), 0, 0, 1, 1}, + {&__pyx_n_s_setzdot, __pyx_k_setzdot, sizeof(__pyx_k_setzdot), 0, 0, 1, 1}, + {&__pyx_n_s_setzx, __pyx_k_setzx, sizeof(__pyx_k_setzx), 0, 0, 1, 1}, + {&__pyx_n_s_setzy, __pyx_k_setzy, sizeof(__pyx_k_setzy), 0, 0, 1, 1}, + {&__pyx_n_s_setzz, __pyx_k_setzz, sizeof(__pyx_k_setzz), 0, 0, 1, 1}, + {&__pyx_n_s_sflag, __pyx_k_sflag, sizeof(__pyx_k_sflag), 0, 0, 1, 1}, + {&__pyx_n_s_solar_perigee, __pyx_k_solar_perigee, sizeof(__pyx_k_solar_perigee), 0, 0, 1, 1}, + {&__pyx_n_s_solar_perigee_dot, __pyx_k_solar_perigee_dot, sizeof(__pyx_k_solar_perigee_dot), 0, 0, 1, 1}, + {&__pyx_n_s_spvec, __pyx_k_spvec, sizeof(__pyx_k_spvec), 0, 0, 1, 1}, + {&__pyx_kp_s_src_tpm_astro_pxi, __pyx_k_src_tpm_astro_pxi, sizeof(__pyx_k_src_tpm_astro_pxi), 0, 0, 1, 0}, + {&__pyx_kp_s_src_tpm_pyx, __pyx_k_src_tpm_pyx, sizeof(__pyx_k_src_tpm_pyx), 0, 0, 1, 0}, + {&__pyx_kp_s_src_tpm_times_pxi, __pyx_k_src_tpm_times_pxi, sizeof(__pyx_k_src_tpm_times_pxi), 0, 0, 1, 0}, + {&__pyx_kp_s_src_tpm_vec_pxi, __pyx_k_src_tpm_vec_pxi, sizeof(__pyx_k_src_tpm_vec_pxi), 0, 0, 1, 0}, + {&__pyx_n_s_ss, __pyx_k_ss, sizeof(__pyx_k_ss), 0, 0, 1, 1}, + {&__pyx_n_s_star, __pyx_k_star, sizeof(__pyx_k_star), 0, 0, 1, 1}, + {&__pyx_n_s_start, __pyx_k_start, sizeof(__pyx_k_start), 0, 0, 1, 1}, + {&__pyx_n_s_ststate, __pyx_k_ststate, sizeof(__pyx_k_ststate), 0, 0, 1, 1}, + {&__pyx_n_s_t, __pyx_k_t, sizeof(__pyx_k_t), 0, 0, 1, 1}, + {&__pyx_n_s_tai, __pyx_k_tai, sizeof(__pyx_k_tai), 0, 0, 1, 1}, + {&__pyx_n_s_tai2et, __pyx_k_tai2et, sizeof(__pyx_k_tai2et), 0, 0, 1, 1}, + {&__pyx_n_s_tai2tdb, __pyx_k_tai2tdb, sizeof(__pyx_k_tai2tdb), 0, 0, 1, 1}, + {&__pyx_n_s_tai2tdt, __pyx_k_tai2tdt, sizeof(__pyx_k_tai2tdt), 0, 0, 1, 1}, + {&__pyx_n_s_tai2ut1, __pyx_k_tai2ut1, sizeof(__pyx_k_tai2ut1), 0, 0, 1, 1}, + {&__pyx_n_s_tai2utc, __pyx_k_tai2utc, sizeof(__pyx_k_tai2utc), 0, 0, 1, 1}, + {&__pyx_n_s_tdb, __pyx_k_tdb, sizeof(__pyx_k_tdb), 0, 0, 1, 1}, + {&__pyx_n_s_tdt, __pyx_k_tdt, sizeof(__pyx_k_tdt), 0, 0, 1, 1}, + {&__pyx_n_s_tdt2et, __pyx_k_tdt2et, sizeof(__pyx_k_tdt2et), 0, 0, 1, 1}, + {&__pyx_n_s_tdt2tai, __pyx_k_tdt2tai, sizeof(__pyx_k_tdt2tai), 0, 0, 1, 1}, + {&__pyx_n_s_tdt2tdb, __pyx_k_tdt2tdb, sizeof(__pyx_k_tdt2tdb), 0, 0, 1, 1}, + {&__pyx_n_s_tdt2ut1, __pyx_k_tdt2ut1, sizeof(__pyx_k_tdt2ut1), 0, 0, 1, 1}, + {&__pyx_n_s_tdt2utc, __pyx_k_tdt2utc, sizeof(__pyx_k_tdt2utc), 0, 0, 1, 1}, + {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, + {&__pyx_n_s_theta, __pyx_k_theta, sizeof(__pyx_k_theta), 0, 0, 1, 1}, + {&__pyx_n_s_thetadot, __pyx_k_thetadot, sizeof(__pyx_k_thetadot), 0, 0, 1, 1}, + {&__pyx_n_s_tpm, __pyx_k_tpm, sizeof(__pyx_k_tpm), 0, 0, 1, 1}, + {&__pyx_n_s_tpm_data, __pyx_k_tpm_data, sizeof(__pyx_k_tpm_data), 0, 0, 1, 1}, + {&__pyx_n_s_tpm_state, __pyx_k_tpm_state, sizeof(__pyx_k_tpm_state), 0, 0, 1, 1}, + {&__pyx_kp_u_tpm_state_line_195, __pyx_k_tpm_state_line_195, sizeof(__pyx_k_tpm_state_line_195), 0, 1, 0, 0}, + {&__pyx_n_s_tstate, __pyx_k_tstate, sizeof(__pyx_k_tstate), 0, 0, 1, 1}, + {&__pyx_n_s_ut, __pyx_k_ut, sizeof(__pyx_k_ut), 0, 0, 1, 1}, + {&__pyx_n_s_ut1, __pyx_k_ut1, sizeof(__pyx_k_ut1), 0, 0, 1, 1}, + {&__pyx_n_s_ut12et, __pyx_k_ut12et, sizeof(__pyx_k_ut12et), 0, 0, 1, 1}, + {&__pyx_n_s_ut12gmst, __pyx_k_ut12gmst, sizeof(__pyx_k_ut12gmst), 0, 0, 1, 1}, + {&__pyx_n_s_ut12tai, __pyx_k_ut12tai, sizeof(__pyx_k_ut12tai), 0, 0, 1, 1}, + {&__pyx_n_s_ut12tdb, __pyx_k_ut12tdb, sizeof(__pyx_k_ut12tdb), 0, 0, 1, 1}, + {&__pyx_n_s_ut12tdt, __pyx_k_ut12tdt, sizeof(__pyx_k_ut12tdt), 0, 0, 1, 1}, + {&__pyx_n_s_ut12utc, __pyx_k_ut12utc, sizeof(__pyx_k_ut12utc), 0, 0, 1, 1}, + {&__pyx_n_s_ut2et, __pyx_k_ut2et, sizeof(__pyx_k_ut2et), 0, 0, 1, 1}, + {&__pyx_n_s_ut2gmst, __pyx_k_ut2gmst, sizeof(__pyx_k_ut2gmst), 0, 0, 1, 1}, + {&__pyx_n_s_utc, __pyx_k_utc, sizeof(__pyx_k_utc), 0, 0, 1, 1}, + {&__pyx_n_s_utc2et, __pyx_k_utc2et, sizeof(__pyx_k_utc2et), 0, 0, 1, 1}, + {&__pyx_n_s_utc2tdb, __pyx_k_utc2tdb, sizeof(__pyx_k_utc2tdb), 0, 0, 1, 1}, + {&__pyx_n_s_utc2tdt, __pyx_k_utc2tdt, sizeof(__pyx_k_utc2tdt), 0, 0, 1, 1}, + {&__pyx_n_s_utc2ut1, __pyx_k_utc2ut1, sizeof(__pyx_k_utc2ut1), 0, 0, 1, 1}, + {&__pyx_n_s_utc_now, __pyx_k_utc_now, sizeof(__pyx_k_utc_now), 0, 0, 1, 1}, + {&__pyx_n_s_v, __pyx_k_v, sizeof(__pyx_k_v), 0, 0, 1, 1}, + {&__pyx_n_s_v3, __pyx_k_v3, sizeof(__pyx_k_v3), 0, 0, 1, 1}, + {&__pyx_n_s_v6, __pyx_k_v6, sizeof(__pyx_k_v6), 0, 0, 1, 1}, + {&__pyx_n_s_v61, __pyx_k_v61, sizeof(__pyx_k_v61), 0, 0, 1, 1}, + {&__pyx_n_s_v62cat, __pyx_k_v62cat, sizeof(__pyx_k_v62cat), 0, 0, 1, 1}, + {&__pyx_n_s_v6_2, __pyx_k_v6_2, sizeof(__pyx_k_v6_2), 0, 0, 1, 1}, + {&__pyx_n_s_v6b, __pyx_k_v6b, sizeof(__pyx_k_v6b), 0, 0, 1, 1}, + {&__pyx_n_s_v6h, __pyx_k_v6h, sizeof(__pyx_k_v6h), 0, 0, 1, 1}, + {&__pyx_n_s_valid_keys, __pyx_k_valid_keys, sizeof(__pyx_k_valid_keys), 0, 0, 1, 1}, + {&__pyx_n_s_vb, __pyx_k_vb, sizeof(__pyx_k_vb), 0, 0, 1, 1}, + {&__pyx_n_s_vh, __pyx_k_vh, sizeof(__pyx_k_vh), 0, 0, 1, 1}, + {&__pyx_n_s_vp, __pyx_k_vp, sizeof(__pyx_k_vp), 0, 0, 1, 1}, + {&__pyx_n_s_vtype, __pyx_k_vtype, sizeof(__pyx_k_vtype), 0, 0, 1, 1}, + {&__pyx_n_s_vv, __pyx_k_vv, sizeof(__pyx_k_vv), 0, 0, 1, 1}, + {&__pyx_n_s_wavelength, __pyx_k_wavelength, sizeof(__pyx_k_wavelength), 0, 0, 1, 1}, + {&__pyx_n_s_x, __pyx_k_x, sizeof(__pyx_k_x), 0, 0, 1, 1}, + {&__pyx_n_s_xdot, __pyx_k_xdot, sizeof(__pyx_k_xdot), 0, 0, 1, 1}, + {&__pyx_n_s_xpole, __pyx_k_xpole, sizeof(__pyx_k_xpole), 0, 0, 1, 1}, + {&__pyx_n_s_xx, __pyx_k_xx, sizeof(__pyx_k_xx), 0, 0, 1, 1}, + {&__pyx_n_s_xy, __pyx_k_xy, sizeof(__pyx_k_xy), 0, 0, 1, 1}, + {&__pyx_n_s_xz, __pyx_k_xz, sizeof(__pyx_k_xz), 0, 0, 1, 1}, + {&__pyx_n_s_y, __pyx_k_y, sizeof(__pyx_k_y), 0, 0, 1, 1}, + {&__pyx_n_s_y2doy, __pyx_k_y2doy, sizeof(__pyx_k_y2doy), 0, 0, 1, 1}, + {&__pyx_kp_u_y2doy_line_1257, __pyx_k_y2doy_line_1257, sizeof(__pyx_k_y2doy_line_1257), 0, 1, 0, 0}, + {&__pyx_n_s_y2j, __pyx_k_y2j, sizeof(__pyx_k_y2j), 0, 0, 1, 1}, + {&__pyx_kp_u_y2j_line_1206, __pyx_k_y2j_line_1206, sizeof(__pyx_k_y2j_line_1206), 0, 1, 0, 0}, + {&__pyx_n_s_ydd, __pyx_k_ydd, sizeof(__pyx_k_ydd), 0, 0, 1, 1}, + {&__pyx_n_s_ydot, __pyx_k_ydot, sizeof(__pyx_k_ydot), 0, 0, 1, 1}, + {&__pyx_n_s_year, __pyx_k_year, sizeof(__pyx_k_year), 0, 0, 1, 1}, + {&__pyx_n_s_ypole, __pyx_k_ypole, sizeof(__pyx_k_ypole), 0, 0, 1, 1}, + {&__pyx_n_s_yx, __pyx_k_yx, sizeof(__pyx_k_yx), 0, 0, 1, 1}, + {&__pyx_n_s_yy, __pyx_k_yy, sizeof(__pyx_k_yy), 0, 0, 1, 1}, + {&__pyx_n_s_yz, __pyx_k_yz, sizeof(__pyx_k_yz), 0, 0, 1, 1}, + {&__pyx_n_s_z, __pyx_k_z, sizeof(__pyx_k_z), 0, 0, 1, 1}, + {&__pyx_n_s_zdot, __pyx_k_zdot, sizeof(__pyx_k_zdot), 0, 0, 1, 1}, + {&__pyx_n_s_zee, __pyx_k_zee, sizeof(__pyx_k_zee), 0, 0, 1, 1}, + {&__pyx_n_s_zeedot, __pyx_k_zeedot, sizeof(__pyx_k_zeedot), 0, 0, 1, 1}, + {&__pyx_n_s_zeta, __pyx_k_zeta, sizeof(__pyx_k_zeta), 0, 0, 1, 1}, + {&__pyx_n_s_zetadot, __pyx_k_zetadot, sizeof(__pyx_k_zetadot), 0, 0, 1, 1}, + {&__pyx_n_s_zx, __pyx_k_zx, sizeof(__pyx_k_zx), 0, 0, 1, 1}, + {&__pyx_n_s_zy, __pyx_k_zy, sizeof(__pyx_k_zy), 0, 0, 1, 1}, + {&__pyx_n_s_zz, __pyx_k_zz, sizeof(__pyx_k_zz), 0, 0, 1, 1}, + {0, 0, 0, 0, 0, 0, 0} }; +static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { + __pyx_builtin_property = __Pyx_GetBuiltinName(__pyx_n_s_property); if (!__pyx_builtin_property) __PYX_ERR(0, 91, __pyx_L1_error) + __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(0, 75, __pyx_L1_error) + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(1, 445, __pyx_L1_error) + __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(2, 83, __pyx_L1_error) + __pyx_builtin_IndexError = __Pyx_GetBuiltinName(__pyx_n_s_IndexError); if (!__pyx_builtin_IndexError) __PYX_ERR(2, 122, __pyx_L1_error) + return 0; + __pyx_L1_error:; + return -1; +} -static PyMappingMethods __pyx_tp_as_mapping_PVEC = { - 0, /*mp_length*/ - __pyx_pf_5pytpm_3tpm_4PVEC_2__getitem__, /*mp_subscript*/ - __pyx_mp_ass_subscript_5pytpm_3tpm_PVEC, /*mp_ass_subscript*/ -}; +static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple_ = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple_)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple_); + __Pyx_GIVEREF(__pyx_tuple_); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__2); + __Pyx_GIVEREF(__pyx_tuple__2); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__3); + __Pyx_GIVEREF(__pyx_tuple__3); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__4); + __Pyx_GIVEREF(__pyx_tuple__4); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__5); + __Pyx_GIVEREF(__pyx_tuple__5); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__6); + __Pyx_GIVEREF(__pyx_tuple__6); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__7 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__7); + __Pyx_GIVEREF(__pyx_tuple__7); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__8); + __Pyx_GIVEREF(__pyx_tuple__8); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__10 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__10); + __Pyx_GIVEREF(__pyx_tuple__10); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__11); + __Pyx_GIVEREF(__pyx_tuple__11); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__12); + __Pyx_GIVEREF(__pyx_tuple__12); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__13); + __Pyx_GIVEREF(__pyx_tuple__13); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__14); + __Pyx_GIVEREF(__pyx_tuple__14); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__15 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__15); + __Pyx_GIVEREF(__pyx_tuple__15); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__17); + __Pyx_GIVEREF(__pyx_tuple__17); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__18 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__18); + __Pyx_GIVEREF(__pyx_tuple__18); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__19 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__19); + __Pyx_GIVEREF(__pyx_tuple__19); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__20 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__20); + __Pyx_GIVEREF(__pyx_tuple__20); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__21 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__21); + __Pyx_GIVEREF(__pyx_tuple__21); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__22 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__22); + __Pyx_GIVEREF(__pyx_tuple__22); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__23 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__23); + __Pyx_GIVEREF(__pyx_tuple__23); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__24 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__24); + __Pyx_GIVEREF(__pyx_tuple__24); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__25 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__25); + __Pyx_GIVEREF(__pyx_tuple__25); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__26 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__26); + __Pyx_GIVEREF(__pyx_tuple__26); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__27 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__27); + __Pyx_GIVEREF(__pyx_tuple__27); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__28 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__28); + __Pyx_GIVEREF(__pyx_tuple__28); + + /* "(tree fragment)":2 + * def __reduce_cython__(self): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + */ + __pyx_tuple__29 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(3, 2, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__29); + __Pyx_GIVEREF(__pyx_tuple__29); + + /* "(tree fragment)":4 + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") + * def __setstate_cython__(self, __pyx_state): + * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< + */ + __pyx_tuple__30 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(3, 4, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__30); + __Pyx_GIVEREF(__pyx_tuple__30); + + /* "src/tpm_times.pxi":65 + * + * """ + * valid_keys = ('r', 'h', 'dd', 'mm', 'ss') # <<<<<<<<<<<<<< + * cdef tpm_times.DMS _dms + * def __cinit__(self): + */ + __pyx_tuple__31 = PyTuple_Pack(5, __pyx_n_s_r, __pyx_n_s_h, __pyx_n_s_dd, __pyx_n_s_mm, __pyx_n_s_ss); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 65, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__31); + __Pyx_GIVEREF(__pyx_tuple__31); -static PyBufferProcs __pyx_tp_as_buffer_PVEC = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; + /* "src/tpm_times.pxi":270 + * + * """ + * valid_keys = ('r', 'dd', 'hh', 'mm', 'ss') # <<<<<<<<<<<<<< + * cdef tpm_times.HMS _hms + * def __cinit__(self): + */ + __pyx_tuple__32 = PyTuple_Pack(5, __pyx_n_s_r, __pyx_n_s_dd, __pyx_n_s_hh, __pyx_n_s_mm, __pyx_n_s_ss); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 270, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__32); + __Pyx_GIVEREF(__pyx_tuple__32); -static PyTypeObject __pyx_type_5pytpm_3tpm_PVEC = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("pytpm.tpm.PVEC"), /*tp_name*/ - sizeof(struct __pyx_obj_5pytpm_3tpm_PVEC), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_5pytpm_3tpm_PVEC, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number_PVEC, /*tp_as_number*/ - &__pyx_tp_as_sequence_PVEC, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_PVEC, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_PVEC, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - __Pyx_DOCSTR("Class for holding N_TPM_STATES element array of V6 vectors.\n\n This is a list like object with valid indexes from 0 to 21. Each\n index represents the state having the same number. Each index\n location stores a V6C vector corresponding to that state.\n "), /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_5pytpm_3tpm_PVEC, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - __pyx_pf_5pytpm_3tpm_4PVEC_1__init__, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_5pytpm_3tpm_PVEC, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; + /* "src/tpm_times.pxi":484 + * + * """ + * valid_keys = ('j','year','ydd','y','m','dd','hh','mm','ss') # <<<<<<<<<<<<<< + * cdef tpm_times.YMD _ymd + * def __cinit__(self): + */ + __pyx_tuple__33 = PyTuple_Pack(9, __pyx_n_s_j, __pyx_n_s_year, __pyx_n_s_ydd, __pyx_n_s_y, __pyx_n_s_m, __pyx_n_s_dd, __pyx_n_s_hh, __pyx_n_s_mm, __pyx_n_s_ss); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 484, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__33); + __Pyx_GIVEREF(__pyx_tuple__33); -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; + /* "src/tpm_times.pxi":756 + * + * """ + * valid_keys = ('j', 'year', 'dd', 'hh', 'mm', 'ss') # <<<<<<<<<<<<<< + * cdef tpm_times.JD _jd + * def __cinit__(self): + */ + __pyx_tuple__34 = PyTuple_Pack(6, __pyx_n_s_j, __pyx_n_s_year, __pyx_n_s_dd, __pyx_n_s_hh, __pyx_n_s_mm, __pyx_n_s_ss); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 756, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__34); + __Pyx_GIVEREF(__pyx_tuple__34); -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("tpm"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif + /* "src/tpm_times.pxi":927 + * + * + * def byear2jd(byear): # <<<<<<<<<<<<<< + * """Convert Besselian year into a Julian date. + * + */ + __pyx_tuple__35 = PyTuple_Pack(1, __pyx_n_s_byear); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 927, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__35); + __Pyx_GIVEREF(__pyx_tuple__35); + __pyx_codeobj__36 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__35, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_byear2jd, 927, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__36)) __PYX_ERR(0, 927, __pyx_L1_error) + + /* "src/tpm_times.pxi":951 + * + * + * def jd2byear(jd): # <<<<<<<<<<<<<< + * """Convert Julian date into a Besselian year. + * + */ + __pyx_tuple__37 = PyTuple_Pack(1, __pyx_n_s_jd); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 951, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__37); + __Pyx_GIVEREF(__pyx_tuple__37); + __pyx_codeobj__38 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__37, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_jd2byear, 951, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__38)) __PYX_ERR(0, 951, __pyx_L1_error) + + /* "src/tpm_times.pxi":975 + * + * + * def jyear2jd(jyear): # <<<<<<<<<<<<<< + * """Convert Julian year into a Julian date. + * + */ + __pyx_tuple__39 = PyTuple_Pack(1, __pyx_n_s_jyear); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 975, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__39); + __Pyx_GIVEREF(__pyx_tuple__39); + __pyx_codeobj__40 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__39, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_jyear2jd, 975, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__40)) __PYX_ERR(0, 975, __pyx_L1_error) + + /* "src/tpm_times.pxi":999 + * + * + * def jd2jyear(jd): # <<<<<<<<<<<<<< + * """Convert Julian date into Julian year. + * + */ + __pyx_tuple__41 = PyTuple_Pack(1, __pyx_n_s_jd); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 999, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__41); + __Pyx_GIVEREF(__pyx_tuple__41); + __pyx_codeobj__42 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__41, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_jd2jyear, 999, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__42)) __PYX_ERR(0, 999, __pyx_L1_error) + + /* "src/tpm_times.pxi":1023 + * + * + * def jd_now(): # <<<<<<<<<<<<<< + * """Return current Julian date as a JD object. + * + */ + __pyx_tuple__43 = PyTuple_Pack(1, __pyx_n_s_jd); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 1023, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__43); + __Pyx_GIVEREF(__pyx_tuple__43); + __pyx_codeobj__44 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__43, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_jd_now, 1023, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__44)) __PYX_ERR(0, 1023, __pyx_L1_error) + + /* "src/tpm_times.pxi":1039 + * + * + * def utc_now(): # <<<<<<<<<<<<<< + * """Current UTC as a Julian date. + * + */ + __pyx_codeobj__45 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_utc_now, 1039, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__45)) __PYX_ERR(0, 1039, __pyx_L1_error) + + /* "src/tpm_times.pxi":1053 + * + * + * def gcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< + * """Return Julian day number for the Gregorian calendar date. + * + */ + __pyx_tuple__46 = PyTuple_Pack(3, __pyx_n_s_y, __pyx_n_s_m, __pyx_n_s_dd); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(0, 1053, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__46); + __Pyx_GIVEREF(__pyx_tuple__46); + __pyx_codeobj__47 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__46, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_gcal2j, 1053, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__47)) __PYX_ERR(0, 1053, __pyx_L1_error) + + /* "src/tpm_times.pxi":1085 + * + * + * def jcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< + * """Return Julian day number for the Julian calendar date. + * + */ + __pyx_tuple__48 = PyTuple_Pack(3, __pyx_n_s_y, __pyx_n_s_m, __pyx_n_s_dd); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(0, 1085, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__48); + __Pyx_GIVEREF(__pyx_tuple__48); + __pyx_codeobj__49 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__48, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_jcal2j, 1085, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__49)) __PYX_ERR(0, 1085, __pyx_L1_error) + + /* "src/tpm_times.pxi":1119 + * + * + * def j2gcal(double j): # <<<<<<<<<<<<<< + * """Convert Julian date into Gregorian calendar date. + * + */ + __pyx_tuple__50 = PyTuple_Pack(5, __pyx_n_s_j, __pyx_n_s_j, __pyx_n_s_y, __pyx_n_s_m, __pyx_n_s_d); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(0, 1119, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__50); + __Pyx_GIVEREF(__pyx_tuple__50); + __pyx_codeobj__51 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__50, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_j2gcal, 1119, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__51)) __PYX_ERR(0, 1119, __pyx_L1_error) + + /* "src/tpm_times.pxi":1149 + * + * + * def j2jcal(double j): # <<<<<<<<<<<<<< + * """Convert Julian date into Julian calendar date. + * + */ + __pyx_tuple__52 = PyTuple_Pack(5, __pyx_n_s_j, __pyx_n_s_j, __pyx_n_s_y, __pyx_n_s_m, __pyx_n_s_d); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(0, 1149, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__52); + __Pyx_GIVEREF(__pyx_tuple__52); + __pyx_codeobj__53 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__52, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_j2jcal, 1149, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__53)) __PYX_ERR(0, 1149, __pyx_L1_error) + + /* "src/tpm_times.pxi":1179 + * + * + * def j2y(j): # <<<<<<<<<<<<<< + * """Convert Julian date into Gregorian calendar year with fractional part. + * + */ + __pyx_tuple__54 = PyTuple_Pack(1, __pyx_n_s_j); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(0, 1179, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__54); + __Pyx_GIVEREF(__pyx_tuple__54); + __pyx_codeobj__55 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__54, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_j2y, 1179, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__55)) __PYX_ERR(0, 1179, __pyx_L1_error) + + /* "src/tpm_times.pxi":1206 + * + * + * def y2j(y): # <<<<<<<<<<<<<< + * """Convert Gregorian calendar year with fractional part into Julian date. + * + */ + __pyx_tuple__56 = PyTuple_Pack(1, __pyx_n_s_y); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(0, 1206, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__56); + __Pyx_GIVEREF(__pyx_tuple__56); + __pyx_codeobj__57 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__56, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_y2j, 1206, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__57)) __PYX_ERR(0, 1206, __pyx_L1_error) + + /* "src/tpm_times.pxi":1232 + * + * + * def j2dow(j): # <<<<<<<<<<<<<< + * """Return day of week for the given Julian date. + * + */ + __pyx_tuple__58 = PyTuple_Pack(1, __pyx_n_s_j); if (unlikely(!__pyx_tuple__58)) __PYX_ERR(0, 1232, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__58); + __Pyx_GIVEREF(__pyx_tuple__58); + __pyx_codeobj__59 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__58, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_j2dow, 1232, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__59)) __PYX_ERR(0, 1232, __pyx_L1_error) + + /* "src/tpm_times.pxi":1257 + * + * + * def y2doy(int y): # <<<<<<<<<<<<<< + * """Return number of days in the given Gregorian calendar year. + * + */ + __pyx_tuple__60 = PyTuple_Pack(2, __pyx_n_s_y, __pyx_n_s_y); if (unlikely(!__pyx_tuple__60)) __PYX_ERR(0, 1257, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__60); + __Pyx_GIVEREF(__pyx_tuple__60); + __pyx_codeobj__61 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__60, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_y2doy, 1257, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__61)) __PYX_ERR(0, 1257, __pyx_L1_error) + + /* "src/tpm_times.pxi":1287 + * + * + * def fmt_alpha(alpha): # <<<<<<<<<<<<<< + * """Normalize and format angle in radians into a str: ' ##H ##M ##.###S'. + * + */ + __pyx_tuple__62 = PyTuple_Pack(1, __pyx_n_s_alpha); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(0, 1287, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__62); + __Pyx_GIVEREF(__pyx_tuple__62); + __pyx_codeobj__63 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__62, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_alpha, 1287, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__63)) __PYX_ERR(0, 1287, __pyx_L1_error) + + /* "src/tpm_times.pxi":1331 + * + * + * def fmt_delta(delta): # <<<<<<<<<<<<<< + * """Normalize and format angle in radians into a str: ###D ##' ##.###". + * + */ + __pyx_tuple__64 = PyTuple_Pack(1, __pyx_n_s_delta); if (unlikely(!__pyx_tuple__64)) __PYX_ERR(0, 1331, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__64); + __Pyx_GIVEREF(__pyx_tuple__64); + __pyx_codeobj__65 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__64, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_delta, 1331, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__65)) __PYX_ERR(0, 1331, __pyx_L1_error) + + /* "src/tpm_times.pxi":1370 + * + * + * def fmt_d(d): # <<<<<<<<<<<<<< + * """Format angle in degrees into a string: ###D ##' ##.###". + * + */ + __pyx_tuple__66 = PyTuple_Pack(1, __pyx_n_s_d); if (unlikely(!__pyx_tuple__66)) __PYX_ERR(0, 1370, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__66); + __Pyx_GIVEREF(__pyx_tuple__66); + __pyx_codeobj__67 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__66, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_d, 1370, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__67)) __PYX_ERR(0, 1370, __pyx_L1_error) + + /* "src/tpm_times.pxi":1410 + * + * + * def fmt_h(h): # <<<<<<<<<<<<<< + * """Format hours into a string: ##H ##M ##.###S". + * + */ + __pyx_tuple__68 = PyTuple_Pack(1, __pyx_n_s_h); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(0, 1410, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__68); + __Pyx_GIVEREF(__pyx_tuple__68); + __pyx_codeobj__69 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__68, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_h, 1410, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__69)) __PYX_ERR(0, 1410, __pyx_L1_error) + + /* "src/tpm_times.pxi":1444 + * + * + * def fmt_j(j): # <<<<<<<<<<<<<< + * """Format Julian date into a string. + * + */ + __pyx_tuple__70 = PyTuple_Pack(1, __pyx_n_s_j); if (unlikely(!__pyx_tuple__70)) __PYX_ERR(0, 1444, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__70); + __Pyx_GIVEREF(__pyx_tuple__70); + __pyx_codeobj__71 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__70, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_j, 1444, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__71)) __PYX_ERR(0, 1444, __pyx_L1_error) + + /* "src/tpm_times.pxi":1480 + * + * + * def fmt_r(r): # <<<<<<<<<<<<<< + * """Format radians into a string with angle expressed as degrees. + * + */ + __pyx_tuple__72 = PyTuple_Pack(1, __pyx_n_s_r); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(0, 1480, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__72); + __Pyx_GIVEREF(__pyx_tuple__72); + __pyx_codeobj__73 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__72, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_r, 1480, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__73)) __PYX_ERR(0, 1480, __pyx_L1_error) + + /* "src/tpm_times.pxi":1517 + * + * + * def fmt_y(y): # <<<<<<<<<<<<<< + * """Format years, including fractional part, into a string. + * + */ + __pyx_tuple__74 = PyTuple_Pack(1, __pyx_n_s_y); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(0, 1517, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__74); + __Pyx_GIVEREF(__pyx_tuple__74); + __pyx_codeobj__75 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__74, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_fmt_y, 1517, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__75)) __PYX_ERR(0, 1517, __pyx_L1_error) + + /* "src/tpm_times.pxi":1549 + * + * + * def d2d(d): # <<<<<<<<<<<<<< + * """Normalize angle in degrees into (-360, 360). + * + */ + __pyx_tuple__76 = PyTuple_Pack(1, __pyx_n_s_d); if (unlikely(!__pyx_tuple__76)) __PYX_ERR(0, 1549, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__76); + __Pyx_GIVEREF(__pyx_tuple__76); + __pyx_codeobj__77 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__76, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_d2d, 1549, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__77)) __PYX_ERR(0, 1549, __pyx_L1_error) + + /* "src/tpm_times.pxi":1579 + * + * + * def h2h(h): # <<<<<<<<<<<<<< + * """Normalize angle in hours into [0, 24). + * + */ + __pyx_tuple__78 = PyTuple_Pack(1, __pyx_n_s_h); if (unlikely(!__pyx_tuple__78)) __PYX_ERR(0, 1579, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__78); + __Pyx_GIVEREF(__pyx_tuple__78); + __pyx_codeobj__79 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__78, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_h2h, 1579, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__79)) __PYX_ERR(0, 1579, __pyx_L1_error) + + /* "src/tpm_times.pxi":1611 + * + * + * def r2r(r): # <<<<<<<<<<<<<< + * """Normalize angle in radians into [0, 2). + * + */ + __pyx_tuple__80 = PyTuple_Pack(1, __pyx_n_s_r); if (unlikely(!__pyx_tuple__80)) __PYX_ERR(0, 1611, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__80); + __Pyx_GIVEREF(__pyx_tuple__80); + __pyx_codeobj__81 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__80, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_r2r, 1611, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__81)) __PYX_ERR(0, 1611, __pyx_L1_error) + + /* "src/tpm_times.pxi":1646 + * # times.h. I am including all of these in tpm_times for + * # convenience. + * def d2h(d): # <<<<<<<<<<<<<< + * """Convert angle in degrees into hours. + * + */ + __pyx_tuple__82 = PyTuple_Pack(1, __pyx_n_s_d); if (unlikely(!__pyx_tuple__82)) __PYX_ERR(0, 1646, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__82); + __Pyx_GIVEREF(__pyx_tuple__82); + __pyx_codeobj__83 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__82, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_d2h, 1646, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__83)) __PYX_ERR(0, 1646, __pyx_L1_error) + + /* "src/tpm_times.pxi":1672 + * + * + * def h2d(h): # <<<<<<<<<<<<<< + * """Convert angle in hours into degrees. + * + */ + __pyx_tuple__84 = PyTuple_Pack(1, __pyx_n_s_h); if (unlikely(!__pyx_tuple__84)) __PYX_ERR(0, 1672, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__84); + __Pyx_GIVEREF(__pyx_tuple__84); + __pyx_codeobj__85 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__84, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_h2d, 1672, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__85)) __PYX_ERR(0, 1672, __pyx_L1_error) + + /* "src/tpm_times.pxi":1698 + * + * + * def d2r(d): # <<<<<<<<<<<<<< + * """Convert angle in degrees into degrees. + * + */ + __pyx_tuple__86 = PyTuple_Pack(1, __pyx_n_s_d); if (unlikely(!__pyx_tuple__86)) __PYX_ERR(0, 1698, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__86); + __Pyx_GIVEREF(__pyx_tuple__86); + __pyx_codeobj__87 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__86, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_d2r, 1698, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__87)) __PYX_ERR(0, 1698, __pyx_L1_error) + + /* "src/tpm_times.pxi":1724 + * + * + * def r2d(r): # <<<<<<<<<<<<<< + * """Convert angle in radians into degrees. + * + */ + __pyx_tuple__88 = PyTuple_Pack(1, __pyx_n_s_r); if (unlikely(!__pyx_tuple__88)) __PYX_ERR(0, 1724, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__88); + __Pyx_GIVEREF(__pyx_tuple__88); + __pyx_codeobj__89 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__88, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_r2d, 1724, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__89)) __PYX_ERR(0, 1724, __pyx_L1_error) + + /* "src/tpm_times.pxi":1752 + * + * + * def h2r(h): # <<<<<<<<<<<<<< + * """Convert angle in hours into radians. + * + */ + __pyx_tuple__90 = PyTuple_Pack(1, __pyx_n_s_h); if (unlikely(!__pyx_tuple__90)) __PYX_ERR(0, 1752, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__90); + __Pyx_GIVEREF(__pyx_tuple__90); + __pyx_codeobj__91 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__90, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_h2r, 1752, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__91)) __PYX_ERR(0, 1752, __pyx_L1_error) + + /* "src/tpm_times.pxi":1776 + * + * + * def r2h(r): # <<<<<<<<<<<<<< + * """Convert angle in radians into hours. + * + */ + __pyx_tuple__92 = PyTuple_Pack(1, __pyx_n_s_r); if (unlikely(!__pyx_tuple__92)) __PYX_ERR(0, 1776, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__92); + __Pyx_GIVEREF(__pyx_tuple__92); + __pyx_codeobj__93 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__92, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_r2h, 1776, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__93)) __PYX_ERR(0, 1776, __pyx_L1_error) + + /* "src/tpm_times.pxi":1800 + * + * + * def d2as(d): # <<<<<<<<<<<<<< + * """Convert angle in degrees into arc-seconds. + * + */ + __pyx_tuple__94 = PyTuple_Pack(1, __pyx_n_s_d); if (unlikely(!__pyx_tuple__94)) __PYX_ERR(0, 1800, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__94); + __Pyx_GIVEREF(__pyx_tuple__94); + __pyx_codeobj__95 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__94, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_d2as, 1800, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__95)) __PYX_ERR(0, 1800, __pyx_L1_error) + + /* "src/tpm_times.pxi":1824 + * + * + * def as2d(arcs): # <<<<<<<<<<<<<< + * """Convert angle in arc-seconds into degrees. + * + */ + __pyx_tuple__96 = PyTuple_Pack(1, __pyx_n_s_arcs); if (unlikely(!__pyx_tuple__96)) __PYX_ERR(0, 1824, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__96); + __Pyx_GIVEREF(__pyx_tuple__96); + __pyx_codeobj__97 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__96, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_as2d, 1824, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__97)) __PYX_ERR(0, 1824, __pyx_L1_error) + + /* "src/tpm_times.pxi":1848 + * + * + * def as2h(arcs): # <<<<<<<<<<<<<< + * """Convert angle in arc-seconds into hours. + * + */ + __pyx_tuple__98 = PyTuple_Pack(1, __pyx_n_s_arcs); if (unlikely(!__pyx_tuple__98)) __PYX_ERR(0, 1848, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__98); + __Pyx_GIVEREF(__pyx_tuple__98); + __pyx_codeobj__99 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__98, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_as2h, 1848, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__99)) __PYX_ERR(0, 1848, __pyx_L1_error) + + /* "src/tpm_times.pxi":1872 + * + * + * def h2as(h): # <<<<<<<<<<<<<< + * """Convert angle in hours into arc-seconds. + * + */ + __pyx_tuple__100 = PyTuple_Pack(1, __pyx_n_s_h); if (unlikely(!__pyx_tuple__100)) __PYX_ERR(0, 1872, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__100); + __Pyx_GIVEREF(__pyx_tuple__100); + __pyx_codeobj__101 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__100, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_h2as, 1872, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__101)) __PYX_ERR(0, 1872, __pyx_L1_error) + + /* "src/tpm_times.pxi":1896 + * + * + * def r2as(r): # <<<<<<<<<<<<<< + * """Convert angle in radians into arc-seconds. + * + */ + __pyx_tuple__102 = PyTuple_Pack(1, __pyx_n_s_r); if (unlikely(!__pyx_tuple__102)) __PYX_ERR(0, 1896, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__102); + __Pyx_GIVEREF(__pyx_tuple__102); + __pyx_codeobj__103 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__102, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_r2as, 1896, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__103)) __PYX_ERR(0, 1896, __pyx_L1_error) + + /* "src/tpm_times.pxi":1919 + * + * + * def as2r(arcs): # <<<<<<<<<<<<<< + * """Convert angle in arc-seconds into radians. + * + */ + __pyx_tuple__104 = PyTuple_Pack(1, __pyx_n_s_arcs); if (unlikely(!__pyx_tuple__104)) __PYX_ERR(0, 1919, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__104); + __Pyx_GIVEREF(__pyx_tuple__104); + __pyx_codeobj__105 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__104, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_times_pxi, __pyx_n_s_as2r, 1919, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__105)) __PYX_ERR(0, 1919, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1150 + * + * + * def m3rx(theta): # <<<<<<<<<<<<<< + * """A rotation matrix for rotation about X-axis. + * + */ + __pyx_tuple__106 = PyTuple_Pack(2, __pyx_n_s_theta, __pyx_n_s_m3); if (unlikely(!__pyx_tuple__106)) __PYX_ERR(1, 1150, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__106); + __Pyx_GIVEREF(__pyx_tuple__106); + __pyx_codeobj__107 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__106, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m3rx, 1150, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__107)) __PYX_ERR(1, 1150, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1177 + * + * + * def m3rxdot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about X-axis. + * + */ + __pyx_tuple__108 = PyTuple_Pack(3, __pyx_n_s_theta, __pyx_n_s_thetadot, __pyx_n_s_m3); if (unlikely(!__pyx_tuple__108)) __PYX_ERR(1, 1177, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__108); + __Pyx_GIVEREF(__pyx_tuple__108); + __pyx_codeobj__109 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__108, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m3rxdot, 1177, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__109)) __PYX_ERR(1, 1177, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1207 + * + * + * def m3ry(theta): # <<<<<<<<<<<<<< + * """A rotation matrix for rotation about Y-axis. + * + */ + __pyx_tuple__110 = PyTuple_Pack(2, __pyx_n_s_theta, __pyx_n_s_m3); if (unlikely(!__pyx_tuple__110)) __PYX_ERR(1, 1207, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__110); + __Pyx_GIVEREF(__pyx_tuple__110); + __pyx_codeobj__111 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__110, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m3ry, 1207, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__111)) __PYX_ERR(1, 1207, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1234 + * + * + * def m3rydot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about Y-axis. + * + */ + __pyx_tuple__112 = PyTuple_Pack(3, __pyx_n_s_theta, __pyx_n_s_thetadot, __pyx_n_s_m3); if (unlikely(!__pyx_tuple__112)) __PYX_ERR(1, 1234, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__112); + __Pyx_GIVEREF(__pyx_tuple__112); + __pyx_codeobj__113 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__112, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m3rydot, 1234, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__113)) __PYX_ERR(1, 1234, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1263 + * + * + * def m3rz(theta): # <<<<<<<<<<<<<< + * """Rotation matrix for rotation about Z-axis. + * + */ + __pyx_tuple__114 = PyTuple_Pack(2, __pyx_n_s_theta, __pyx_n_s_m3); if (unlikely(!__pyx_tuple__114)) __PYX_ERR(1, 1263, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__114); + __Pyx_GIVEREF(__pyx_tuple__114); + __pyx_codeobj__115 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__114, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m3rz, 1263, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__115)) __PYX_ERR(1, 1263, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1290 + * + * + * def m3rzdot(theta, thetadot): # <<<<<<<<<<<<<< + * """Derivative of rotation matrix for rotation about Z-axis. + * + */ + __pyx_tuple__116 = PyTuple_Pack(3, __pyx_n_s_theta, __pyx_n_s_thetadot, __pyx_n_s_m3); if (unlikely(!__pyx_tuple__116)) __PYX_ERR(1, 1290, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__116); + __Pyx_GIVEREF(__pyx_tuple__116); + __pyx_codeobj__117 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__116, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m3rzdot, 1290, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__117)) __PYX_ERR(1, 1290, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1319 + * + * + * def m6qx(x, xdot): # <<<<<<<<<<<<<< + * """An M6 matrix for rotation about X-axis. + * + */ + __pyx_tuple__118 = PyTuple_Pack(3, __pyx_n_s_x, __pyx_n_s_xdot, __pyx_n_s_m6); if (unlikely(!__pyx_tuple__118)) __PYX_ERR(1, 1319, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__118); + __Pyx_GIVEREF(__pyx_tuple__118); + __pyx_codeobj__119 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__118, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m6qx, 1319, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__119)) __PYX_ERR(1, 1319, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1340 + * + * + * def m6qy(y, ydot): # <<<<<<<<<<<<<< + * """An M6 matrix for rotation about Y-axis. + * + */ + __pyx_tuple__120 = PyTuple_Pack(3, __pyx_n_s_y, __pyx_n_s_ydot, __pyx_n_s_m6); if (unlikely(!__pyx_tuple__120)) __PYX_ERR(1, 1340, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__120); + __Pyx_GIVEREF(__pyx_tuple__120); + __pyx_codeobj__121 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__120, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m6qy, 1340, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__121)) __PYX_ERR(1, 1340, __pyx_L1_error) + + /* "src/tpm_vec.pxi":1361 + * + * + * def m6qz(z, zdot): # <<<<<<<<<<<<<< + * """An M6 matrix for rotation about Z-axis. + * + */ + __pyx_tuple__122 = PyTuple_Pack(3, __pyx_n_s_z, __pyx_n_s_zdot, __pyx_n_s_m6); if (unlikely(!__pyx_tuple__122)) __PYX_ERR(1, 1361, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__122); + __Pyx_GIVEREF(__pyx_tuple__122); + __pyx_codeobj__123 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__122, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_vec_pxi, __pyx_n_s_m6qz, 1361, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__123)) __PYX_ERR(1, 1361, __pyx_L1_error) + + /* "src/tpm_astro.pxi":27 + * + * + * def tpm_data(TSTATE tstate, int action): # <<<<<<<<<<<<<< + * """Compute and set dependent TSTATE data. + * + */ + __pyx_tuple__124 = PyTuple_Pack(2, __pyx_n_s_tstate, __pyx_n_s_action); if (unlikely(!__pyx_tuple__124)) __PYX_ERR(2, 27, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__124); + __Pyx_GIVEREF(__pyx_tuple__124); + __pyx_codeobj__125 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__124, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tpm_data, 27, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__125)) __PYX_ERR(2, 27, __pyx_L1_error) + + /* "src/tpm_astro.pxi":140 + * + * + * def tpm(PVEC pvec, int s1, int s2, double ep, double eq, TSTATE tstate): # <<<<<<<<<<<<<< + * """Apply transition between to states. + * + */ + __pyx_tuple__126 = PyTuple_Pack(9, __pyx_n_s_pvec, __pyx_n_s_s1, __pyx_n_s_s2, __pyx_n_s_ep, __pyx_n_s_eq, __pyx_n_s_tstate, __pyx_n_s_spvec, __pyx_n_s_ststate, __pyx_n_s_t); if (unlikely(!__pyx_tuple__126)) __PYX_ERR(2, 140, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__126); + __Pyx_GIVEREF(__pyx_tuple__126); + __pyx_codeobj__127 = (PyObject*)__Pyx_PyCode_New(6, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__126, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tpm, 140, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__127)) __PYX_ERR(2, 140, __pyx_L1_error) + + /* "src/tpm_astro.pxi":195 + * + * + * def tpm_state(s): # <<<<<<<<<<<<<< + * """Return state name given state id. + * + */ + __pyx_tuple__128 = PyTuple_Pack(1, __pyx_n_s_s); if (unlikely(!__pyx_tuple__128)) __PYX_ERR(2, 195, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__128); + __Pyx_GIVEREF(__pyx_tuple__128); + __pyx_codeobj__129 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__128, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tpm_state, 195, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__129)) __PYX_ERR(2, 195, __pyx_L1_error) + + /* "src/tpm_astro.pxi":226 + * + * + * def delta_AT(utc): # <<<<<<<<<<<<<< + * """Return Delta AT = TAI - UTC for the given UTC. + * + */ + __pyx_tuple__130 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__130)) __PYX_ERR(2, 226, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__130); + __Pyx_GIVEREF(__pyx_tuple__130); + __pyx_codeobj__131 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__130, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_delta_AT, 226, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__131)) __PYX_ERR(2, 226, __pyx_L1_error) + + /* "src/tpm_astro.pxi":248 + * + * + * def delta_T(ut1): # <<<<<<<<<<<<<< + * """Return Delta T = TT - UT1 for the given UT1. + * + */ + __pyx_tuple__132 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__132)) __PYX_ERR(2, 248, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__132); + __Pyx_GIVEREF(__pyx_tuple__132); + __pyx_codeobj__133 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__132, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_delta_T, 248, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__133)) __PYX_ERR(2, 248, __pyx_L1_error) + + /* "src/tpm_astro.pxi":277 + * + * + * def delta_UT(utc): # <<<<<<<<<<<<<< + * """Return Delta UT = UT1 - UTC for the given UTC. + * + */ + __pyx_tuple__134 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__134)) __PYX_ERR(2, 277, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__134); + __Pyx_GIVEREF(__pyx_tuple__134); + __pyx_codeobj__135 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__134, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_delta_UT, 277, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__135)) __PYX_ERR(2, 277, __pyx_L1_error) + + /* "src/tpm_astro.pxi":301 + * + * + * def delta_ET(utc): # <<<<<<<<<<<<<< + * """Return Delta ET = ET - UTC for the given UTC. + * + */ + __pyx_tuple__136 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__136)) __PYX_ERR(2, 301, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__136); + __Pyx_GIVEREF(__pyx_tuple__136); + __pyx_codeobj__137 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__136, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_delta_ET, 301, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__137)) __PYX_ERR(2, 301, __pyx_L1_error) + + /* "src/tpm_astro.pxi":318 + * + * + * def delta_TT(utc): # <<<<<<<<<<<<<< + * """Return Delta TT = TDT - UTC for the given UTC. + * + */ + __pyx_tuple__138 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__138)) __PYX_ERR(2, 318, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__138); + __Pyx_GIVEREF(__pyx_tuple__138); + __pyx_codeobj__139 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__138, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_delta_TT, 318, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__139)) __PYX_ERR(2, 318, __pyx_L1_error) + + /* "src/tpm_astro.pxi":335 + * + * + * def tdt2tdb(tdt): # <<<<<<<<<<<<<< + * """Return TDB for the given TDT. + * + */ + __pyx_tuple__140 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__140)) __PYX_ERR(2, 335, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__140); + __Pyx_GIVEREF(__pyx_tuple__140); + __pyx_codeobj__141 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__140, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tdt2tdb, 335, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__141)) __PYX_ERR(2, 335, __pyx_L1_error) + + /* "src/tpm_astro.pxi":352 + * + * + * def ut12gmst(ut1): # <<<<<<<<<<<<<< + * """Return GMST for the given UT1. + * + */ + __pyx_tuple__142 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__142)) __PYX_ERR(2, 352, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__142); + __Pyx_GIVEREF(__pyx_tuple__142); + __pyx_codeobj__143 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__142, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut12gmst, 352, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__143)) __PYX_ERR(2, 352, __pyx_L1_error) + + /* "src/tpm_astro.pxi":372 + * + * + * def et2tdt(et): # <<<<<<<<<<<<<< + * """Return TDT for the given ET. + * + */ + __pyx_tuple__144 = PyTuple_Pack(1, __pyx_n_s_et); if (unlikely(!__pyx_tuple__144)) __PYX_ERR(2, 372, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__144); + __Pyx_GIVEREF(__pyx_tuple__144); + __pyx_codeobj__145 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__144, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_et2tdt, 372, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__145)) __PYX_ERR(2, 372, __pyx_L1_error) + + /* "src/tpm_astro.pxi":389 + * + * + * def tai2tdt(tai): # <<<<<<<<<<<<<< + * """Return TDT for the given TAI. + * + */ + __pyx_tuple__146 = PyTuple_Pack(1, __pyx_n_s_tai); if (unlikely(!__pyx_tuple__146)) __PYX_ERR(2, 389, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__146); + __Pyx_GIVEREF(__pyx_tuple__146); + __pyx_codeobj__147 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__146, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tai2tdt, 389, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__147)) __PYX_ERR(2, 389, __pyx_L1_error) + + /* "src/tpm_astro.pxi":406 + * + * + * def tdt2et(tdt): # <<<<<<<<<<<<<< + * """Return ET for the given TDT. + * + */ + __pyx_tuple__148 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__148)) __PYX_ERR(2, 406, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__148); + __Pyx_GIVEREF(__pyx_tuple__148); + __pyx_codeobj__149 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__148, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tdt2et, 406, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__149)) __PYX_ERR(2, 406, __pyx_L1_error) + + /* "src/tpm_astro.pxi":423 + * + * + * def ut12et(ut1): # <<<<<<<<<<<<<< + * """Return ET for the given UT1. + * + */ + __pyx_tuple__150 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__150)) __PYX_ERR(2, 423, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__150); + __Pyx_GIVEREF(__pyx_tuple__150); + __pyx_codeobj__151 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__150, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut12et, 423, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__151)) __PYX_ERR(2, 423, __pyx_L1_error) + + /* "src/tpm_astro.pxi":440 + * + * + * def utc2et(utc): # <<<<<<<<<<<<<< + * """Return ET for the given UTC. + * + */ + __pyx_tuple__152 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__152)) __PYX_ERR(2, 440, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__152); + __Pyx_GIVEREF(__pyx_tuple__152); + __pyx_codeobj__153 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__152, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_utc2et, 440, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__153)) __PYX_ERR(2, 440, __pyx_L1_error) + + /* "src/tpm_astro.pxi":457 + * + * + * def utc2tdt(utc): # <<<<<<<<<<<<<< + * """Return TDT for the given UTC. + * + */ + __pyx_tuple__154 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__154)) __PYX_ERR(2, 457, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__154); + __Pyx_GIVEREF(__pyx_tuple__154); + __pyx_codeobj__155 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__154, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_utc2tdt, 457, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__155)) __PYX_ERR(2, 457, __pyx_L1_error) + + /* "src/tpm_astro.pxi":474 + * + * + * def utc2ut1(utc): # <<<<<<<<<<<<<< + * """Return UT1 for the given UTC. + * + */ + __pyx_tuple__156 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__156)) __PYX_ERR(2, 474, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__156); + __Pyx_GIVEREF(__pyx_tuple__156); + __pyx_codeobj__157 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__156, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_utc2ut1, 474, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__157)) __PYX_ERR(2, 474, __pyx_L1_error) + + /* "src/tpm_astro.pxi":491 + * + * + * def et2ut1(et): # <<<<<<<<<<<<<< + * """Return UT1 for the given ET. + * + */ + __pyx_tuple__158 = PyTuple_Pack(1, __pyx_n_s_et); if (unlikely(!__pyx_tuple__158)) __PYX_ERR(2, 491, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__158); + __Pyx_GIVEREF(__pyx_tuple__158); + __pyx_codeobj__159 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__158, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_et2ut1, 491, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__159)) __PYX_ERR(2, 491, __pyx_L1_error) + + /* "src/tpm_astro.pxi":508 + * + * + * def et2utc(et): # <<<<<<<<<<<<<< + * """Return UTC for the given ET. + * + */ + __pyx_tuple__160 = PyTuple_Pack(1, __pyx_n_s_et); if (unlikely(!__pyx_tuple__160)) __PYX_ERR(2, 508, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__160); + __Pyx_GIVEREF(__pyx_tuple__160); + __pyx_codeobj__161 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__160, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_et2utc, 508, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__161)) __PYX_ERR(2, 508, __pyx_L1_error) + + /* "src/tpm_astro.pxi":525 + * + * + * def tai2utc(tai): # <<<<<<<<<<<<<< + * """Return UTC for the given TAI. + * + */ + __pyx_tuple__162 = PyTuple_Pack(1, __pyx_n_s_tai); if (unlikely(!__pyx_tuple__162)) __PYX_ERR(2, 525, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__162); + __Pyx_GIVEREF(__pyx_tuple__162); + __pyx_codeobj__163 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__162, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tai2utc, 525, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__163)) __PYX_ERR(2, 525, __pyx_L1_error) + + /* "src/tpm_astro.pxi":542 + * + * + * def tdt2tai(tdt): # <<<<<<<<<<<<<< + * """Return TAI for the given TDT. + * + */ + __pyx_tuple__164 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__164)) __PYX_ERR(2, 542, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__164); + __Pyx_GIVEREF(__pyx_tuple__164); + __pyx_codeobj__165 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__164, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tdt2tai, 542, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__165)) __PYX_ERR(2, 542, __pyx_L1_error) + + /* "src/tpm_astro.pxi":559 + * + * + * def tdt2utc(tdt): # <<<<<<<<<<<<<< + * """Return UTC for the given TDT. + * + */ + __pyx_tuple__166 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__166)) __PYX_ERR(2, 559, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__166); + __Pyx_GIVEREF(__pyx_tuple__166); + __pyx_codeobj__167 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__166, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tdt2utc, 559, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__167)) __PYX_ERR(2, 559, __pyx_L1_error) + + /* "src/tpm_astro.pxi":576 + * + * + * def ut12utc(ut1): # <<<<<<<<<<<<<< + * """Return UTC for the given UT1. + * + */ + __pyx_tuple__168 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__168)) __PYX_ERR(2, 576, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__168); + __Pyx_GIVEREF(__pyx_tuple__168); + __pyx_codeobj__169 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__168, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut12utc, 576, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__169)) __PYX_ERR(2, 576, __pyx_L1_error) + + /* "src/tpm_astro.pxi":593 + * + * + * def et2tai(et): # <<<<<<<<<<<<<< + * """Return TAI for the given ET. + * + */ + __pyx_tuple__170 = PyTuple_Pack(1, __pyx_n_s_et); if (unlikely(!__pyx_tuple__170)) __PYX_ERR(2, 593, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__170); + __Pyx_GIVEREF(__pyx_tuple__170); + __pyx_codeobj__171 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__170, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_et2tai, 593, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__171)) __PYX_ERR(2, 593, __pyx_L1_error) + + /* "src/tpm_astro.pxi":610 + * + * + * def et2tdb(et): # <<<<<<<<<<<<<< + * """Return TDB for the given ET. + * + */ + __pyx_tuple__172 = PyTuple_Pack(1, __pyx_n_s_et); if (unlikely(!__pyx_tuple__172)) __PYX_ERR(2, 610, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__172); + __Pyx_GIVEREF(__pyx_tuple__172); + __pyx_codeobj__173 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__172, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_et2tdb, 610, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__173)) __PYX_ERR(2, 610, __pyx_L1_error) + + /* "src/tpm_astro.pxi":627 + * + * + * def tai2et(tai): # <<<<<<<<<<<<<< + * """Return ET for the given TAI. + * + */ + __pyx_tuple__174 = PyTuple_Pack(1, __pyx_n_s_tai); if (unlikely(!__pyx_tuple__174)) __PYX_ERR(2, 627, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__174); + __Pyx_GIVEREF(__pyx_tuple__174); + __pyx_codeobj__175 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__174, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tai2et, 627, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__175)) __PYX_ERR(2, 627, __pyx_L1_error) + + /* "src/tpm_astro.pxi":644 + * + * + * def tai2tdb(tai): # <<<<<<<<<<<<<< + * """Return TDB for the given TAI. + * + */ + __pyx_tuple__176 = PyTuple_Pack(1, __pyx_n_s_tai); if (unlikely(!__pyx_tuple__176)) __PYX_ERR(2, 644, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__176); + __Pyx_GIVEREF(__pyx_tuple__176); + __pyx_codeobj__177 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__176, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tai2tdb, 644, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__177)) __PYX_ERR(2, 644, __pyx_L1_error) + + /* "src/tpm_astro.pxi":661 + * + * + * def tai2ut1(tai): # <<<<<<<<<<<<<< + * """Return UT1 for the given TAI. + * + */ + __pyx_tuple__178 = PyTuple_Pack(1, __pyx_n_s_tai); if (unlikely(!__pyx_tuple__178)) __PYX_ERR(2, 661, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__178); + __Pyx_GIVEREF(__pyx_tuple__178); + __pyx_codeobj__179 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__178, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tai2ut1, 661, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__179)) __PYX_ERR(2, 661, __pyx_L1_error) + + /* "src/tpm_astro.pxi":694 + * # return tpm_astro.tdb2utc(tdb) + * + * def tdt2ut1(tdt): # <<<<<<<<<<<<<< + * """Return UT1 for the given TDT. + * + */ + __pyx_tuple__180 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__180)) __PYX_ERR(2, 694, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__180); + __Pyx_GIVEREF(__pyx_tuple__180); + __pyx_codeobj__181 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__180, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_tdt2ut1, 694, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__181)) __PYX_ERR(2, 694, __pyx_L1_error) + + /* "src/tpm_astro.pxi":711 + * + * + * def ut12tai(ut1): # <<<<<<<<<<<<<< + * """Return TAI for the given UT1. + * + */ + __pyx_tuple__182 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__182)) __PYX_ERR(2, 711, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__182); + __Pyx_GIVEREF(__pyx_tuple__182); + __pyx_codeobj__183 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__182, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut12tai, 711, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__183)) __PYX_ERR(2, 711, __pyx_L1_error) + + /* "src/tpm_astro.pxi":728 + * + * + * def ut12tdb(ut1): # <<<<<<<<<<<<<< + * """Return TDB for the given UT1. + * + */ + __pyx_tuple__184 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__184)) __PYX_ERR(2, 728, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__184); + __Pyx_GIVEREF(__pyx_tuple__184); + __pyx_codeobj__185 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__184, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut12tdb, 728, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__185)) __PYX_ERR(2, 728, __pyx_L1_error) + + /* "src/tpm_astro.pxi":745 + * + * + * def ut12tdt(ut1): # <<<<<<<<<<<<<< + * """Return TDT for the given UT1. + * + */ + __pyx_tuple__186 = PyTuple_Pack(1, __pyx_n_s_ut1); if (unlikely(!__pyx_tuple__186)) __PYX_ERR(2, 745, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__186); + __Pyx_GIVEREF(__pyx_tuple__186); + __pyx_codeobj__187 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__186, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut12tdt, 745, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__187)) __PYX_ERR(2, 745, __pyx_L1_error) + + /* "src/tpm_astro.pxi":762 + * + * + * def utc2tdb(utc): # <<<<<<<<<<<<<< + * """Return TDB for the given UTC. + * + */ + __pyx_tuple__188 = PyTuple_Pack(1, __pyx_n_s_utc); if (unlikely(!__pyx_tuple__188)) __PYX_ERR(2, 762, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__188); + __Pyx_GIVEREF(__pyx_tuple__188); + __pyx_codeobj__189 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__188, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_utc2tdb, 762, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__189)) __PYX_ERR(2, 762, __pyx_L1_error) + + /* "src/tpm_astro.pxi":779 + * + * + * def et2ut(et): # <<<<<<<<<<<<<< + * """Return UT for the given ET; same as et2ut1(et).""" + * return tpm_astro.et2ut(et) + */ + __pyx_tuple__190 = PyTuple_Pack(1, __pyx_n_s_et); if (unlikely(!__pyx_tuple__190)) __PYX_ERR(2, 779, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__190); + __Pyx_GIVEREF(__pyx_tuple__190); + __pyx_codeobj__191 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__190, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_et2ut, 779, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__191)) __PYX_ERR(2, 779, __pyx_L1_error) + + /* "src/tpm_astro.pxi":784 + * + * + * def ut2et(ut): # <<<<<<<<<<<<<< + * """Return ET for the given UT; same as ut12et(ut).""" + * return tpm_astro.ut2et(ut) + */ + __pyx_tuple__192 = PyTuple_Pack(1, __pyx_n_s_ut); if (unlikely(!__pyx_tuple__192)) __PYX_ERR(2, 784, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__192); + __Pyx_GIVEREF(__pyx_tuple__192); + __pyx_codeobj__193 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__192, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut2et, 784, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__193)) __PYX_ERR(2, 784, __pyx_L1_error) + + /* "src/tpm_astro.pxi":789 + * + * + * def ut2gmst(ut): # <<<<<<<<<<<<<< + * """Return GMST for the given UT; same as ut12gmst(ut)""" + * return tpm_astro.ut2gmst(ut) + */ + __pyx_tuple__194 = PyTuple_Pack(1, __pyx_n_s_ut); if (unlikely(!__pyx_tuple__194)) __PYX_ERR(2, 789, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__194); + __Pyx_GIVEREF(__pyx_tuple__194); + __pyx_codeobj__195 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__194, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ut2gmst, 789, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__195)) __PYX_ERR(2, 789, __pyx_L1_error) + + /* "src/tpm_astro.pxi":794 + * + * + * def cat2v6(alpha, delta, pma, pmd, px, rv, C=36525.0): # <<<<<<<<<<<<<< + * """Create a V6C vector from a catalog entry. + * + */ + __pyx_tuple__196 = PyTuple_Pack(8, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_pma, __pyx_n_s_pmd, __pyx_n_s_px, __pyx_n_s_rv, __pyx_n_s_C, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__196)) __PYX_ERR(2, 794, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__196); + __Pyx_GIVEREF(__pyx_tuple__196); + __pyx_codeobj__197 = (PyObject*)__Pyx_PyCode_New(7, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__196, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_cat2v6, 794, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__197)) __PYX_ERR(2, 794, __pyx_L1_error) + + /* "src/tpm_astro.pxi":837 + * + * + * def v62cat(V6C v6, C=36525.0): # <<<<<<<<<<<<<< + * """Return catalog quantites given a V6C vector. + * + */ + __pyx_tuple__198 = PyTuple_Pack(8, __pyx_n_s_v6, __pyx_n_s_C, __pyx_n_s_alpha, __pyx_n_s_delta, __pyx_n_s_pma, __pyx_n_s_pmd, __pyx_n_s_px, __pyx_n_s_rv); if (unlikely(!__pyx_tuple__198)) __PYX_ERR(2, 837, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__198); + __Pyx_GIVEREF(__pyx_tuple__198); + __pyx_codeobj__199 = (PyObject*)__Pyx_PyCode_New(2, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__198, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_v62cat, 837, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__199)) __PYX_ERR(2, 837, __pyx_L1_error) + + /* "src/tpm_astro.pxi":879 + * + * + * def proper_motion(V6C v6, end, start): # <<<<<<<<<<<<<< + * """Apply proper motion to the given V6C vector. + * + */ + __pyx_tuple__200 = PyTuple_Pack(5, __pyx_n_s_v6, __pyx_n_s_end, __pyx_n_s_start, __pyx_n_s_v6_2, __pyx_n_s_v61); if (unlikely(!__pyx_tuple__200)) __PYX_ERR(2, 879, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__200); + __Pyx_GIVEREF(__pyx_tuple__200); + __pyx_codeobj__201 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__200, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_proper_motion, 879, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__201)) __PYX_ERR(2, 879, __pyx_L1_error) + + /* "src/tpm_astro.pxi":916 + * + * + * def aberrate(V6C p, V6C e, int flag): # <<<<<<<<<<<<<< + * """Apply aberration of light to a state vector. + * + */ + __pyx_tuple__202 = PyTuple_Pack(5, __pyx_n_s_p, __pyx_n_s_e, __pyx_n_s_flag, __pyx_n_s_v6_2, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__202)) __PYX_ERR(2, 916, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__202); + __Pyx_GIVEREF(__pyx_tuple__202); + __pyx_codeobj__203 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__202, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_aberrate, 916, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__203)) __PYX_ERR(2, 916, __pyx_L1_error) + + /* "src/tpm_astro.pxi":956 + * + * + * def azel2hadec(V6C v6, double latitude): # <<<<<<<<<<<<<< + * """Convert V6C from (AZ, EL) to (HA, DEC). + * + */ + __pyx_tuple__204 = PyTuple_Pack(3, __pyx_n_s_v6, __pyx_n_s_latitude, __pyx_n_s_v); if (unlikely(!__pyx_tuple__204)) __PYX_ERR(2, 956, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__204); + __Pyx_GIVEREF(__pyx_tuple__204); + __pyx_codeobj__205 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__204, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_azel2hadec, 956, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__205)) __PYX_ERR(2, 956, __pyx_L1_error) + + /* "src/tpm_astro.pxi":987 + * + * + * def hadec2azel(V6C v6, double latitude): # <<<<<<<<<<<<<< + * """Convert V6C from (HA, DEC) to (AZ, EL). + * + */ + __pyx_tuple__206 = PyTuple_Pack(3, __pyx_n_s_v6, __pyx_n_s_latitude, __pyx_n_s_v); if (unlikely(!__pyx_tuple__206)) __PYX_ERR(2, 987, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__206); + __Pyx_GIVEREF(__pyx_tuple__206); + __pyx_codeobj__207 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__206, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_hadec2azel, 987, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__207)) __PYX_ERR(2, 987, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1017 + * + * + * def evp(double tdb): # <<<<<<<<<<<<<< + * """J2000 Barycentric and Heliocentric state vectors for Earth. + * + */ + __pyx_tuple__208 = PyTuple_Pack(6, __pyx_n_s_tdb, __pyx_n_s_tdb, __pyx_n_s_vb, __pyx_n_s_vh, __pyx_n_s_v6b, __pyx_n_s_v6h); if (unlikely(!__pyx_tuple__208)) __PYX_ERR(2, 1017, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__208); + __Pyx_GIVEREF(__pyx_tuple__208); + __pyx_codeobj__209 = (PyObject*)__Pyx_PyCode_New(1, 0, 6, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__208, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_evp, 1017, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__209)) __PYX_ERR(2, 1017, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1048 + * + * + * def ecl2equ(V6C v6, double obl): # <<<<<<<<<<<<<< + * """Convert Ecliptic to FK5 Equatorial coordinates. + * + */ + __pyx_tuple__210 = PyTuple_Pack(3, __pyx_n_s_v6, __pyx_n_s_obl, __pyx_n_s_v); if (unlikely(!__pyx_tuple__210)) __PYX_ERR(2, 1048, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__210); + __Pyx_GIVEREF(__pyx_tuple__210); + __pyx_codeobj__211 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__210, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ecl2equ, 1048, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__211)) __PYX_ERR(2, 1048, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1075 + * + * + * def equ2ecl(V6C v6, double obl): # <<<<<<<<<<<<<< + * """Convert FK5 equatorial coordinates to Ecliptic coordinates. + * + */ + __pyx_tuple__212 = PyTuple_Pack(3, __pyx_n_s_v6, __pyx_n_s_obl, __pyx_n_s_v); if (unlikely(!__pyx_tuple__212)) __PYX_ERR(2, 1075, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__212); + __Pyx_GIVEREF(__pyx_tuple__212); + __pyx_codeobj__213 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__212, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_equ2ecl, 1075, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__213)) __PYX_ERR(2, 1075, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1103 + * + * + * def ellab(double tdt, V6C star, int flag): # <<<<<<<<<<<<<< + * """Add or remove elliptic aberration. + * + */ + __pyx_tuple__214 = PyTuple_Pack(4, __pyx_n_s_tdt, __pyx_n_s_star, __pyx_n_s_flag, __pyx_n_s_v); if (unlikely(!__pyx_tuple__214)) __PYX_ERR(2, 1103, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__214); + __Pyx_GIVEREF(__pyx_tuple__214); + __pyx_codeobj__215 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__214, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ellab, 1103, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__215)) __PYX_ERR(2, 1103, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1133 + * + * + * def equ2gal(V6C v6): # <<<<<<<<<<<<<< + * """Convert FK4 Equatorial to Galactic. + * + */ + __pyx_tuple__216 = PyTuple_Pack(2, __pyx_n_s_v6, __pyx_n_s_v); if (unlikely(!__pyx_tuple__216)) __PYX_ERR(2, 1133, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__216); + __Pyx_GIVEREF(__pyx_tuple__216); + __pyx_codeobj__217 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__216, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_equ2gal, 1133, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__217)) __PYX_ERR(2, 1133, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1159 + * + * + * def gal2equ(V6C v6): # <<<<<<<<<<<<<< + * """Convert state vector from Galactic to FK4 Equatorial. + * + */ + __pyx_tuple__218 = PyTuple_Pack(2, __pyx_n_s_v6, __pyx_n_s_v); if (unlikely(!__pyx_tuple__218)) __PYX_ERR(2, 1159, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__218); + __Pyx_GIVEREF(__pyx_tuple__218); + __pyx_codeobj__219 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__218, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_gal2equ, 1159, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__219)) __PYX_ERR(2, 1159, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1186 + * + * + * def eterms(double ep): # <<<<<<<<<<<<<< + * """Return a V6C vector containing the e-terms of aberration. + * + */ + __pyx_tuple__220 = PyTuple_Pack(3, __pyx_n_s_ep, __pyx_n_s_ep, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__220)) __PYX_ERR(2, 1186, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__220); + __Pyx_GIVEREF(__pyx_tuple__220); + __pyx_codeobj__221 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__220, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_eterms, 1186, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__221)) __PYX_ERR(2, 1186, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1210 + * + * + * def fk425(V6C v6): # <<<<<<<<<<<<<< + * """Precess a V6C vector from FK4 system to FK5 system. + * + */ + __pyx_tuple__222 = PyTuple_Pack(2, __pyx_n_s_v6, __pyx_n_s_v); if (unlikely(!__pyx_tuple__222)) __PYX_ERR(2, 1210, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__222); + __Pyx_GIVEREF(__pyx_tuple__222); + __pyx_codeobj__223 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__222, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_fk425, 1210, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__223)) __PYX_ERR(2, 1210, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1234 + * + * + * def fk524(V6C v6): # <<<<<<<<<<<<<< + * """Precess state vector from FK5 to FK4. + * + */ + __pyx_tuple__224 = PyTuple_Pack(2, __pyx_n_s_v6, __pyx_n_s_v); if (unlikely(!__pyx_tuple__224)) __PYX_ERR(2, 1234, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__224); + __Pyx_GIVEREF(__pyx_tuple__224); + __pyx_codeobj__225 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__224, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_fk524, 1234, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__225)) __PYX_ERR(2, 1234, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1258 + * + * + * def geod2geoc(lon, lat, alt): # <<<<<<<<<<<<<< + * """Convert geodetic position to geocentric position. + * + */ + __pyx_tuple__226 = PyTuple_Pack(4, __pyx_n_s_lon, __pyx_n_s_lat, __pyx_n_s_alt, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__226)) __PYX_ERR(2, 1258, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__226); + __Pyx_GIVEREF(__pyx_tuple__226); + __pyx_codeobj__227 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__226, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_geod2geoc, 1258, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__227)) __PYX_ERR(2, 1258, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1288 + * + * + * def ldeflect(V6C star, V6C earth, int flag): # <<<<<<<<<<<<<< + * """Apply General Relativity deflection of light. + * + */ + __pyx_tuple__228 = PyTuple_Pack(4, __pyx_n_s_star, __pyx_n_s_earth, __pyx_n_s_flag, __pyx_n_s_v6); if (unlikely(!__pyx_tuple__228)) __PYX_ERR(2, 1288, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__228); + __Pyx_GIVEREF(__pyx_tuple__228); + __pyx_codeobj__229 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__228, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_ldeflect, 1288, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__229)) __PYX_ERR(2, 1288, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1316 + * + * + * def precess(double start, double end, V6C v6, int pflag): # <<<<<<<<<<<<<< + * """Precess a state vector within an inertial frame. + * + */ + __pyx_tuple__230 = PyTuple_Pack(5, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_v6, __pyx_n_s_pflag, __pyx_n_s_v); if (unlikely(!__pyx_tuple__230)) __PYX_ERR(2, 1316, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__230); + __Pyx_GIVEREF(__pyx_tuple__230); + __pyx_codeobj__231 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__230, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_precess, 1316, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__231)) __PYX_ERR(2, 1316, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1355 + * + * + * def precess_m(start, end, pflag, sflag): # <<<<<<<<<<<<<< + * """Precession matrix for time between end and start. + * + */ + __pyx_tuple__232 = PyTuple_Pack(5, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag, __pyx_n_s_sflag, __pyx_n_s_m6); if (unlikely(!__pyx_tuple__232)) __PYX_ERR(2, 1355, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__232); + __Pyx_GIVEREF(__pyx_tuple__232); + __pyx_codeobj__233 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__232, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_precess_m, 1355, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__233)) __PYX_ERR(2, 1355, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1392 + * + * + * def eccentricity(tdt): # <<<<<<<<<<<<<< + * """Eccentricity of Earth's orbit. + * + */ + __pyx_tuple__234 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__234)) __PYX_ERR(2, 1392, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__234); + __Pyx_GIVEREF(__pyx_tuple__234); + __pyx_codeobj__235 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__234, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_eccentricity, 1392, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__235)) __PYX_ERR(2, 1392, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1414 + * + * + * def eccentricity_dot(tdt): # <<<<<<<<<<<<<< + * """Rate of change in the eccentricity of Earth's orbit. + * + */ + __pyx_tuple__236 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__236)) __PYX_ERR(2, 1414, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__236); + __Pyx_GIVEREF(__pyx_tuple__236); + __pyx_codeobj__237 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__236, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_eccentricity_dot, 1414, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__237)) __PYX_ERR(2, 1414, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1437 + * + * + * def obliquity(tdt): # <<<<<<<<<<<<<< + * """Mean obliquity of Ecliptic(epoch J2000). + * + */ + __pyx_tuple__238 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__238)) __PYX_ERR(2, 1437, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__238); + __Pyx_GIVEREF(__pyx_tuple__238); + __pyx_codeobj__239 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__238, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_obliquity, 1437, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__239)) __PYX_ERR(2, 1437, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1459 + * + * + * def obliquity_dot(tdt): # <<<<<<<<<<<<<< + * """Rate of change of mean obliquity of Ecliptic(epoch J2000). + * + */ + __pyx_tuple__240 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__240)) __PYX_ERR(2, 1459, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__240); + __Pyx_GIVEREF(__pyx_tuple__240); + __pyx_codeobj__241 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__240, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_obliquity_dot, 1459, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__241)) __PYX_ERR(2, 1459, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1482 + * + * + * def refco(lat=0.557744205098, alt=2093.093, # <<<<<<<<<<<<<< + * T=273.15, P=1013.25, rh=0.0, + * wavelength=0.550, eps=1e-8): + */ + __pyx_tuple__242 = PyTuple_Pack(9, __pyx_n_s_lat, __pyx_n_s_alt, __pyx_n_s_T, __pyx_n_s_P, __pyx_n_s_rh, __pyx_n_s_wavelength, __pyx_n_s_eps, __pyx_n_s_refa, __pyx_n_s_refb); if (unlikely(!__pyx_tuple__242)) __PYX_ERR(2, 1482, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__242); + __Pyx_GIVEREF(__pyx_tuple__242); + __pyx_codeobj__243 = (PyObject*)__Pyx_PyCode_New(7, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__242, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_refco, 1482, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__243)) __PYX_ERR(2, 1482, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1527 + * + * + * def refract(zx, refa, refb, flag): # <<<<<<<<<<<<<< + * """Returns change in zenith distance due to refraction. + * + */ + __pyx_tuple__244 = PyTuple_Pack(4, __pyx_n_s_zx, __pyx_n_s_refa, __pyx_n_s_refb, __pyx_n_s_flag); if (unlikely(!__pyx_tuple__244)) __PYX_ERR(2, 1527, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__244); + __Pyx_GIVEREF(__pyx_tuple__244); + __pyx_codeobj__245 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__244, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_refract, 1527, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__245)) __PYX_ERR(2, 1527, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1556 + * + * + * def solar_perigee(tdt): # <<<<<<<<<<<<<< + * """Mean longitude of the perigee of solar orbit. + * + */ + __pyx_tuple__246 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__246)) __PYX_ERR(2, 1556, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__246); + __Pyx_GIVEREF(__pyx_tuple__246); + __pyx_codeobj__247 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__246, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_solar_perigee, 1556, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__247)) __PYX_ERR(2, 1556, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1573 + * + * + * def solar_perigee_dot(tdt): # <<<<<<<<<<<<<< + * """Rate of change of solar perigee. + * + */ + __pyx_tuple__248 = PyTuple_Pack(1, __pyx_n_s_tdt); if (unlikely(!__pyx_tuple__248)) __PYX_ERR(2, 1573, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__248); + __Pyx_GIVEREF(__pyx_tuple__248); + __pyx_codeobj__249 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__248, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_solar_perigee_dot, 1573, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__249)) __PYX_ERR(2, 1573, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1590 + * + * + * def theta(start, end, pflag): # <<<<<<<<<<<<<< + * """FK4 and FK5 precession angles. + * + */ + __pyx_tuple__250 = PyTuple_Pack(3, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag); if (unlikely(!__pyx_tuple__250)) __PYX_ERR(2, 1590, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__250); + __Pyx_GIVEREF(__pyx_tuple__250); + __pyx_codeobj__251 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__250, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_theta, 1590, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__251)) __PYX_ERR(2, 1590, __pyx_L1_error) -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_100, __pyx_k_100, sizeof(__pyx_k_100), 0, 0, 1, 0}, - {&__pyx_kp_s_101, __pyx_k_101, sizeof(__pyx_k_101), 0, 0, 1, 0}, - {&__pyx_kp_s_102, __pyx_k_102, sizeof(__pyx_k_102), 0, 0, 1, 0}, - {&__pyx_kp_s_103, __pyx_k_103, sizeof(__pyx_k_103), 0, 0, 1, 0}, - {&__pyx_kp_s_104, __pyx_k_104, sizeof(__pyx_k_104), 0, 0, 1, 0}, - {&__pyx_kp_s_105, __pyx_k_105, sizeof(__pyx_k_105), 0, 0, 1, 0}, - {&__pyx_kp_s_106, __pyx_k_106, sizeof(__pyx_k_106), 0, 0, 1, 0}, - {&__pyx_kp_s_107, __pyx_k_107, sizeof(__pyx_k_107), 0, 0, 1, 0}, - {&__pyx_kp_s_108, __pyx_k_108, sizeof(__pyx_k_108), 0, 0, 1, 0}, - {&__pyx_kp_s_109, __pyx_k_109, sizeof(__pyx_k_109), 0, 0, 1, 0}, - {&__pyx_kp_s_110, __pyx_k_110, sizeof(__pyx_k_110), 0, 0, 1, 0}, - {&__pyx_kp_s_111, __pyx_k_111, sizeof(__pyx_k_111), 0, 0, 1, 0}, - {&__pyx_kp_s_112, __pyx_k_112, sizeof(__pyx_k_112), 0, 0, 1, 0}, - {&__pyx_kp_s_113, __pyx_k_113, sizeof(__pyx_k_113), 0, 0, 1, 0}, - {&__pyx_kp_s_114, __pyx_k_114, sizeof(__pyx_k_114), 0, 0, 1, 0}, - {&__pyx_kp_s_115, __pyx_k_115, sizeof(__pyx_k_115), 0, 0, 1, 0}, - {&__pyx_kp_s_116, __pyx_k_116, sizeof(__pyx_k_116), 0, 0, 1, 0}, - {&__pyx_kp_s_117, __pyx_k_117, sizeof(__pyx_k_117), 0, 0, 1, 0}, - {&__pyx_kp_s_118, __pyx_k_118, sizeof(__pyx_k_118), 0, 0, 1, 0}, - {&__pyx_kp_s_119, __pyx_k_119, sizeof(__pyx_k_119), 0, 0, 1, 0}, - {&__pyx_kp_s_120, __pyx_k_120, sizeof(__pyx_k_120), 0, 0, 1, 0}, - {&__pyx_kp_s_121, __pyx_k_121, sizeof(__pyx_k_121), 0, 0, 1, 0}, - {&__pyx_kp_s_122, __pyx_k_122, sizeof(__pyx_k_122), 0, 0, 1, 0}, - {&__pyx_kp_s_123, __pyx_k_123, sizeof(__pyx_k_123), 0, 0, 1, 0}, - {&__pyx_kp_s_124, __pyx_k_124, sizeof(__pyx_k_124), 0, 0, 1, 0}, - {&__pyx_kp_s_125, __pyx_k_125, sizeof(__pyx_k_125), 0, 0, 1, 0}, - {&__pyx_kp_s_126, __pyx_k_126, sizeof(__pyx_k_126), 0, 0, 1, 0}, - {&__pyx_kp_s_127, __pyx_k_127, sizeof(__pyx_k_127), 0, 0, 1, 0}, - {&__pyx_kp_s_128, __pyx_k_128, sizeof(__pyx_k_128), 0, 0, 1, 0}, - {&__pyx_kp_s_129, __pyx_k_129, sizeof(__pyx_k_129), 0, 0, 1, 0}, - {&__pyx_kp_s_130, __pyx_k_130, sizeof(__pyx_k_130), 0, 0, 1, 0}, - {&__pyx_kp_s_131, __pyx_k_131, sizeof(__pyx_k_131), 0, 0, 1, 0}, - {&__pyx_kp_s_132, __pyx_k_132, sizeof(__pyx_k_132), 0, 0, 1, 0}, - {&__pyx_kp_s_133, __pyx_k_133, sizeof(__pyx_k_133), 0, 0, 1, 0}, - {&__pyx_kp_s_134, __pyx_k_134, sizeof(__pyx_k_134), 0, 0, 1, 0}, - {&__pyx_kp_s_135, __pyx_k_135, sizeof(__pyx_k_135), 0, 0, 1, 0}, - {&__pyx_kp_s_136, __pyx_k_136, sizeof(__pyx_k_136), 0, 0, 1, 0}, - {&__pyx_kp_s_137, __pyx_k_137, sizeof(__pyx_k_137), 0, 0, 1, 0}, - {&__pyx_kp_s_138, __pyx_k_138, sizeof(__pyx_k_138), 0, 0, 1, 0}, - {&__pyx_kp_s_139, __pyx_k_139, sizeof(__pyx_k_139), 0, 0, 1, 0}, - {&__pyx_kp_s_140, __pyx_k_140, sizeof(__pyx_k_140), 0, 0, 1, 0}, - {&__pyx_kp_s_141, __pyx_k_141, sizeof(__pyx_k_141), 0, 0, 1, 0}, - {&__pyx_kp_s_142, __pyx_k_142, sizeof(__pyx_k_142), 0, 0, 1, 0}, - {&__pyx_kp_s_143, __pyx_k_143, sizeof(__pyx_k_143), 0, 0, 1, 0}, - {&__pyx_kp_s_144, __pyx_k_144, sizeof(__pyx_k_144), 0, 0, 1, 0}, - {&__pyx_kp_s_145, __pyx_k_145, sizeof(__pyx_k_145), 0, 0, 1, 0}, - {&__pyx_kp_s_146, __pyx_k_146, sizeof(__pyx_k_146), 0, 0, 1, 0}, - {&__pyx_kp_s_147, __pyx_k_147, sizeof(__pyx_k_147), 0, 0, 1, 0}, - {&__pyx_kp_s_148, __pyx_k_148, sizeof(__pyx_k_148), 0, 0, 1, 0}, - {&__pyx_kp_s_149, __pyx_k_149, sizeof(__pyx_k_149), 0, 0, 1, 0}, - {&__pyx_kp_s_150, __pyx_k_150, sizeof(__pyx_k_150), 0, 0, 1, 0}, - {&__pyx_kp_s_151, __pyx_k_151, sizeof(__pyx_k_151), 0, 0, 1, 0}, - {&__pyx_kp_s_152, __pyx_k_152, sizeof(__pyx_k_152), 0, 0, 1, 0}, - {&__pyx_kp_s_153, __pyx_k_153, sizeof(__pyx_k_153), 0, 0, 1, 0}, - {&__pyx_kp_s_154, __pyx_k_154, sizeof(__pyx_k_154), 0, 0, 1, 0}, - {&__pyx_kp_s_155, __pyx_k_155, sizeof(__pyx_k_155), 0, 0, 1, 0}, - {&__pyx_kp_s_156, __pyx_k_156, sizeof(__pyx_k_156), 0, 0, 1, 0}, - {&__pyx_kp_s_157, __pyx_k_157, sizeof(__pyx_k_157), 0, 0, 1, 0}, - {&__pyx_kp_s_158, __pyx_k_158, sizeof(__pyx_k_158), 0, 0, 1, 0}, - {&__pyx_kp_s_159, __pyx_k_159, sizeof(__pyx_k_159), 0, 0, 1, 0}, - {&__pyx_kp_u_160, __pyx_k_160, sizeof(__pyx_k_160), 0, 1, 0, 0}, - {&__pyx_kp_u_161, __pyx_k_161, sizeof(__pyx_k_161), 0, 1, 0, 0}, - {&__pyx_kp_u_162, __pyx_k_162, sizeof(__pyx_k_162), 0, 1, 0, 0}, - {&__pyx_kp_u_163, __pyx_k_163, sizeof(__pyx_k_163), 0, 1, 0, 0}, - {&__pyx_kp_u_164, __pyx_k_164, sizeof(__pyx_k_164), 0, 1, 0, 0}, - {&__pyx_kp_u_165, __pyx_k_165, sizeof(__pyx_k_165), 0, 1, 0, 0}, - {&__pyx_kp_u_166, __pyx_k_166, sizeof(__pyx_k_166), 0, 1, 0, 0}, - {&__pyx_kp_u_167, __pyx_k_167, sizeof(__pyx_k_167), 0, 1, 0, 0}, - {&__pyx_kp_u_168, __pyx_k_168, sizeof(__pyx_k_168), 0, 1, 0, 0}, - {&__pyx_kp_u_169, __pyx_k_169, sizeof(__pyx_k_169), 0, 1, 0, 0}, - {&__pyx_kp_s_17, __pyx_k_17, sizeof(__pyx_k_17), 0, 0, 1, 0}, - {&__pyx_kp_u_170, __pyx_k_170, sizeof(__pyx_k_170), 0, 1, 0, 0}, - {&__pyx_kp_u_171, __pyx_k_171, sizeof(__pyx_k_171), 0, 1, 0, 0}, - {&__pyx_kp_u_172, __pyx_k_172, sizeof(__pyx_k_172), 0, 1, 0, 0}, - {&__pyx_kp_u_173, __pyx_k_173, sizeof(__pyx_k_173), 0, 1, 0, 0}, - {&__pyx_kp_u_174, __pyx_k_174, sizeof(__pyx_k_174), 0, 1, 0, 0}, - {&__pyx_kp_u_175, __pyx_k_175, sizeof(__pyx_k_175), 0, 1, 0, 0}, - {&__pyx_kp_u_176, __pyx_k_176, sizeof(__pyx_k_176), 0, 1, 0, 0}, - {&__pyx_kp_u_177, __pyx_k_177, sizeof(__pyx_k_177), 0, 1, 0, 0}, - {&__pyx_kp_u_178, __pyx_k_178, sizeof(__pyx_k_178), 0, 1, 0, 0}, - {&__pyx_kp_u_179, __pyx_k_179, sizeof(__pyx_k_179), 0, 1, 0, 0}, - {&__pyx_kp_s_18, __pyx_k_18, sizeof(__pyx_k_18), 0, 0, 1, 0}, - {&__pyx_kp_u_180, __pyx_k_180, sizeof(__pyx_k_180), 0, 1, 0, 0}, - {&__pyx_kp_u_181, __pyx_k_181, sizeof(__pyx_k_181), 0, 1, 0, 0}, - {&__pyx_kp_u_182, __pyx_k_182, sizeof(__pyx_k_182), 0, 1, 0, 0}, - {&__pyx_kp_u_183, __pyx_k_183, sizeof(__pyx_k_183), 0, 1, 0, 0}, - {&__pyx_kp_u_184, __pyx_k_184, sizeof(__pyx_k_184), 0, 1, 0, 0}, - {&__pyx_kp_u_185, __pyx_k_185, sizeof(__pyx_k_185), 0, 1, 0, 0}, - {&__pyx_kp_u_186, __pyx_k_186, sizeof(__pyx_k_186), 0, 1, 0, 0}, - {&__pyx_kp_u_187, __pyx_k_187, sizeof(__pyx_k_187), 0, 1, 0, 0}, - {&__pyx_kp_u_188, __pyx_k_188, sizeof(__pyx_k_188), 0, 1, 0, 0}, - {&__pyx_kp_u_189, __pyx_k_189, sizeof(__pyx_k_189), 0, 1, 0, 0}, - {&__pyx_kp_u_190, __pyx_k_190, sizeof(__pyx_k_190), 0, 1, 0, 0}, - {&__pyx_kp_u_191, __pyx_k_191, sizeof(__pyx_k_191), 0, 1, 0, 0}, - {&__pyx_kp_u_192, __pyx_k_192, sizeof(__pyx_k_192), 0, 1, 0, 0}, - {&__pyx_kp_u_193, __pyx_k_193, sizeof(__pyx_k_193), 0, 1, 0, 0}, - {&__pyx_kp_u_194, __pyx_k_194, sizeof(__pyx_k_194), 0, 1, 0, 0}, - {&__pyx_kp_u_195, __pyx_k_195, sizeof(__pyx_k_195), 0, 1, 0, 0}, - {&__pyx_kp_u_196, __pyx_k_196, sizeof(__pyx_k_196), 0, 1, 0, 0}, - {&__pyx_kp_u_197, __pyx_k_197, sizeof(__pyx_k_197), 0, 1, 0, 0}, - {&__pyx_kp_u_198, __pyx_k_198, sizeof(__pyx_k_198), 0, 1, 0, 0}, - {&__pyx_kp_u_199, __pyx_k_199, sizeof(__pyx_k_199), 0, 1, 0, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_u_200, __pyx_k_200, sizeof(__pyx_k_200), 0, 1, 0, 0}, - {&__pyx_kp_u_201, __pyx_k_201, sizeof(__pyx_k_201), 0, 1, 0, 0}, - {&__pyx_kp_u_202, __pyx_k_202, sizeof(__pyx_k_202), 0, 1, 0, 0}, - {&__pyx_kp_u_203, __pyx_k_203, sizeof(__pyx_k_203), 0, 1, 0, 0}, - {&__pyx_kp_u_204, __pyx_k_204, sizeof(__pyx_k_204), 0, 1, 0, 0}, - {&__pyx_kp_u_205, __pyx_k_205, sizeof(__pyx_k_205), 0, 1, 0, 0}, - {&__pyx_kp_u_206, __pyx_k_206, sizeof(__pyx_k_206), 0, 1, 0, 0}, - {&__pyx_kp_u_207, __pyx_k_207, sizeof(__pyx_k_207), 0, 1, 0, 0}, - {&__pyx_kp_u_208, __pyx_k_208, sizeof(__pyx_k_208), 0, 1, 0, 0}, - {&__pyx_kp_u_209, __pyx_k_209, sizeof(__pyx_k_209), 0, 1, 0, 0}, - {&__pyx_kp_u_210, __pyx_k_210, sizeof(__pyx_k_210), 0, 1, 0, 0}, - {&__pyx_kp_u_211, __pyx_k_211, sizeof(__pyx_k_211), 0, 1, 0, 0}, - {&__pyx_kp_u_212, __pyx_k_212, sizeof(__pyx_k_212), 0, 1, 0, 0}, - {&__pyx_kp_u_213, __pyx_k_213, sizeof(__pyx_k_213), 0, 1, 0, 0}, - {&__pyx_kp_u_214, __pyx_k_214, sizeof(__pyx_k_214), 0, 1, 0, 0}, - {&__pyx_kp_u_215, __pyx_k_215, sizeof(__pyx_k_215), 0, 1, 0, 0}, - {&__pyx_kp_u_216, __pyx_k_216, sizeof(__pyx_k_216), 0, 1, 0, 0}, - {&__pyx_kp_u_217, __pyx_k_217, sizeof(__pyx_k_217), 0, 1, 0, 0}, - {&__pyx_kp_u_218, __pyx_k_218, sizeof(__pyx_k_218), 0, 1, 0, 0}, - {&__pyx_kp_u_219, __pyx_k_219, sizeof(__pyx_k_219), 0, 1, 0, 0}, - {&__pyx_kp_s_22, __pyx_k_22, sizeof(__pyx_k_22), 0, 0, 1, 0}, - {&__pyx_kp_u_220, __pyx_k_220, sizeof(__pyx_k_220), 0, 1, 0, 0}, - {&__pyx_kp_u_221, __pyx_k_221, sizeof(__pyx_k_221), 0, 1, 0, 0}, - {&__pyx_kp_u_222, __pyx_k_222, sizeof(__pyx_k_222), 0, 1, 0, 0}, - {&__pyx_kp_u_223, __pyx_k_223, sizeof(__pyx_k_223), 0, 1, 0, 0}, - {&__pyx_kp_u_224, __pyx_k_224, sizeof(__pyx_k_224), 0, 1, 0, 0}, - {&__pyx_kp_u_225, __pyx_k_225, sizeof(__pyx_k_225), 0, 1, 0, 0}, - {&__pyx_kp_u_226, __pyx_k_226, sizeof(__pyx_k_226), 0, 1, 0, 0}, - {&__pyx_kp_u_227, __pyx_k_227, sizeof(__pyx_k_227), 0, 1, 0, 0}, - {&__pyx_kp_u_228, __pyx_k_228, sizeof(__pyx_k_228), 0, 1, 0, 0}, - {&__pyx_kp_u_229, __pyx_k_229, sizeof(__pyx_k_229), 0, 1, 0, 0}, - {&__pyx_kp_s_23, __pyx_k_23, sizeof(__pyx_k_23), 0, 0, 1, 0}, - {&__pyx_kp_u_230, __pyx_k_230, sizeof(__pyx_k_230), 0, 1, 0, 0}, - {&__pyx_kp_u_231, __pyx_k_231, sizeof(__pyx_k_231), 0, 1, 0, 0}, - {&__pyx_kp_u_232, __pyx_k_232, sizeof(__pyx_k_232), 0, 1, 0, 0}, - {&__pyx_kp_u_233, __pyx_k_233, sizeof(__pyx_k_233), 0, 1, 0, 0}, - {&__pyx_kp_u_234, __pyx_k_234, sizeof(__pyx_k_234), 0, 1, 0, 0}, - {&__pyx_kp_u_235, __pyx_k_235, sizeof(__pyx_k_235), 0, 1, 0, 0}, - {&__pyx_kp_u_236, __pyx_k_236, sizeof(__pyx_k_236), 0, 1, 0, 0}, - {&__pyx_kp_u_237, __pyx_k_237, sizeof(__pyx_k_237), 0, 1, 0, 0}, - {&__pyx_kp_u_238, __pyx_k_238, sizeof(__pyx_k_238), 0, 1, 0, 0}, - {&__pyx_kp_u_239, __pyx_k_239, sizeof(__pyx_k_239), 0, 1, 0, 0}, - {&__pyx_kp_u_240, __pyx_k_240, sizeof(__pyx_k_240), 0, 1, 0, 0}, - {&__pyx_kp_u_241, __pyx_k_241, sizeof(__pyx_k_241), 0, 1, 0, 0}, - {&__pyx_kp_u_242, __pyx_k_242, sizeof(__pyx_k_242), 0, 1, 0, 0}, - {&__pyx_kp_u_243, __pyx_k_243, sizeof(__pyx_k_243), 0, 1, 0, 0}, - {&__pyx_kp_u_244, __pyx_k_244, sizeof(__pyx_k_244), 0, 1, 0, 0}, - {&__pyx_kp_u_245, __pyx_k_245, sizeof(__pyx_k_245), 0, 1, 0, 0}, - {&__pyx_kp_u_246, __pyx_k_246, sizeof(__pyx_k_246), 0, 1, 0, 0}, - {&__pyx_kp_u_247, __pyx_k_247, sizeof(__pyx_k_247), 0, 1, 0, 0}, - {&__pyx_kp_u_248, __pyx_k_248, sizeof(__pyx_k_248), 0, 1, 0, 0}, - {&__pyx_kp_u_249, __pyx_k_249, sizeof(__pyx_k_249), 0, 1, 0, 0}, - {&__pyx_kp_u_250, __pyx_k_250, sizeof(__pyx_k_250), 0, 1, 0, 0}, - {&__pyx_kp_u_251, __pyx_k_251, sizeof(__pyx_k_251), 0, 1, 0, 0}, - {&__pyx_kp_u_252, __pyx_k_252, sizeof(__pyx_k_252), 0, 1, 0, 0}, - {&__pyx_kp_u_253, __pyx_k_253, sizeof(__pyx_k_253), 0, 1, 0, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_31, __pyx_k_31, sizeof(__pyx_k_31), 0, 0, 1, 0}, - {&__pyx_kp_s_38, __pyx_k_38, sizeof(__pyx_k_38), 0, 0, 1, 0}, - {&__pyx_kp_s_39, __pyx_k_39, sizeof(__pyx_k_39), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_kp_s_40, __pyx_k_40, sizeof(__pyx_k_40), 0, 0, 1, 0}, - {&__pyx_kp_s_41, __pyx_k_41, sizeof(__pyx_k_41), 0, 0, 1, 0}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_67, __pyx_k_67, sizeof(__pyx_k_67), 0, 0, 1, 0}, - {&__pyx_kp_s_68, __pyx_k_68, sizeof(__pyx_k_68), 0, 0, 1, 0}, - {&__pyx_kp_s_69, __pyx_k_69, sizeof(__pyx_k_69), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_kp_s_70, __pyx_k_70, sizeof(__pyx_k_70), 0, 0, 1, 0}, - {&__pyx_kp_s_71, __pyx_k_71, sizeof(__pyx_k_71), 0, 0, 1, 0}, - {&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0}, - {&__pyx_kp_s_84, __pyx_k_84, sizeof(__pyx_k_84), 0, 0, 1, 0}, - {&__pyx_kp_s_85, __pyx_k_85, sizeof(__pyx_k_85), 0, 0, 1, 0}, - {&__pyx_kp_s_86, __pyx_k_86, sizeof(__pyx_k_86), 0, 0, 1, 0}, - {&__pyx_kp_s_88, __pyx_k_88, sizeof(__pyx_k_88), 0, 0, 1, 0}, - {&__pyx_kp_s_89, __pyx_k_89, sizeof(__pyx_k_89), 0, 0, 1, 0}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_kp_s_90, __pyx_k_90, sizeof(__pyx_k_90), 0, 0, 1, 0}, - {&__pyx_kp_s_92, __pyx_k_92, sizeof(__pyx_k_92), 0, 0, 1, 0}, - {&__pyx_kp_s_93, __pyx_k_93, sizeof(__pyx_k_93), 0, 0, 1, 0}, - {&__pyx_kp_s_94, __pyx_k_94, sizeof(__pyx_k_94), 0, 0, 1, 0}, - {&__pyx_kp_s_95, __pyx_k_95, sizeof(__pyx_k_95), 0, 0, 1, 0}, - {&__pyx_kp_s_96, __pyx_k_96, sizeof(__pyx_k_96), 0, 0, 1, 0}, - {&__pyx_kp_s_97, __pyx_k_97, sizeof(__pyx_k_97), 0, 0, 1, 0}, - {&__pyx_n_s_99, __pyx_k_99, sizeof(__pyx_k_99), 0, 0, 1, 1}, - {&__pyx_n_s__B1950, __pyx_k__B1950, sizeof(__pyx_k__B1950), 0, 0, 1, 1}, - {&__pyx_n_s__C, __pyx_k__C, sizeof(__pyx_k__C), 0, 0, 1, 1}, - {&__pyx_n_s__CARTESIAN, __pyx_k__CARTESIAN, sizeof(__pyx_k__CARTESIAN), 0, 0, 1, 1}, - {&__pyx_n_s__CB, __pyx_k__CB, sizeof(__pyx_k__CB), 0, 0, 1, 1}, - {&__pyx_n_s__CJ, __pyx_k__CJ, sizeof(__pyx_k__CJ), 0, 0, 1, 1}, - {&__pyx_n_s__FRIDAY, __pyx_k__FRIDAY, sizeof(__pyx_k__FRIDAY), 0, 0, 1, 1}, - {&__pyx_n_s__GAL_DEC, __pyx_k__GAL_DEC, sizeof(__pyx_k__GAL_DEC), 0, 0, 1, 1}, - {&__pyx_n_s__GAL_LON, __pyx_k__GAL_LON, sizeof(__pyx_k__GAL_LON), 0, 0, 1, 1}, - {&__pyx_n_s__GAL_RA, __pyx_k__GAL_RA, sizeof(__pyx_k__GAL_RA), 0, 0, 1, 1}, - {&__pyx_n_s__H, __pyx_k__H, sizeof(__pyx_k__H), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_AU, __pyx_k__IAU_AU, sizeof(__pyx_k__IAU_AU), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_C, __pyx_k__IAU_C, sizeof(__pyx_k__IAU_C), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_DM, __pyx_k__IAU_DM, sizeof(__pyx_k__IAU_DM), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_F, __pyx_k__IAU_F, sizeof(__pyx_k__IAU_F), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_K, __pyx_k__IAU_K, sizeof(__pyx_k__IAU_K), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_KAPPA, __pyx_k__IAU_KAPPA, sizeof(__pyx_k__IAU_KAPPA), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_RE, __pyx_k__IAU_RE, sizeof(__pyx_k__IAU_RE), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_RM, __pyx_k__IAU_RM, sizeof(__pyx_k__IAU_RM), 0, 0, 1, 1}, - {&__pyx_n_s__IAU_W, __pyx_k__IAU_W, sizeof(__pyx_k__IAU_W), 0, 0, 1, 1}, - {&__pyx_n_s__IndexError, __pyx_k__IndexError, sizeof(__pyx_k__IndexError), 0, 0, 1, 1}, - {&__pyx_n_s__J1984, __pyx_k__J1984, sizeof(__pyx_k__J1984), 0, 0, 1, 1}, - {&__pyx_n_s__J2000, __pyx_k__J2000, sizeof(__pyx_k__J2000), 0, 0, 1, 1}, - {&__pyx_n_s__MJD_0, __pyx_k__MJD_0, sizeof(__pyx_k__MJD_0), 0, 0, 1, 1}, - {&__pyx_n_s__MONDAY, __pyx_k__MONDAY, sizeof(__pyx_k__MONDAY), 0, 0, 1, 1}, - {&__pyx_n_s__M_PI, __pyx_k__M_PI, sizeof(__pyx_k__M_PI), 0, 0, 1, 1}, - {&__pyx_n_s__N_TPM_STATES, __pyx_k__N_TPM_STATES, sizeof(__pyx_k__N_TPM_STATES), 0, 0, 1, 1}, - {&__pyx_n_s__N_TPM_TRANS, __pyx_k__N_TPM_TRANS, sizeof(__pyx_k__N_TPM_TRANS), 0, 0, 1, 1}, - {&__pyx_n_s__P, __pyx_k__P, sizeof(__pyx_k__P), 0, 0, 1, 1}, - {&__pyx_n_s__POLAR, __pyx_k__POLAR, sizeof(__pyx_k__POLAR), 0, 0, 1, 1}, - {&__pyx_n_s__POS, __pyx_k__POS, sizeof(__pyx_k__POS), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_ANDOYER, __pyx_k__PRECESS_ANDOYER, sizeof(__pyx_k__PRECESS_ANDOYER), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_FK4, __pyx_k__PRECESS_FK4, sizeof(__pyx_k__PRECESS_FK4), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_FK5, __pyx_k__PRECESS_FK5, sizeof(__pyx_k__PRECESS_FK5), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_INERTIAL, __pyx_k__PRECESS_INERTIAL, sizeof(__pyx_k__PRECESS_INERTIAL), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_KINOSHITA, __pyx_k__PRECESS_KINOSHITA, sizeof(__pyx_k__PRECESS_KINOSHITA), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_LIESKE, __pyx_k__PRECESS_LIESKE, sizeof(__pyx_k__PRECESS_LIESKE), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_NEWCOMB, __pyx_k__PRECESS_NEWCOMB, sizeof(__pyx_k__PRECESS_NEWCOMB), 0, 0, 1, 1}, - {&__pyx_n_s__PRECESS_ROTATING, __pyx_k__PRECESS_ROTATING, sizeof(__pyx_k__PRECESS_ROTATING), 0, 0, 1, 1}, - {&__pyx_n_s__SATURDAY, __pyx_k__SATURDAY, sizeof(__pyx_k__SATURDAY), 0, 0, 1, 1}, - {&__pyx_n_s__SPHERICAL, __pyx_k__SPHERICAL, sizeof(__pyx_k__SPHERICAL), 0, 0, 1, 1}, - {&__pyx_n_s__SUNDAY, __pyx_k__SUNDAY, sizeof(__pyx_k__SUNDAY), 0, 0, 1, 1}, - {&__pyx_n_s__T, __pyx_k__T, sizeof(__pyx_k__T), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_APP_AZEL, __pyx_k__TARGET_APP_AZEL, sizeof(__pyx_k__TARGET_APP_AZEL), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_APP_HADEC, __pyx_k__TARGET_APP_HADEC, sizeof(__pyx_k__TARGET_APP_HADEC), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_ECL, __pyx_k__TARGET_ECL, sizeof(__pyx_k__TARGET_ECL), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_FK4, __pyx_k__TARGET_FK4, sizeof(__pyx_k__TARGET_FK4), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_FK5, __pyx_k__TARGET_FK5, sizeof(__pyx_k__TARGET_FK5), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_GAL, __pyx_k__TARGET_GAL, sizeof(__pyx_k__TARGET_GAL), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_HADEC, __pyx_k__TARGET_HADEC, sizeof(__pyx_k__TARGET_HADEC), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_OBS_AZEL, __pyx_k__TARGET_OBS_AZEL, sizeof(__pyx_k__TARGET_OBS_AZEL), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_OBS_HADEC, __pyx_k__TARGET_OBS_HADEC, sizeof(__pyx_k__TARGET_OBS_HADEC), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_OBS_WHAM, __pyx_k__TARGET_OBS_WHAM, sizeof(__pyx_k__TARGET_OBS_WHAM), 0, 0, 1, 1}, - {&__pyx_n_s__TARGET_TOP_AZEL, __pyx_k__TARGET_TOP_AZEL, sizeof(__pyx_k__TARGET_TOP_AZEL), 0, 0, 1, 1}, - {&__pyx_n_s__THURSDAY, __pyx_k__THURSDAY, sizeof(__pyx_k__THURSDAY), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_ALL, __pyx_k__TPM_ALL, sizeof(__pyx_k__TPM_ALL), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_FAST, __pyx_k__TPM_FAST, sizeof(__pyx_k__TPM_FAST), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_INIT, __pyx_k__TPM_INIT, sizeof(__pyx_k__TPM_INIT), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_MEDIUM, __pyx_k__TPM_MEDIUM, sizeof(__pyx_k__TPM_MEDIUM), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_REFRACTION, __pyx_k__TPM_REFRACTION, sizeof(__pyx_k__TPM_REFRACTION), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S00, __pyx_k__TPM_S00, sizeof(__pyx_k__TPM_S00), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S01, __pyx_k__TPM_S01, sizeof(__pyx_k__TPM_S01), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S02, __pyx_k__TPM_S02, sizeof(__pyx_k__TPM_S02), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S03, __pyx_k__TPM_S03, sizeof(__pyx_k__TPM_S03), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S04, __pyx_k__TPM_S04, sizeof(__pyx_k__TPM_S04), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S05, __pyx_k__TPM_S05, sizeof(__pyx_k__TPM_S05), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S06, __pyx_k__TPM_S06, sizeof(__pyx_k__TPM_S06), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S07, __pyx_k__TPM_S07, sizeof(__pyx_k__TPM_S07), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S08, __pyx_k__TPM_S08, sizeof(__pyx_k__TPM_S08), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S09, __pyx_k__TPM_S09, sizeof(__pyx_k__TPM_S09), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S10, __pyx_k__TPM_S10, sizeof(__pyx_k__TPM_S10), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S11, __pyx_k__TPM_S11, sizeof(__pyx_k__TPM_S11), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S12, __pyx_k__TPM_S12, sizeof(__pyx_k__TPM_S12), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S13, __pyx_k__TPM_S13, sizeof(__pyx_k__TPM_S13), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S14, __pyx_k__TPM_S14, sizeof(__pyx_k__TPM_S14), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S15, __pyx_k__TPM_S15, sizeof(__pyx_k__TPM_S15), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S16, __pyx_k__TPM_S16, sizeof(__pyx_k__TPM_S16), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S17, __pyx_k__TPM_S17, sizeof(__pyx_k__TPM_S17), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S18, __pyx_k__TPM_S18, sizeof(__pyx_k__TPM_S18), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S19, __pyx_k__TPM_S19, sizeof(__pyx_k__TPM_S19), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S20, __pyx_k__TPM_S20, sizeof(__pyx_k__TPM_S20), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_S21, __pyx_k__TPM_S21, sizeof(__pyx_k__TPM_S21), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_SLOW, __pyx_k__TPM_SLOW, sizeof(__pyx_k__TPM_SLOW), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T00, __pyx_k__TPM_T00, sizeof(__pyx_k__TPM_T00), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T01, __pyx_k__TPM_T01, sizeof(__pyx_k__TPM_T01), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T02, __pyx_k__TPM_T02, sizeof(__pyx_k__TPM_T02), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T03, __pyx_k__TPM_T03, sizeof(__pyx_k__TPM_T03), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T04, __pyx_k__TPM_T04, sizeof(__pyx_k__TPM_T04), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T05, __pyx_k__TPM_T05, sizeof(__pyx_k__TPM_T05), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T06, __pyx_k__TPM_T06, sizeof(__pyx_k__TPM_T06), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T07, __pyx_k__TPM_T07, sizeof(__pyx_k__TPM_T07), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T08, __pyx_k__TPM_T08, sizeof(__pyx_k__TPM_T08), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T09, __pyx_k__TPM_T09, sizeof(__pyx_k__TPM_T09), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T10, __pyx_k__TPM_T10, sizeof(__pyx_k__TPM_T10), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T11, __pyx_k__TPM_T11, sizeof(__pyx_k__TPM_T11), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T12, __pyx_k__TPM_T12, sizeof(__pyx_k__TPM_T12), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T13, __pyx_k__TPM_T13, sizeof(__pyx_k__TPM_T13), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T14, __pyx_k__TPM_T14, sizeof(__pyx_k__TPM_T14), 0, 0, 1, 1}, - {&__pyx_n_s__TPM_T15, __pyx_k__TPM_T15, sizeof(__pyx_k__TPM_T15), 0, 0, 1, 1}, - {&__pyx_n_s__TUESDAY, __pyx_k__TUESDAY, sizeof(__pyx_k__TUESDAY), 0, 0, 1, 1}, - {&__pyx_n_s__TypeError, __pyx_k__TypeError, sizeof(__pyx_k__TypeError), 0, 0, 1, 1}, - {&__pyx_n_s__VEL, __pyx_k__VEL, sizeof(__pyx_k__VEL), 0, 0, 1, 1}, - {&__pyx_n_s__ValueError, __pyx_k__ValueError, sizeof(__pyx_k__ValueError), 0, 0, 1, 1}, - {&__pyx_n_s__WEDNESDAY, __pyx_k__WEDNESDAY, sizeof(__pyx_k__WEDNESDAY), 0, 0, 1, 1}, - {&__pyx_n_s__X, __pyx_k__X, sizeof(__pyx_k__X), 0, 0, 1, 1}, - {&__pyx_n_s__Y, __pyx_k__Y, sizeof(__pyx_k__Y), 0, 0, 1, 1}, - {&__pyx_n_s__Z, __pyx_k__Z, sizeof(__pyx_k__Z), 0, 0, 1, 1}, - {&__pyx_n_s____class__, __pyx_k____class__, sizeof(__pyx_k____class__), 0, 0, 1, 1}, - {&__pyx_n_s____getH, __pyx_k____getH, sizeof(__pyx_k____getH), 0, 0, 1, 1}, - {&__pyx_n_s____getP, __pyx_k____getP, sizeof(__pyx_k____getP), 0, 0, 1, 1}, - {&__pyx_n_s____getPOS, __pyx_k____getPOS, sizeof(__pyx_k____getPOS), 0, 0, 1, 1}, - {&__pyx_n_s____getPP, __pyx_k____getPP, sizeof(__pyx_k____getPP), 0, 0, 1, 1}, - {&__pyx_n_s____getPV, __pyx_k____getPV, sizeof(__pyx_k____getPV), 0, 0, 1, 1}, - {&__pyx_n_s____getT, __pyx_k____getT, sizeof(__pyx_k____getT), 0, 0, 1, 1}, - {&__pyx_n_s____getVP, __pyx_k____getVP, sizeof(__pyx_k____getVP), 0, 0, 1, 1}, - {&__pyx_n_s____getVV, __pyx_k____getVV, sizeof(__pyx_k____getVV), 0, 0, 1, 1}, - {&__pyx_n_s____get_pvec, __pyx_k____get_pvec, sizeof(__pyx_k____get_pvec), 0, 0, 1, 1}, - {&__pyx_n_s____get_tstate, __pyx_k____get_tstate, sizeof(__pyx_k____get_tstate), 0, 0, 1, 1}, - {&__pyx_n_s____getalpha, __pyx_k____getalpha, sizeof(__pyx_k____getalpha), 0, 0, 1, 1}, - {&__pyx_n_s____getalphadot, __pyx_k____getalphadot, sizeof(__pyx_k____getalphadot), 0, 0, 1, 1}, - {&__pyx_n_s____getalt, __pyx_k____getalt, sizeof(__pyx_k____getalt), 0, 0, 1, 1}, - {&__pyx_n_s____getdd, __pyx_k____getdd, sizeof(__pyx_k____getdd), 0, 0, 1, 1}, - {&__pyx_n_s____getdelta, __pyx_k____getdelta, sizeof(__pyx_k____getdelta), 0, 0, 1, 1}, - {&__pyx_n_s____getdelta_at, __pyx_k____getdelta_at, sizeof(__pyx_k____getdelta_at), 0, 0, 1, 1}, - {&__pyx_n_s____getdelta_ut, __pyx_k____getdelta_ut, sizeof(__pyx_k____getdelta_ut), 0, 0, 1, 1}, - {&__pyx_n_s____getdeltadot, __pyx_k____getdeltadot, sizeof(__pyx_k____getdeltadot), 0, 0, 1, 1}, - {&__pyx_n_s____geteb, __pyx_k____geteb, sizeof(__pyx_k____geteb), 0, 0, 1, 1}, - {&__pyx_n_s____geteh, __pyx_k____geteh, sizeof(__pyx_k____geteh), 0, 0, 1, 1}, - {&__pyx_n_s____getgast, __pyx_k____getgast, sizeof(__pyx_k____getgast), 0, 0, 1, 1}, - {&__pyx_n_s____getgmst, __pyx_k____getgmst, sizeof(__pyx_k____getgmst), 0, 0, 1, 1}, - {&__pyx_n_s____gethh, __pyx_k____gethh, sizeof(__pyx_k____gethh), 0, 0, 1, 1}, - {&__pyx_n_s____getlast, __pyx_k____getlast, sizeof(__pyx_k____getlast), 0, 0, 1, 1}, - {&__pyx_n_s____getlat, __pyx_k____getlat, sizeof(__pyx_k____getlat), 0, 0, 1, 1}, - {&__pyx_n_s____getlon, __pyx_k____getlon, sizeof(__pyx_k____getlon), 0, 0, 1, 1}, - {&__pyx_n_s____getm, __pyx_k____getm, sizeof(__pyx_k____getm), 0, 0, 1, 1}, - {&__pyx_n_s____getmm, __pyx_k____getmm, sizeof(__pyx_k____getmm), 0, 0, 1, 1}, - {&__pyx_n_s____getnalpha, __pyx_k____getnalpha, sizeof(__pyx_k____getnalpha), 0, 0, 1, 1}, - {&__pyx_n_s____getndelta, __pyx_k____getndelta, sizeof(__pyx_k____getndelta), 0, 0, 1, 1}, - {&__pyx_n_s____getnm, __pyx_k____getnm, sizeof(__pyx_k____getnm), 0, 0, 1, 1}, - {&__pyx_n_s____getnut_lon, __pyx_k____getnut_lon, sizeof(__pyx_k____getnut_lon), 0, 0, 1, 1}, - {&__pyx_n_s____getnut_obl, __pyx_k____getnut_obl, sizeof(__pyx_k____getnut_obl), 0, 0, 1, 1}, - {&__pyx_n_s____getobliquity, __pyx_k____getobliquity, sizeof(__pyx_k____getobliquity), 0, 0, 1, 1}, - {&__pyx_n_s____getobs_m, __pyx_k____getobs_m, sizeof(__pyx_k____getobs_m), 0, 0, 1, 1}, - {&__pyx_n_s____getobs_s, __pyx_k____getobs_s, sizeof(__pyx_k____getobs_s), 0, 0, 1, 1}, - {&__pyx_n_s____getobs_t, __pyx_k____getobs_t, sizeof(__pyx_k____getobs_t), 0, 0, 1, 1}, - {&__pyx_n_s____getpm, __pyx_k____getpm, sizeof(__pyx_k____getpm), 0, 0, 1, 1}, - {&__pyx_n_s____getr, __pyx_k____getr, sizeof(__pyx_k____getr), 0, 0, 1, 1}, - {&__pyx_n_s____getrdot, __pyx_k____getrdot, sizeof(__pyx_k____getrdot), 0, 0, 1, 1}, - {&__pyx_n_s____getrefa, __pyx_k____getrefa, sizeof(__pyx_k____getrefa), 0, 0, 1, 1}, - {&__pyx_n_s____getrefb, __pyx_k____getrefb, sizeof(__pyx_k____getrefb), 0, 0, 1, 1}, - {&__pyx_n_s____getss, __pyx_k____getss, sizeof(__pyx_k____getss), 0, 0, 1, 1}, - {&__pyx_n_s____gettai, __pyx_k____gettai, sizeof(__pyx_k____gettai), 0, 0, 1, 1}, - {&__pyx_n_s____gettdb, __pyx_k____gettdb, sizeof(__pyx_k____gettdb), 0, 0, 1, 1}, - {&__pyx_n_s____gettdt, __pyx_k____gettdt, sizeof(__pyx_k____gettdt), 0, 0, 1, 1}, - {&__pyx_n_s____getut1, __pyx_k____getut1, sizeof(__pyx_k____getut1), 0, 0, 1, 1}, - {&__pyx_n_s____getutc, __pyx_k____getutc, sizeof(__pyx_k____getutc), 0, 0, 1, 1}, - {&__pyx_n_s____getwavelength, __pyx_k____getwavelength, sizeof(__pyx_k____getwavelength), 0, 0, 1, 1}, - {&__pyx_n_s____getx, __pyx_k____getx, sizeof(__pyx_k____getx), 0, 0, 1, 1}, - {&__pyx_n_s____getxdot, __pyx_k____getxdot, sizeof(__pyx_k____getxdot), 0, 0, 1, 1}, - {&__pyx_n_s____getxpole, __pyx_k____getxpole, sizeof(__pyx_k____getxpole), 0, 0, 1, 1}, - {&__pyx_n_s____getxx, __pyx_k____getxx, sizeof(__pyx_k____getxx), 0, 0, 1, 1}, - {&__pyx_n_s____getxy, __pyx_k____getxy, sizeof(__pyx_k____getxy), 0, 0, 1, 1}, - {&__pyx_n_s____getxz, __pyx_k____getxz, sizeof(__pyx_k____getxz), 0, 0, 1, 1}, - {&__pyx_n_s____gety, __pyx_k____gety, sizeof(__pyx_k____gety), 0, 0, 1, 1}, - {&__pyx_n_s____getydot, __pyx_k____getydot, sizeof(__pyx_k____getydot), 0, 0, 1, 1}, - {&__pyx_n_s____getypole, __pyx_k____getypole, sizeof(__pyx_k____getypole), 0, 0, 1, 1}, - {&__pyx_n_s____getyx, __pyx_k____getyx, sizeof(__pyx_k____getyx), 0, 0, 1, 1}, - {&__pyx_n_s____getyy, __pyx_k____getyy, sizeof(__pyx_k____getyy), 0, 0, 1, 1}, - {&__pyx_n_s____getyz, __pyx_k____getyz, sizeof(__pyx_k____getyz), 0, 0, 1, 1}, - {&__pyx_n_s____getz, __pyx_k____getz, sizeof(__pyx_k____getz), 0, 0, 1, 1}, - {&__pyx_n_s____getzdot, __pyx_k____getzdot, sizeof(__pyx_k____getzdot), 0, 0, 1, 1}, - {&__pyx_n_s____getzx, __pyx_k____getzx, sizeof(__pyx_k____getzx), 0, 0, 1, 1}, - {&__pyx_n_s____getzy, __pyx_k____getzy, sizeof(__pyx_k____getzy), 0, 0, 1, 1}, - {&__pyx_n_s____getzz, __pyx_k____getzz, sizeof(__pyx_k____getzz), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____setH, __pyx_k____setH, sizeof(__pyx_k____setH), 0, 0, 1, 1}, - {&__pyx_n_s____setP, __pyx_k____setP, sizeof(__pyx_k____setP), 0, 0, 1, 1}, - {&__pyx_n_s____setPOS, __pyx_k____setPOS, sizeof(__pyx_k____setPOS), 0, 0, 1, 1}, - {&__pyx_n_s____setPP, __pyx_k____setPP, sizeof(__pyx_k____setPP), 0, 0, 1, 1}, - {&__pyx_n_s____setPV, __pyx_k____setPV, sizeof(__pyx_k____setPV), 0, 0, 1, 1}, - {&__pyx_n_s____setT, __pyx_k____setT, sizeof(__pyx_k____setT), 0, 0, 1, 1}, - {&__pyx_n_s____setVP, __pyx_k____setVP, sizeof(__pyx_k____setVP), 0, 0, 1, 1}, - {&__pyx_n_s____setVV, __pyx_k____setVV, sizeof(__pyx_k____setVV), 0, 0, 1, 1}, - {&__pyx_n_s____set_pvec, __pyx_k____set_pvec, sizeof(__pyx_k____set_pvec), 0, 0, 1, 1}, - {&__pyx_n_s____set_tstate, __pyx_k____set_tstate, sizeof(__pyx_k____set_tstate), 0, 0, 1, 1}, - {&__pyx_n_s____setalpha, __pyx_k____setalpha, sizeof(__pyx_k____setalpha), 0, 0, 1, 1}, - {&__pyx_n_s____setalphadot, __pyx_k____setalphadot, sizeof(__pyx_k____setalphadot), 0, 0, 1, 1}, - {&__pyx_n_s____setalt, __pyx_k____setalt, sizeof(__pyx_k____setalt), 0, 0, 1, 1}, - {&__pyx_n_s____setdd, __pyx_k____setdd, sizeof(__pyx_k____setdd), 0, 0, 1, 1}, - {&__pyx_n_s____setdelta, __pyx_k____setdelta, sizeof(__pyx_k____setdelta), 0, 0, 1, 1}, - {&__pyx_n_s____setdelta_at, __pyx_k____setdelta_at, sizeof(__pyx_k____setdelta_at), 0, 0, 1, 1}, - {&__pyx_n_s____setdelta_ut, __pyx_k____setdelta_ut, sizeof(__pyx_k____setdelta_ut), 0, 0, 1, 1}, - {&__pyx_n_s____setdeltadot, __pyx_k____setdeltadot, sizeof(__pyx_k____setdeltadot), 0, 0, 1, 1}, - {&__pyx_n_s____sethh, __pyx_k____sethh, sizeof(__pyx_k____sethh), 0, 0, 1, 1}, - {&__pyx_n_s____setlat, __pyx_k____setlat, sizeof(__pyx_k____setlat), 0, 0, 1, 1}, - {&__pyx_n_s____setlon, __pyx_k____setlon, sizeof(__pyx_k____setlon), 0, 0, 1, 1}, - {&__pyx_n_s____setm, __pyx_k____setm, sizeof(__pyx_k____setm), 0, 0, 1, 1}, - {&__pyx_n_s____setmm, __pyx_k____setmm, sizeof(__pyx_k____setmm), 0, 0, 1, 1}, - {&__pyx_n_s____setr, __pyx_k____setr, sizeof(__pyx_k____setr), 0, 0, 1, 1}, - {&__pyx_n_s____setrdot, __pyx_k____setrdot, sizeof(__pyx_k____setrdot), 0, 0, 1, 1}, - {&__pyx_n_s____setss, __pyx_k____setss, sizeof(__pyx_k____setss), 0, 0, 1, 1}, - {&__pyx_n_s____setutc, __pyx_k____setutc, sizeof(__pyx_k____setutc), 0, 0, 1, 1}, - {&__pyx_n_s____setwavelength, __pyx_k____setwavelength, sizeof(__pyx_k____setwavelength), 0, 0, 1, 1}, - {&__pyx_n_s____setx, __pyx_k____setx, sizeof(__pyx_k____setx), 0, 0, 1, 1}, - {&__pyx_n_s____setxdot, __pyx_k____setxdot, sizeof(__pyx_k____setxdot), 0, 0, 1, 1}, - {&__pyx_n_s____setxpole, __pyx_k____setxpole, sizeof(__pyx_k____setxpole), 0, 0, 1, 1}, - {&__pyx_n_s____setxx, __pyx_k____setxx, sizeof(__pyx_k____setxx), 0, 0, 1, 1}, - {&__pyx_n_s____setxy, __pyx_k____setxy, sizeof(__pyx_k____setxy), 0, 0, 1, 1}, - {&__pyx_n_s____setxz, __pyx_k____setxz, sizeof(__pyx_k____setxz), 0, 0, 1, 1}, - {&__pyx_n_s____sety, __pyx_k____sety, sizeof(__pyx_k____sety), 0, 0, 1, 1}, - {&__pyx_n_s____setydot, __pyx_k____setydot, sizeof(__pyx_k____setydot), 0, 0, 1, 1}, - {&__pyx_n_s____setypole, __pyx_k____setypole, sizeof(__pyx_k____setypole), 0, 0, 1, 1}, - {&__pyx_n_s____setyx, __pyx_k____setyx, sizeof(__pyx_k____setyx), 0, 0, 1, 1}, - {&__pyx_n_s____setyy, __pyx_k____setyy, sizeof(__pyx_k____setyy), 0, 0, 1, 1}, - {&__pyx_n_s____setyz, __pyx_k____setyz, sizeof(__pyx_k____setyz), 0, 0, 1, 1}, - {&__pyx_n_s____setz, __pyx_k____setz, sizeof(__pyx_k____setz), 0, 0, 1, 1}, - {&__pyx_n_s____setzdot, __pyx_k____setzdot, sizeof(__pyx_k____setzdot), 0, 0, 1, 1}, - {&__pyx_n_s____setzx, __pyx_k____setzx, sizeof(__pyx_k____setzx), 0, 0, 1, 1}, - {&__pyx_n_s____setzy, __pyx_k____setzy, sizeof(__pyx_k____setzy), 0, 0, 1, 1}, - {&__pyx_n_s____setzz, __pyx_k____setzz, sizeof(__pyx_k____setzz), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s___dms, __pyx_k___dms, sizeof(__pyx_k___dms), 0, 0, 1, 1}, - {&__pyx_n_s___hms, __pyx_k___hms, sizeof(__pyx_k___hms), 0, 0, 1, 1}, - {&__pyx_n_s___jd, __pyx_k___jd, sizeof(__pyx_k___jd), 0, 0, 1, 1}, - {&__pyx_n_s___m3, __pyx_k___m3, sizeof(__pyx_k___m3), 0, 0, 1, 1}, - {&__pyx_n_s___m6, __pyx_k___m6, sizeof(__pyx_k___m6), 0, 0, 1, 1}, - {&__pyx_n_s___pvec, __pyx_k___pvec, sizeof(__pyx_k___pvec), 0, 0, 1, 1}, - {&__pyx_n_s___tstate, __pyx_k___tstate, sizeof(__pyx_k___tstate), 0, 0, 1, 1}, - {&__pyx_n_s___v3, __pyx_k___v3, sizeof(__pyx_k___v3), 0, 0, 1, 1}, - {&__pyx_n_s___v6, __pyx_k___v6, sizeof(__pyx_k___v6), 0, 0, 1, 1}, - {&__pyx_n_s___ymd, __pyx_k___ymd, sizeof(__pyx_k___ymd), 0, 0, 1, 1}, - {&__pyx_n_s__aberrate, __pyx_k__aberrate, sizeof(__pyx_k__aberrate), 0, 0, 1, 1}, - {&__pyx_n_s__action, __pyx_k__action, sizeof(__pyx_k__action), 0, 0, 1, 1}, - {&__pyx_n_s__alpha, __pyx_k__alpha, sizeof(__pyx_k__alpha), 0, 0, 1, 1}, - {&__pyx_n_s__alphadot, __pyx_k__alphadot, sizeof(__pyx_k__alphadot), 0, 0, 1, 1}, - {&__pyx_n_s__alt, __pyx_k__alt, sizeof(__pyx_k__alt), 0, 0, 1, 1}, - {&__pyx_n_s__as2d, __pyx_k__as2d, sizeof(__pyx_k__as2d), 0, 0, 1, 1}, - {&__pyx_n_s__as2h, __pyx_k__as2h, sizeof(__pyx_k__as2h), 0, 0, 1, 1}, - {&__pyx_n_s__as2r, __pyx_k__as2r, sizeof(__pyx_k__as2r), 0, 0, 1, 1}, - {&__pyx_n_s__azel2hadec, __pyx_k__azel2hadec, sizeof(__pyx_k__azel2hadec), 0, 0, 1, 1}, - {&__pyx_n_s__byear2jd, __pyx_k__byear2jd, sizeof(__pyx_k__byear2jd), 0, 0, 1, 1}, - {&__pyx_n_s__c2s, __pyx_k__c2s, sizeof(__pyx_k__c2s), 0, 0, 1, 1}, - {&__pyx_n_s__cat2v6, __pyx_k__cat2v6, sizeof(__pyx_k__cat2v6), 0, 0, 1, 1}, - {&__pyx_n_s__ctype, __pyx_k__ctype, sizeof(__pyx_k__ctype), 0, 0, 1, 1}, - {&__pyx_n_s__d2as, __pyx_k__d2as, sizeof(__pyx_k__d2as), 0, 0, 1, 1}, - {&__pyx_n_s__d2d, __pyx_k__d2d, sizeof(__pyx_k__d2d), 0, 0, 1, 1}, - {&__pyx_n_s__d2h, __pyx_k__d2h, sizeof(__pyx_k__d2h), 0, 0, 1, 1}, - {&__pyx_n_s__d2r, __pyx_k__d2r, sizeof(__pyx_k__d2r), 0, 0, 1, 1}, - {&__pyx_n_s__dd, __pyx_k__dd, sizeof(__pyx_k__dd), 0, 0, 1, 1}, - {&__pyx_n_s__degrees, __pyx_k__degrees, sizeof(__pyx_k__degrees), 0, 0, 1, 1}, - {&__pyx_n_s__delta, __pyx_k__delta, sizeof(__pyx_k__delta), 0, 0, 1, 1}, - {&__pyx_n_s__delta_AT, __pyx_k__delta_AT, sizeof(__pyx_k__delta_AT), 0, 0, 1, 1}, - {&__pyx_n_s__delta_ET, __pyx_k__delta_ET, sizeof(__pyx_k__delta_ET), 0, 0, 1, 1}, - {&__pyx_n_s__delta_T, __pyx_k__delta_T, sizeof(__pyx_k__delta_T), 0, 0, 1, 1}, - {&__pyx_n_s__delta_TT, __pyx_k__delta_TT, sizeof(__pyx_k__delta_TT), 0, 0, 1, 1}, - {&__pyx_n_s__delta_UT, __pyx_k__delta_UT, sizeof(__pyx_k__delta_UT), 0, 0, 1, 1}, - {&__pyx_n_s__delta_at, __pyx_k__delta_at, sizeof(__pyx_k__delta_at), 0, 0, 1, 1}, - {&__pyx_n_s__delta_ut, __pyx_k__delta_ut, sizeof(__pyx_k__delta_ut), 0, 0, 1, 1}, - {&__pyx_n_s__deltadot, __pyx_k__deltadot, sizeof(__pyx_k__deltadot), 0, 0, 1, 1}, - {&__pyx_n_s__doc, __pyx_k__doc, sizeof(__pyx_k__doc), 0, 0, 1, 1}, - {&__pyx_n_s__e, __pyx_k__e, sizeof(__pyx_k__e), 0, 0, 1, 1}, - {&__pyx_n_s__earth, __pyx_k__earth, sizeof(__pyx_k__earth), 0, 0, 1, 1}, - {&__pyx_n_s__eb, __pyx_k__eb, sizeof(__pyx_k__eb), 0, 0, 1, 1}, - {&__pyx_n_s__eccentricity, __pyx_k__eccentricity, sizeof(__pyx_k__eccentricity), 0, 0, 1, 1}, - {&__pyx_n_s__eccentricity_dot, __pyx_k__eccentricity_dot, sizeof(__pyx_k__eccentricity_dot), 0, 0, 1, 1}, - {&__pyx_n_s__ecl2equ, __pyx_k__ecl2equ, sizeof(__pyx_k__ecl2equ), 0, 0, 1, 1}, - {&__pyx_n_s__eh, __pyx_k__eh, sizeof(__pyx_k__eh), 0, 0, 1, 1}, - {&__pyx_n_s__ellab, __pyx_k__ellab, sizeof(__pyx_k__ellab), 0, 0, 1, 1}, - {&__pyx_n_s__end, __pyx_k__end, sizeof(__pyx_k__end), 0, 0, 1, 1}, - {&__pyx_n_s__ep, __pyx_k__ep, sizeof(__pyx_k__ep), 0, 0, 1, 1}, - {&__pyx_n_s__eps, __pyx_k__eps, sizeof(__pyx_k__eps), 0, 0, 1, 1}, - {&__pyx_n_s__eq, __pyx_k__eq, sizeof(__pyx_k__eq), 0, 0, 1, 1}, - {&__pyx_n_s__equ2ecl, __pyx_k__equ2ecl, sizeof(__pyx_k__equ2ecl), 0, 0, 1, 1}, - {&__pyx_n_s__equ2gal, __pyx_k__equ2gal, sizeof(__pyx_k__equ2gal), 0, 0, 1, 1}, - {&__pyx_n_s__et2tai, __pyx_k__et2tai, sizeof(__pyx_k__et2tai), 0, 0, 1, 1}, - {&__pyx_n_s__et2tdb, __pyx_k__et2tdb, sizeof(__pyx_k__et2tdb), 0, 0, 1, 1}, - {&__pyx_n_s__et2tdt, __pyx_k__et2tdt, sizeof(__pyx_k__et2tdt), 0, 0, 1, 1}, - {&__pyx_n_s__et2ut, __pyx_k__et2ut, sizeof(__pyx_k__et2ut), 0, 0, 1, 1}, - {&__pyx_n_s__et2ut1, __pyx_k__et2ut1, sizeof(__pyx_k__et2ut1), 0, 0, 1, 1}, - {&__pyx_n_s__et2utc, __pyx_k__et2utc, sizeof(__pyx_k__et2utc), 0, 0, 1, 1}, - {&__pyx_n_s__eterms, __pyx_k__eterms, sizeof(__pyx_k__eterms), 0, 0, 1, 1}, - {&__pyx_n_s__evp, __pyx_k__evp, sizeof(__pyx_k__evp), 0, 0, 1, 1}, - {&__pyx_n_s__fk425, __pyx_k__fk425, sizeof(__pyx_k__fk425), 0, 0, 1, 1}, - {&__pyx_n_s__fk524, __pyx_k__fk524, sizeof(__pyx_k__fk524), 0, 0, 1, 1}, - {&__pyx_n_s__flag, __pyx_k__flag, sizeof(__pyx_k__flag), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_alpha, __pyx_k__fmt_alpha, sizeof(__pyx_k__fmt_alpha), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_d, __pyx_k__fmt_d, sizeof(__pyx_k__fmt_d), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_delta, __pyx_k__fmt_delta, sizeof(__pyx_k__fmt_delta), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_h, __pyx_k__fmt_h, sizeof(__pyx_k__fmt_h), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_j, __pyx_k__fmt_j, sizeof(__pyx_k__fmt_j), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_r, __pyx_k__fmt_r, sizeof(__pyx_k__fmt_r), 0, 0, 1, 1}, - {&__pyx_n_s__fmt_y, __pyx_k__fmt_y, sizeof(__pyx_k__fmt_y), 0, 0, 1, 1}, - {&__pyx_n_s__format, __pyx_k__format, sizeof(__pyx_k__format), 0, 0, 1, 1}, - {&__pyx_n_s__gal2equ, __pyx_k__gal2equ, sizeof(__pyx_k__gal2equ), 0, 0, 1, 1}, - {&__pyx_n_s__gast, __pyx_k__gast, sizeof(__pyx_k__gast), 0, 0, 1, 1}, - {&__pyx_n_s__gcal2j, __pyx_k__gcal2j, sizeof(__pyx_k__gcal2j), 0, 0, 1, 1}, - {&__pyx_n_s__geod2geoc, __pyx_k__geod2geoc, sizeof(__pyx_k__geod2geoc), 0, 0, 1, 1}, - {&__pyx_n_s__getM3, __pyx_k__getM3, sizeof(__pyx_k__getM3), 0, 0, 1, 1}, - {&__pyx_n_s__getM6, __pyx_k__getM6, sizeof(__pyx_k__getM6), 0, 0, 1, 1}, - {&__pyx_n_s__getPOS, __pyx_k__getPOS, sizeof(__pyx_k__getPOS), 0, 0, 1, 1}, - {&__pyx_n_s__getType, __pyx_k__getType, sizeof(__pyx_k__getType), 0, 0, 1, 1}, - {&__pyx_n_s__getV3, __pyx_k__getV3, sizeof(__pyx_k__getV3), 0, 0, 1, 1}, - {&__pyx_n_s__getV6, __pyx_k__getV6, sizeof(__pyx_k__getV6), 0, 0, 1, 1}, - {&__pyx_n_s__getX, __pyx_k__getX, sizeof(__pyx_k__getX), 0, 0, 1, 1}, - {&__pyx_n_s__getXdot, __pyx_k__getXdot, sizeof(__pyx_k__getXdot), 0, 0, 1, 1}, - {&__pyx_n_s__getY, __pyx_k__getY, sizeof(__pyx_k__getY), 0, 0, 1, 1}, - {&__pyx_n_s__getYdot, __pyx_k__getYdot, sizeof(__pyx_k__getYdot), 0, 0, 1, 1}, - {&__pyx_n_s__getZ, __pyx_k__getZ, sizeof(__pyx_k__getZ), 0, 0, 1, 1}, - {&__pyx_n_s__getZdot, __pyx_k__getZdot, sizeof(__pyx_k__getZdot), 0, 0, 1, 1}, - {&__pyx_n_s__gmst, __pyx_k__gmst, sizeof(__pyx_k__gmst), 0, 0, 1, 1}, - {&__pyx_n_s__h, __pyx_k__h, sizeof(__pyx_k__h), 0, 0, 1, 1}, - {&__pyx_n_s__h2as, __pyx_k__h2as, sizeof(__pyx_k__h2as), 0, 0, 1, 1}, - {&__pyx_n_s__h2d, __pyx_k__h2d, sizeof(__pyx_k__h2d), 0, 0, 1, 1}, - {&__pyx_n_s__h2h, __pyx_k__h2h, sizeof(__pyx_k__h2h), 0, 0, 1, 1}, - {&__pyx_n_s__h2r, __pyx_k__h2r, sizeof(__pyx_k__h2r), 0, 0, 1, 1}, - {&__pyx_n_s__hadec2azel, __pyx_k__hadec2azel, sizeof(__pyx_k__hadec2azel), 0, 0, 1, 1}, - {&__pyx_n_s__hh, __pyx_k__hh, sizeof(__pyx_k__hh), 0, 0, 1, 1}, - {&__pyx_n_s__hms, __pyx_k__hms, sizeof(__pyx_k__hms), 0, 0, 1, 1}, - {&__pyx_n_s__j, __pyx_k__j, sizeof(__pyx_k__j), 0, 0, 1, 1}, - {&__pyx_n_s__j2dow, __pyx_k__j2dow, sizeof(__pyx_k__j2dow), 0, 0, 1, 1}, - {&__pyx_n_s__j2gcal, __pyx_k__j2gcal, sizeof(__pyx_k__j2gcal), 0, 0, 1, 1}, - {&__pyx_n_s__j2jcal, __pyx_k__j2jcal, sizeof(__pyx_k__j2jcal), 0, 0, 1, 1}, - {&__pyx_n_s__j2y, __pyx_k__j2y, sizeof(__pyx_k__j2y), 0, 0, 1, 1}, - {&__pyx_n_s__jcal2j, __pyx_k__jcal2j, sizeof(__pyx_k__jcal2j), 0, 0, 1, 1}, - {&__pyx_n_s__jd2byear, __pyx_k__jd2byear, sizeof(__pyx_k__jd2byear), 0, 0, 1, 1}, - {&__pyx_n_s__jd2jyear, __pyx_k__jd2jyear, sizeof(__pyx_k__jd2jyear), 0, 0, 1, 1}, - {&__pyx_n_s__jd_now, __pyx_k__jd_now, sizeof(__pyx_k__jd_now), 0, 0, 1, 1}, - {&__pyx_n_s__jyear2jd, __pyx_k__jyear2jd, sizeof(__pyx_k__jyear2jd), 0, 0, 1, 1}, - {&__pyx_n_s__last, __pyx_k__last, sizeof(__pyx_k__last), 0, 0, 1, 1}, - {&__pyx_n_s__lat, __pyx_k__lat, sizeof(__pyx_k__lat), 0, 0, 1, 1}, - {&__pyx_n_s__latitude, __pyx_k__latitude, sizeof(__pyx_k__latitude), 0, 0, 1, 1}, - {&__pyx_n_s__ldeflect, __pyx_k__ldeflect, sizeof(__pyx_k__ldeflect), 0, 0, 1, 1}, - {&__pyx_n_s__lon, __pyx_k__lon, sizeof(__pyx_k__lon), 0, 0, 1, 1}, - {&__pyx_n_s__m, __pyx_k__m, sizeof(__pyx_k__m), 0, 0, 1, 1}, - {&__pyx_n_s__m3rx, __pyx_k__m3rx, sizeof(__pyx_k__m3rx), 0, 0, 1, 1}, - {&__pyx_n_s__m3rxdot, __pyx_k__m3rxdot, sizeof(__pyx_k__m3rxdot), 0, 0, 1, 1}, - {&__pyx_n_s__m3ry, __pyx_k__m3ry, sizeof(__pyx_k__m3ry), 0, 0, 1, 1}, - {&__pyx_n_s__m3rydot, __pyx_k__m3rydot, sizeof(__pyx_k__m3rydot), 0, 0, 1, 1}, - {&__pyx_n_s__m3rz, __pyx_k__m3rz, sizeof(__pyx_k__m3rz), 0, 0, 1, 1}, - {&__pyx_n_s__m3rzdot, __pyx_k__m3rzdot, sizeof(__pyx_k__m3rzdot), 0, 0, 1, 1}, - {&__pyx_n_s__m6qx, __pyx_k__m6qx, sizeof(__pyx_k__m6qx), 0, 0, 1, 1}, - {&__pyx_n_s__m6qy, __pyx_k__m6qy, sizeof(__pyx_k__m6qy), 0, 0, 1, 1}, - {&__pyx_n_s__m6qz, __pyx_k__m6qz, sizeof(__pyx_k__m6qz), 0, 0, 1, 1}, - {&__pyx_n_s__mm, __pyx_k__mm, sizeof(__pyx_k__mm), 0, 0, 1, 1}, - {&__pyx_n_s__nalpha, __pyx_k__nalpha, sizeof(__pyx_k__nalpha), 0, 0, 1, 1}, - {&__pyx_n_s__ndelta, __pyx_k__ndelta, sizeof(__pyx_k__ndelta), 0, 0, 1, 1}, - {&__pyx_n_s__nm, __pyx_k__nm, sizeof(__pyx_k__nm), 0, 0, 1, 1}, - {&__pyx_n_s__nut_lon, __pyx_k__nut_lon, sizeof(__pyx_k__nut_lon), 0, 0, 1, 1}, - {&__pyx_n_s__nut_obl, __pyx_k__nut_obl, sizeof(__pyx_k__nut_obl), 0, 0, 1, 1}, - {&__pyx_n_s__nutations, __pyx_k__nutations, sizeof(__pyx_k__nutations), 0, 0, 1, 1}, - {&__pyx_n_s__obl, __pyx_k__obl, sizeof(__pyx_k__obl), 0, 0, 1, 1}, - {&__pyx_n_s__obliquity, __pyx_k__obliquity, sizeof(__pyx_k__obliquity), 0, 0, 1, 1}, - {&__pyx_n_s__obliquity_dot, __pyx_k__obliquity_dot, sizeof(__pyx_k__obliquity_dot), 0, 0, 1, 1}, - {&__pyx_n_s__obs_m, __pyx_k__obs_m, sizeof(__pyx_k__obs_m), 0, 0, 1, 1}, - {&__pyx_n_s__obs_s, __pyx_k__obs_s, sizeof(__pyx_k__obs_s), 0, 0, 1, 1}, - {&__pyx_n_s__obs_t, __pyx_k__obs_t, sizeof(__pyx_k__obs_t), 0, 0, 1, 1}, - {&__pyx_n_s__p, __pyx_k__p, sizeof(__pyx_k__p), 0, 0, 1, 1}, - {&__pyx_n_s__pflag, __pyx_k__pflag, sizeof(__pyx_k__pflag), 0, 0, 1, 1}, - {&__pyx_n_s__pm, __pyx_k__pm, sizeof(__pyx_k__pm), 0, 0, 1, 1}, - {&__pyx_n_s__pma, __pyx_k__pma, sizeof(__pyx_k__pma), 0, 0, 1, 1}, - {&__pyx_n_s__pmd, __pyx_k__pmd, sizeof(__pyx_k__pmd), 0, 0, 1, 1}, - {&__pyx_n_s__pos, __pyx_k__pos, sizeof(__pyx_k__pos), 0, 0, 1, 1}, - {&__pyx_n_s__pp, __pyx_k__pp, sizeof(__pyx_k__pp), 0, 0, 1, 1}, - {&__pyx_n_s__precess, __pyx_k__precess, sizeof(__pyx_k__precess), 0, 0, 1, 1}, - {&__pyx_n_s__precess_m, __pyx_k__precess_m, sizeof(__pyx_k__precess_m), 0, 0, 1, 1}, - {&__pyx_n_s__proper_motion, __pyx_k__proper_motion, sizeof(__pyx_k__proper_motion), 0, 0, 1, 1}, - {&__pyx_n_s__property, __pyx_k__property, sizeof(__pyx_k__property), 0, 0, 1, 1}, - {&__pyx_n_s__pv, __pyx_k__pv, sizeof(__pyx_k__pv), 0, 0, 1, 1}, - {&__pyx_n_s__pvec, __pyx_k__pvec, sizeof(__pyx_k__pvec), 0, 0, 1, 1}, - {&__pyx_n_s__px, __pyx_k__px, sizeof(__pyx_k__px), 0, 0, 1, 1}, - {&__pyx_n_s__r, __pyx_k__r, sizeof(__pyx_k__r), 0, 0, 1, 1}, - {&__pyx_n_s__r2as, __pyx_k__r2as, sizeof(__pyx_k__r2as), 0, 0, 1, 1}, - {&__pyx_n_s__r2d, __pyx_k__r2d, sizeof(__pyx_k__r2d), 0, 0, 1, 1}, - {&__pyx_n_s__r2h, __pyx_k__r2h, sizeof(__pyx_k__r2h), 0, 0, 1, 1}, - {&__pyx_n_s__r2r, __pyx_k__r2r, sizeof(__pyx_k__r2r), 0, 0, 1, 1}, - {&__pyx_n_s__range, __pyx_k__range, sizeof(__pyx_k__range), 0, 0, 1, 1}, - {&__pyx_n_s__rdot, __pyx_k__rdot, sizeof(__pyx_k__rdot), 0, 0, 1, 1}, - {&__pyx_n_s__refa, __pyx_k__refa, sizeof(__pyx_k__refa), 0, 0, 1, 1}, - {&__pyx_n_s__refb, __pyx_k__refb, sizeof(__pyx_k__refb), 0, 0, 1, 1}, - {&__pyx_n_s__refco, __pyx_k__refco, sizeof(__pyx_k__refco), 0, 0, 1, 1}, - {&__pyx_n_s__refract, __pyx_k__refract, sizeof(__pyx_k__refract), 0, 0, 1, 1}, - {&__pyx_n_s__rh, __pyx_k__rh, sizeof(__pyx_k__rh), 0, 0, 1, 1}, - {&__pyx_n_s__rv, __pyx_k__rv, sizeof(__pyx_k__rv), 0, 0, 1, 1}, - {&__pyx_n_s__s1, __pyx_k__s1, sizeof(__pyx_k__s1), 0, 0, 1, 1}, - {&__pyx_n_s__s2, __pyx_k__s2, sizeof(__pyx_k__s2), 0, 0, 1, 1}, - {&__pyx_n_s__setM3, __pyx_k__setM3, sizeof(__pyx_k__setM3), 0, 0, 1, 1}, - {&__pyx_n_s__setM6, __pyx_k__setM6, sizeof(__pyx_k__setM6), 0, 0, 1, 1}, - {&__pyx_n_s__setPOS, __pyx_k__setPOS, sizeof(__pyx_k__setPOS), 0, 0, 1, 1}, - {&__pyx_n_s__setType, __pyx_k__setType, sizeof(__pyx_k__setType), 0, 0, 1, 1}, - {&__pyx_n_s__setV3, __pyx_k__setV3, sizeof(__pyx_k__setV3), 0, 0, 1, 1}, - {&__pyx_n_s__setV6, __pyx_k__setV6, sizeof(__pyx_k__setV6), 0, 0, 1, 1}, - {&__pyx_n_s__setX, __pyx_k__setX, sizeof(__pyx_k__setX), 0, 0, 1, 1}, - {&__pyx_n_s__setXdot, __pyx_k__setXdot, sizeof(__pyx_k__setXdot), 0, 0, 1, 1}, - {&__pyx_n_s__setY, __pyx_k__setY, sizeof(__pyx_k__setY), 0, 0, 1, 1}, - {&__pyx_n_s__setYdot, __pyx_k__setYdot, sizeof(__pyx_k__setYdot), 0, 0, 1, 1}, - {&__pyx_n_s__setZ, __pyx_k__setZ, sizeof(__pyx_k__setZ), 0, 0, 1, 1}, - {&__pyx_n_s__setZdot, __pyx_k__setZdot, sizeof(__pyx_k__setZdot), 0, 0, 1, 1}, - {&__pyx_n_s__sflag, __pyx_k__sflag, sizeof(__pyx_k__sflag), 0, 0, 1, 1}, - {&__pyx_n_s__solar_perigee, __pyx_k__solar_perigee, sizeof(__pyx_k__solar_perigee), 0, 0, 1, 1}, - {&__pyx_n_s__solar_perigee_dot, __pyx_k__solar_perigee_dot, sizeof(__pyx_k__solar_perigee_dot), 0, 0, 1, 1}, - {&__pyx_n_s__ss, __pyx_k__ss, sizeof(__pyx_k__ss), 0, 0, 1, 1}, - {&__pyx_n_s__star, __pyx_k__star, sizeof(__pyx_k__star), 0, 0, 1, 1}, - {&__pyx_n_s__start, __pyx_k__start, sizeof(__pyx_k__start), 0, 0, 1, 1}, - {&__pyx_n_s__tai, __pyx_k__tai, sizeof(__pyx_k__tai), 0, 0, 1, 1}, - {&__pyx_n_s__tai2et, __pyx_k__tai2et, sizeof(__pyx_k__tai2et), 0, 0, 1, 1}, - {&__pyx_n_s__tai2tdb, __pyx_k__tai2tdb, sizeof(__pyx_k__tai2tdb), 0, 0, 1, 1}, - {&__pyx_n_s__tai2tdt, __pyx_k__tai2tdt, sizeof(__pyx_k__tai2tdt), 0, 0, 1, 1}, - {&__pyx_n_s__tai2ut1, __pyx_k__tai2ut1, sizeof(__pyx_k__tai2ut1), 0, 0, 1, 1}, - {&__pyx_n_s__tai2utc, __pyx_k__tai2utc, sizeof(__pyx_k__tai2utc), 0, 0, 1, 1}, - {&__pyx_n_s__tdb, __pyx_k__tdb, sizeof(__pyx_k__tdb), 0, 0, 1, 1}, - {&__pyx_n_s__tdt, __pyx_k__tdt, sizeof(__pyx_k__tdt), 0, 0, 1, 1}, - {&__pyx_n_s__tdt2et, __pyx_k__tdt2et, sizeof(__pyx_k__tdt2et), 0, 0, 1, 1}, - {&__pyx_n_s__tdt2tai, __pyx_k__tdt2tai, sizeof(__pyx_k__tdt2tai), 0, 0, 1, 1}, - {&__pyx_n_s__tdt2tdb, __pyx_k__tdt2tdb, sizeof(__pyx_k__tdt2tdb), 0, 0, 1, 1}, - {&__pyx_n_s__tdt2ut1, __pyx_k__tdt2ut1, sizeof(__pyx_k__tdt2ut1), 0, 0, 1, 1}, - {&__pyx_n_s__tdt2utc, __pyx_k__tdt2utc, sizeof(__pyx_k__tdt2utc), 0, 0, 1, 1}, - {&__pyx_n_s__theta, __pyx_k__theta, sizeof(__pyx_k__theta), 0, 0, 1, 1}, - {&__pyx_n_s__thetadot, __pyx_k__thetadot, sizeof(__pyx_k__thetadot), 0, 0, 1, 1}, - {&__pyx_n_s__tpm, __pyx_k__tpm, sizeof(__pyx_k__tpm), 0, 0, 1, 1}, - {&__pyx_n_s__tpm_data, __pyx_k__tpm_data, sizeof(__pyx_k__tpm_data), 0, 0, 1, 1}, - {&__pyx_n_s__tpm_state, __pyx_k__tpm_state, sizeof(__pyx_k__tpm_state), 0, 0, 1, 1}, - {&__pyx_n_s__tstate, __pyx_k__tstate, sizeof(__pyx_k__tstate), 0, 0, 1, 1}, - {&__pyx_n_s__type, __pyx_k__type, sizeof(__pyx_k__type), 0, 0, 1, 1}, - {&__pyx_n_s__ut1, __pyx_k__ut1, sizeof(__pyx_k__ut1), 0, 0, 1, 1}, - {&__pyx_n_s__ut12et, __pyx_k__ut12et, sizeof(__pyx_k__ut12et), 0, 0, 1, 1}, - {&__pyx_n_s__ut12gmst, __pyx_k__ut12gmst, sizeof(__pyx_k__ut12gmst), 0, 0, 1, 1}, - {&__pyx_n_s__ut12tai, __pyx_k__ut12tai, sizeof(__pyx_k__ut12tai), 0, 0, 1, 1}, - {&__pyx_n_s__ut12tdb, __pyx_k__ut12tdb, sizeof(__pyx_k__ut12tdb), 0, 0, 1, 1}, - {&__pyx_n_s__ut12tdt, __pyx_k__ut12tdt, sizeof(__pyx_k__ut12tdt), 0, 0, 1, 1}, - {&__pyx_n_s__ut12utc, __pyx_k__ut12utc, sizeof(__pyx_k__ut12utc), 0, 0, 1, 1}, - {&__pyx_n_s__ut2et, __pyx_k__ut2et, sizeof(__pyx_k__ut2et), 0, 0, 1, 1}, - {&__pyx_n_s__ut2gmst, __pyx_k__ut2gmst, sizeof(__pyx_k__ut2gmst), 0, 0, 1, 1}, - {&__pyx_n_s__utc, __pyx_k__utc, sizeof(__pyx_k__utc), 0, 0, 1, 1}, - {&__pyx_n_s__utc2et, __pyx_k__utc2et, sizeof(__pyx_k__utc2et), 0, 0, 1, 1}, - {&__pyx_n_s__utc2tdb, __pyx_k__utc2tdb, sizeof(__pyx_k__utc2tdb), 0, 0, 1, 1}, - {&__pyx_n_s__utc2tdt, __pyx_k__utc2tdt, sizeof(__pyx_k__utc2tdt), 0, 0, 1, 1}, - {&__pyx_n_s__utc2ut1, __pyx_k__utc2ut1, sizeof(__pyx_k__utc2ut1), 0, 0, 1, 1}, - {&__pyx_n_s__utc_now, __pyx_k__utc_now, sizeof(__pyx_k__utc_now), 0, 0, 1, 1}, - {&__pyx_n_s__v, __pyx_k__v, sizeof(__pyx_k__v), 0, 0, 1, 1}, - {&__pyx_n_s__v6, __pyx_k__v6, sizeof(__pyx_k__v6), 0, 0, 1, 1}, - {&__pyx_n_s__v62cat, __pyx_k__v62cat, sizeof(__pyx_k__v62cat), 0, 0, 1, 1}, - {&__pyx_n_s__valid_keys, __pyx_k__valid_keys, sizeof(__pyx_k__valid_keys), 0, 0, 1, 1}, - {&__pyx_n_s__vp, __pyx_k__vp, sizeof(__pyx_k__vp), 0, 0, 1, 1}, - {&__pyx_n_s__vtype, __pyx_k__vtype, sizeof(__pyx_k__vtype), 0, 0, 1, 1}, - {&__pyx_n_s__vv, __pyx_k__vv, sizeof(__pyx_k__vv), 0, 0, 1, 1}, - {&__pyx_n_s__wavelength, __pyx_k__wavelength, sizeof(__pyx_k__wavelength), 0, 0, 1, 1}, - {&__pyx_n_s__x, __pyx_k__x, sizeof(__pyx_k__x), 0, 0, 1, 1}, - {&__pyx_n_s__xdot, __pyx_k__xdot, sizeof(__pyx_k__xdot), 0, 0, 1, 1}, - {&__pyx_n_s__xpole, __pyx_k__xpole, sizeof(__pyx_k__xpole), 0, 0, 1, 1}, - {&__pyx_n_s__xx, __pyx_k__xx, sizeof(__pyx_k__xx), 0, 0, 1, 1}, - {&__pyx_n_s__xy, __pyx_k__xy, sizeof(__pyx_k__xy), 0, 0, 1, 1}, - {&__pyx_n_s__xz, __pyx_k__xz, sizeof(__pyx_k__xz), 0, 0, 1, 1}, - {&__pyx_n_s__y, __pyx_k__y, sizeof(__pyx_k__y), 0, 0, 1, 1}, - {&__pyx_n_s__y2doy, __pyx_k__y2doy, sizeof(__pyx_k__y2doy), 0, 0, 1, 1}, - {&__pyx_n_s__y2j, __pyx_k__y2j, sizeof(__pyx_k__y2j), 0, 0, 1, 1}, - {&__pyx_n_s__ydd, __pyx_k__ydd, sizeof(__pyx_k__ydd), 0, 0, 1, 1}, - {&__pyx_n_s__ydot, __pyx_k__ydot, sizeof(__pyx_k__ydot), 0, 0, 1, 1}, - {&__pyx_n_s__year, __pyx_k__year, sizeof(__pyx_k__year), 0, 0, 1, 1}, - {&__pyx_n_s__ypole, __pyx_k__ypole, sizeof(__pyx_k__ypole), 0, 0, 1, 1}, - {&__pyx_n_s__yx, __pyx_k__yx, sizeof(__pyx_k__yx), 0, 0, 1, 1}, - {&__pyx_n_s__yy, __pyx_k__yy, sizeof(__pyx_k__yy), 0, 0, 1, 1}, - {&__pyx_n_s__yz, __pyx_k__yz, sizeof(__pyx_k__yz), 0, 0, 1, 1}, - {&__pyx_n_s__z, __pyx_k__z, sizeof(__pyx_k__z), 0, 0, 1, 1}, - {&__pyx_n_s__zdot, __pyx_k__zdot, sizeof(__pyx_k__zdot), 0, 0, 1, 1}, - {&__pyx_n_s__zee, __pyx_k__zee, sizeof(__pyx_k__zee), 0, 0, 1, 1}, - {&__pyx_n_s__zeedot, __pyx_k__zeedot, sizeof(__pyx_k__zeedot), 0, 0, 1, 1}, - {&__pyx_n_s__zeta, __pyx_k__zeta, sizeof(__pyx_k__zeta), 0, 0, 1, 1}, - {&__pyx_n_s__zetadot, __pyx_k__zetadot, sizeof(__pyx_k__zetadot), 0, 0, 1, 1}, - {&__pyx_n_s__zx, __pyx_k__zx, sizeof(__pyx_k__zx), 0, 0, 1, 1}, - {&__pyx_n_s__zy, __pyx_k__zy, sizeof(__pyx_k__zy), 0, 0, 1, 1}, - {&__pyx_n_s__zz, __pyx_k__zz, sizeof(__pyx_k__zz), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_property = __Pyx_GetName(__pyx_b, __pyx_n_s__property); if (!__pyx_builtin_property) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_TypeError = __Pyx_GetName(__pyx_b, __pyx_n_s__TypeError); if (!__pyx_builtin_TypeError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_ValueError = __Pyx_GetName(__pyx_b, __pyx_n_s__ValueError); if (!__pyx_builtin_ValueError) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_range = __Pyx_GetName(__pyx_b, __pyx_n_s__range); if (!__pyx_builtin_range) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_IndexError = __Pyx_GetName(__pyx_b, __pyx_n_s__IndexError); if (!__pyx_builtin_IndexError) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} + /* "src/tpm_astro.pxi":1623 + * + * + * def thetadot(start, end, pflag): # <<<<<<<<<<<<<< + * """Rate of change of FK4 and FK5 precession angles. + * + */ + __pyx_tuple__252 = PyTuple_Pack(3, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag); if (unlikely(!__pyx_tuple__252)) __PYX_ERR(2, 1623, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__252); + __Pyx_GIVEREF(__pyx_tuple__252); + __pyx_codeobj__253 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__252, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_thetadot, 1623, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__253)) __PYX_ERR(2, 1623, __pyx_L1_error) -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); + /* "src/tpm_astro.pxi":1657 + * + * + * def zee(start, end, pflag): # <<<<<<<<<<<<<< + * """FK4 and FK5 precession angles. + * + */ + __pyx_tuple__254 = PyTuple_Pack(3, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag); if (unlikely(!__pyx_tuple__254)) __PYX_ERR(2, 1657, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__254); + __Pyx_GIVEREF(__pyx_tuple__254); + __pyx_codeobj__255 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__254, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_zee, 1657, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__255)) __PYX_ERR(2, 1657, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":65 + /* "src/tpm_astro.pxi":1690 + * + * + * def zeedot(start, end, pflag): # <<<<<<<<<<<<<< + * """Rate of change of FK4 and FK5 precession angles. * - * """ - * valid_keys = ('r', 'h', 'dd', 'mm', 'ss') # <<<<<<<<<<<<<< - * cdef tpm_times.DMS _dms - * def __cinit__(self): */ - __pyx_k_tuple_83 = PyTuple_New(5); if (unlikely(!__pyx_k_tuple_83)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_83)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_k_tuple_83, 0, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__h)); - PyTuple_SET_ITEM(__pyx_k_tuple_83, 1, ((PyObject *)__pyx_n_s__h)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__h)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__dd)); - PyTuple_SET_ITEM(__pyx_k_tuple_83, 2, ((PyObject *)__pyx_n_s__dd)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__dd)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__mm)); - PyTuple_SET_ITEM(__pyx_k_tuple_83, 3, ((PyObject *)__pyx_n_s__mm)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__mm)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__ss)); - PyTuple_SET_ITEM(__pyx_k_tuple_83, 4, ((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_83)); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":270 + __pyx_tuple__256 = PyTuple_Pack(3, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag); if (unlikely(!__pyx_tuple__256)) __PYX_ERR(2, 1690, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__256); + __Pyx_GIVEREF(__pyx_tuple__256); + __pyx_codeobj__257 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__256, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_zeedot, 1690, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__257)) __PYX_ERR(2, 1690, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1723 + * + * + * def zeta(start, end, pflag): # <<<<<<<<<<<<<< + * """FK4 and FK5 precession angles. * - * """ - * valid_keys = ('r', 'dd', 'hh', 'mm', 'ss') # <<<<<<<<<<<<<< - * cdef tpm_times.HMS _hms - * def __cinit__(self): */ - __pyx_k_tuple_87 = PyTuple_New(5); if (unlikely(!__pyx_k_tuple_87)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_87)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_k_tuple_87, 0, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__dd)); - PyTuple_SET_ITEM(__pyx_k_tuple_87, 1, ((PyObject *)__pyx_n_s__dd)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__dd)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__hh)); - PyTuple_SET_ITEM(__pyx_k_tuple_87, 2, ((PyObject *)__pyx_n_s__hh)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__hh)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__mm)); - PyTuple_SET_ITEM(__pyx_k_tuple_87, 3, ((PyObject *)__pyx_n_s__mm)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__mm)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__ss)); - PyTuple_SET_ITEM(__pyx_k_tuple_87, 4, ((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_87)); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":484 + __pyx_tuple__258 = PyTuple_Pack(3, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag); if (unlikely(!__pyx_tuple__258)) __PYX_ERR(2, 1723, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__258); + __Pyx_GIVEREF(__pyx_tuple__258); + __pyx_codeobj__259 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__258, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_zeta, 1723, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__259)) __PYX_ERR(2, 1723, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1756 + * + * + * def zetadot(start, end, pflag): # <<<<<<<<<<<<<< + * """Rate of change of FK4 and FK5 precession angles. + * + */ + __pyx_tuple__260 = PyTuple_Pack(3, __pyx_n_s_start, __pyx_n_s_end, __pyx_n_s_pflag); if (unlikely(!__pyx_tuple__260)) __PYX_ERR(2, 1756, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__260); + __Pyx_GIVEREF(__pyx_tuple__260); + __pyx_codeobj__261 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__260, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_zetadot, 1756, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__261)) __PYX_ERR(2, 1756, __pyx_L1_error) + + /* "src/tpm_astro.pxi":1790 + * + * + * def nutations(tdt): # <<<<<<<<<<<<<< + * """Nutations in longitude and obliquity. * - * """ - * valid_keys = ('j','year','ydd','y','m','dd','hh','mm','ss') # <<<<<<<<<<<<<< - * cdef tpm_times.YMD _ymd - * def __cinit__(self): */ - __pyx_k_tuple_91 = PyTuple_New(9); if (unlikely(!__pyx_k_tuple_91)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_91)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__j)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 0, ((PyObject *)__pyx_n_s__j)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__j)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__year)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 1, ((PyObject *)__pyx_n_s__year)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__year)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__ydd)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 2, ((PyObject *)__pyx_n_s__ydd)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__ydd)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__y)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 3, ((PyObject *)__pyx_n_s__y)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__y)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__m)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 4, ((PyObject *)__pyx_n_s__m)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__m)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__dd)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 5, ((PyObject *)__pyx_n_s__dd)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__dd)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__hh)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 6, ((PyObject *)__pyx_n_s__hh)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__hh)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__mm)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 7, ((PyObject *)__pyx_n_s__mm)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__mm)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__ss)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 8, ((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_91)); - - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":756 + __pyx_tuple__262 = PyTuple_Pack(3, __pyx_n_s_tdt, __pyx_n_s_delta_phi, __pyx_n_s_delta_eps); if (unlikely(!__pyx_tuple__262)) __PYX_ERR(2, 1790, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__262); + __Pyx_GIVEREF(__pyx_tuple__262); + __pyx_codeobj__263 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__262, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_astro_pxi, __pyx_n_s_nutations, 1790, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__263)) __PYX_ERR(2, 1790, __pyx_L1_error) + + /* "tpm.pyx":13 + * + * # Some functions that use features in TPM. + * def nalpha(alpha, degrees=True): # <<<<<<<<<<<<<< + * """Normalize angle in the x-y plane, i.e., longitudinal angle. + * + */ + __pyx_tuple__264 = PyTuple_Pack(3, __pyx_n_s_alpha, __pyx_n_s_degrees, __pyx_n_s_x); if (unlikely(!__pyx_tuple__264)) __PYX_ERR(5, 13, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__264); + __Pyx_GIVEREF(__pyx_tuple__264); + __pyx_codeobj__265 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__264, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_pyx, __pyx_n_s_nalpha, 13, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__265)) __PYX_ERR(5, 13, __pyx_L1_error) + + /* "tpm.pyx":53 + * return tpm_times.r2r(alpha) + * + * def ndelta(delta, degrees=True): # <<<<<<<<<<<<<< + * """Normalize angle out of the x-y plane, i.e., latitudinal angle. * - * """ - * valid_keys = ('j', 'year', 'dd', 'hh', 'mm', 'ss') # <<<<<<<<<<<<<< - * cdef tpm_times.JD _jd - * def __cinit__(self): */ - __pyx_k_tuple_98 = PyTuple_New(6); if (unlikely(!__pyx_k_tuple_98)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 756; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_98)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__j)); - PyTuple_SET_ITEM(__pyx_k_tuple_98, 0, ((PyObject *)__pyx_n_s__j)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__j)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__year)); - PyTuple_SET_ITEM(__pyx_k_tuple_98, 1, ((PyObject *)__pyx_n_s__year)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__year)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__dd)); - PyTuple_SET_ITEM(__pyx_k_tuple_98, 2, ((PyObject *)__pyx_n_s__dd)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__dd)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__hh)); - PyTuple_SET_ITEM(__pyx_k_tuple_98, 3, ((PyObject *)__pyx_n_s__hh)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__hh)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__mm)); - PyTuple_SET_ITEM(__pyx_k_tuple_98, 4, ((PyObject *)__pyx_n_s__mm)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__mm)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__ss)); - PyTuple_SET_ITEM(__pyx_k_tuple_98, 5, ((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__ss)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_98)); + __pyx_tuple__266 = PyTuple_Pack(3, __pyx_n_s_delta, __pyx_n_s_degrees, __pyx_n_s_v3); if (unlikely(!__pyx_tuple__266)) __PYX_ERR(5, 53, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__266); + __Pyx_GIVEREF(__pyx_tuple__266); + __pyx_codeobj__267 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__266, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_src_tpm_pyx, __pyx_n_s_ndelta, 53, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__267)) __PYX_ERR(5, 53, __pyx_L1_error) __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -30868,5907 +44657,6732 @@ static int __Pyx_InitCachedConstants(void) { return -1; } -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_2000 = PyInt_FromLong(2000); if (unlikely(!__pyx_int_2000)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; +static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { + __pyx_umethod_PyDict_Type_get.type = (PyObject*)&PyDict_Type; + if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(5, 1, __pyx_L1_error); + __pyx_float_0_0 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_float_0_0)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_1_0 = PyFloat_FromDouble(1.0); if (unlikely(!__pyx_float_1_0)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_1eneg_8 = PyFloat_FromDouble(1e-8); if (unlikely(!__pyx_float_1eneg_8)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_0_550 = PyFloat_FromDouble(0.550); if (unlikely(!__pyx_float_0_550)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_273_15 = PyFloat_FromDouble(273.15); if (unlikely(!__pyx_float_273_15)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_1013_25 = PyFloat_FromDouble(1013.25); if (unlikely(!__pyx_float_1013_25)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_36525_0 = PyFloat_FromDouble(36525.0); if (unlikely(!__pyx_float_36525_0)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_2093_093 = PyFloat_FromDouble(2093.093); if (unlikely(!__pyx_float_2093_093)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_float_0_557744205098 = PyFloat_FromDouble(0.557744205098); if (unlikely(!__pyx_float_0_557744205098)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_int_2000 = PyInt_FromLong(2000); if (unlikely(!__pyx_int_2000)) __PYX_ERR(5, 1, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; } -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC inittpm(void); /*proto*/ -PyMODINIT_FUNC inittpm(void) -#else -PyMODINIT_FUNC PyInit_tpm(void); /*proto*/ -PyMODINIT_FUNC PyInit_tpm(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - #if CYTHON_REFNANNY - void* __pyx_refnanny = NULL; - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - __pyx_refnanny = __Pyx_RefNanny->SetupContext("PyMODINIT_FUNC PyInit_tpm(void)", __LINE__, __FILE__); +static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ +static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ + +static int __Pyx_modinit_global_init_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); + /*--- Global init code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_variable_export_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); + /*--- Variable export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_export_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); + /*--- Function export code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_type_init_code(void) { + __Pyx_RefNannyDeclarations + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); + /*--- Type init code ---*/ + if (PyType_Ready(&__pyx_type_3tpm_DMS) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_DMS.tp_print = 0; #endif - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_DMS.tp_dictoffset && __pyx_type_3tpm_DMS.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_DMS.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_DMS, (PyObject *)&__pyx_type_3tpm_DMS) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_DMS) < 0) __PYX_ERR(0, 20, __pyx_L1_error) + __pyx_ptype_3tpm_DMS = &__pyx_type_3tpm_DMS; + if (PyType_Ready(&__pyx_type_3tpm_HMS) < 0) __PYX_ERR(0, 238, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_HMS.tp_print = 0; #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_HMS.tp_dictoffset && __pyx_type_3tpm_HMS.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_HMS.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_HMS, (PyObject *)&__pyx_type_3tpm_HMS) < 0) __PYX_ERR(0, 238, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_HMS) < 0) __PYX_ERR(0, 238, __pyx_L1_error) + __pyx_ptype_3tpm_HMS = &__pyx_type_3tpm_HMS; + if (PyType_Ready(&__pyx_type_3tpm_YMD) < 0) __PYX_ERR(0, 436, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_YMD.tp_print = 0; #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_YMD.tp_dictoffset && __pyx_type_3tpm_YMD.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_YMD.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_YMD, (PyObject *)&__pyx_type_3tpm_YMD) < 0) __PYX_ERR(0, 436, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_YMD) < 0) __PYX_ERR(0, 436, __pyx_L1_error) + __pyx_ptype_3tpm_YMD = &__pyx_type_3tpm_YMD; + if (PyType_Ready(&__pyx_type_3tpm_JD) < 0) __PYX_ERR(0, 718, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_JD.tp_print = 0; #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("tpm"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_JD.tp_dictoffset && __pyx_type_3tpm_JD.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_JD.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_JD, (PyObject *)&__pyx_type_3tpm_JD) < 0) __PYX_ERR(0, 718, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_JD) < 0) __PYX_ERR(0, 718, __pyx_L1_error) + __pyx_ptype_3tpm_JD = &__pyx_type_3tpm_JD; + __pyx_vtabptr_3tpm_V3 = &__pyx_vtable_3tpm_V3; + __pyx_vtable_3tpm_V3.getType = (int (*)(struct __pyx_obj_3tpm_V3 *))__pyx_f_3tpm_2V3_getType; + __pyx_vtable_3tpm_V3.setType = (PyObject *(*)(struct __pyx_obj_3tpm_V3 *, int))__pyx_f_3tpm_2V3_setType; + __pyx_vtable_3tpm_V3.setX = (PyObject *(*)(struct __pyx_obj_3tpm_V3 *, double))__pyx_f_3tpm_2V3_setX; + __pyx_vtable_3tpm_V3.setY = (PyObject *(*)(struct __pyx_obj_3tpm_V3 *, double))__pyx_f_3tpm_2V3_setY; + __pyx_vtable_3tpm_V3.setZ = (PyObject *(*)(struct __pyx_obj_3tpm_V3 *, double))__pyx_f_3tpm_2V3_setZ; + __pyx_vtable_3tpm_V3.getX = (double (*)(struct __pyx_obj_3tpm_V3 *))__pyx_f_3tpm_2V3_getX; + __pyx_vtable_3tpm_V3.getY = (double (*)(struct __pyx_obj_3tpm_V3 *))__pyx_f_3tpm_2V3_getY; + __pyx_vtable_3tpm_V3.getZ = (double (*)(struct __pyx_obj_3tpm_V3 *))__pyx_f_3tpm_2V3_getZ; + __pyx_vtable_3tpm_V3.getV3 = (V3 (*)(struct __pyx_obj_3tpm_V3 *))__pyx_f_3tpm_2V3_getV3; + __pyx_vtable_3tpm_V3.setV3 = (PyObject *(*)(struct __pyx_obj_3tpm_V3 *, V3))__pyx_f_3tpm_2V3_setV3; + if (PyType_Ready(&__pyx_type_3tpm_V3) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_V3.tp_print = 0; #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_V3.tp_dictoffset && __pyx_type_3tpm_V3.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_V3.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (__Pyx_SetVtable(__pyx_type_3tpm_V3.tp_dict, __pyx_vtabptr_3tpm_V3) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_V3, (PyObject *)&__pyx_type_3tpm_V3) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_V3) < 0) __PYX_ERR(1, 11, __pyx_L1_error) + __pyx_ptype_3tpm_V3 = &__pyx_type_3tpm_V3; + __pyx_vtabptr_3tpm_V3CP = &__pyx_vtable_3tpm_V3CP; + __pyx_vtable_3tpm_V3CP.__pyx_base = *__pyx_vtabptr_3tpm_V3; + __pyx_type_3tpm_V3CP.tp_base = __pyx_ptype_3tpm_V3; + if (PyType_Ready(&__pyx_type_3tpm_V3CP) < 0) __PYX_ERR(1, 58, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_V3CP.tp_print = 0; #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_pytpm__tpm) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_V3CP.tp_dictoffset && __pyx_type_3tpm_V3CP.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_V3CP.tp_getattro = __Pyx_PyObject_GenericGetAttr; } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_DMS) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "DMS", (PyObject *)&__pyx_type_5pytpm_3tpm_DMS) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_DMS = &__pyx_type_5pytpm_3tpm_DMS; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_HMS) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "HMS", (PyObject *)&__pyx_type_5pytpm_3tpm_HMS) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_HMS = &__pyx_type_5pytpm_3tpm_HMS; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_YMD) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 436; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "YMD", (PyObject *)&__pyx_type_5pytpm_3tpm_YMD) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 436; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_YMD = &__pyx_type_5pytpm_3tpm_YMD; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_JD) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 718; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "JD", (PyObject *)&__pyx_type_5pytpm_3tpm_JD) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 718; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_JD = &__pyx_type_5pytpm_3tpm_JD; - __pyx_vtabptr_5pytpm_3tpm_V3 = &__pyx_vtable_5pytpm_3tpm_V3; - __pyx_vtable_5pytpm_3tpm_V3.getType = (int (*)(struct __pyx_obj_5pytpm_3tpm_V3 *))__pyx_f_5pytpm_3tpm_2V3_getType; - __pyx_vtable_5pytpm_3tpm_V3.setType = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V3 *, int))__pyx_f_5pytpm_3tpm_2V3_setType; - __pyx_vtable_5pytpm_3tpm_V3.setX = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V3 *, double))__pyx_f_5pytpm_3tpm_2V3_setX; - __pyx_vtable_5pytpm_3tpm_V3.setY = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V3 *, double))__pyx_f_5pytpm_3tpm_2V3_setY; - __pyx_vtable_5pytpm_3tpm_V3.setZ = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V3 *, double))__pyx_f_5pytpm_3tpm_2V3_setZ; - __pyx_vtable_5pytpm_3tpm_V3.getX = (double (*)(struct __pyx_obj_5pytpm_3tpm_V3 *))__pyx_f_5pytpm_3tpm_2V3_getX; - __pyx_vtable_5pytpm_3tpm_V3.getY = (double (*)(struct __pyx_obj_5pytpm_3tpm_V3 *))__pyx_f_5pytpm_3tpm_2V3_getY; - __pyx_vtable_5pytpm_3tpm_V3.getZ = (double (*)(struct __pyx_obj_5pytpm_3tpm_V3 *))__pyx_f_5pytpm_3tpm_2V3_getZ; - __pyx_vtable_5pytpm_3tpm_V3.getV3 = (V3 (*)(struct __pyx_obj_5pytpm_3tpm_V3 *))__pyx_f_5pytpm_3tpm_2V3_getV3; - __pyx_vtable_5pytpm_3tpm_V3.setV3 = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V3 *, V3))__pyx_f_5pytpm_3tpm_2V3_setV3; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_V3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_V3.tp_dict, __pyx_vtabptr_5pytpm_3tpm_V3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "V3", (PyObject *)&__pyx_type_5pytpm_3tpm_V3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_V3 = &__pyx_type_5pytpm_3tpm_V3; - __pyx_vtabptr_5pytpm_3tpm_V3CP = &__pyx_vtable_5pytpm_3tpm_V3CP; - __pyx_vtable_5pytpm_3tpm_V3CP.__pyx_base = *__pyx_vtabptr_5pytpm_3tpm_V3; - __pyx_type_5pytpm_3tpm_V3CP.tp_base = __pyx_ptype_5pytpm_3tpm_V3; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_V3CP) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3CP, "__sub__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3CP, "__sub__"); if (unlikely(!wrapper)) __PYX_ERR(1, 58, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_12__sub__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_12__sub__.doc = __pyx_doc_5pytpm_3tpm_4V3CP_12__sub__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3CP_12__sub__; + __pyx_wrapperbase_3tpm_4V3CP_24__sub__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3CP_24__sub__.doc = __pyx_doc_3tpm_4V3CP_24__sub__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3CP_24__sub__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3CP, "__add__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3CP, "__add__"); if (unlikely(!wrapper)) __PYX_ERR(1, 58, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_13__add__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_13__add__.doc = __pyx_doc_5pytpm_3tpm_4V3CP_13__add__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3CP_13__add__; + __pyx_wrapperbase_3tpm_4V3CP_26__add__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3CP_26__add__.doc = __pyx_doc_3tpm_4V3CP_26__add__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3CP_26__add__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3CP, "__mul__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3CP, "__mul__"); if (unlikely(!wrapper)) __PYX_ERR(1, 58, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_14__mul__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_14__mul__.doc = __pyx_doc_5pytpm_3tpm_4V3CP_14__mul__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3CP_14__mul__; + __pyx_wrapperbase_3tpm_4V3CP_28__mul__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3CP_28__mul__.doc = __pyx_doc_3tpm_4V3CP_28__mul__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3CP_28__mul__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3CP, "__str__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3CP, "__str__"); if (unlikely(!wrapper)) __PYX_ERR(1, 58, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_15__str__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3CP_15__str__.doc = __pyx_doc_5pytpm_3tpm_4V3CP_15__str__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3CP_15__str__; + __pyx_wrapperbase_3tpm_4V3CP_30__str__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3CP_30__str__.doc = __pyx_doc_3tpm_4V3CP_30__str__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3CP_30__str__; } } - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_V3CP.tp_dict, __pyx_vtabptr_5pytpm_3tpm_V3CP) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "V3CP", (PyObject *)&__pyx_type_5pytpm_3tpm_V3CP) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_V3CP = &__pyx_type_5pytpm_3tpm_V3CP; - __pyx_vtabptr_5pytpm_3tpm_V3SP = &__pyx_vtable_5pytpm_3tpm_V3SP; - __pyx_vtable_5pytpm_3tpm_V3SP.__pyx_base = *__pyx_vtabptr_5pytpm_3tpm_V3; - __pyx_type_5pytpm_3tpm_V3SP.tp_base = __pyx_ptype_5pytpm_3tpm_V3; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_V3SP) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if (__Pyx_SetVtable(__pyx_type_3tpm_V3CP.tp_dict, __pyx_vtabptr_3tpm_V3CP) < 0) __PYX_ERR(1, 58, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_V3CP, (PyObject *)&__pyx_type_3tpm_V3CP) < 0) __PYX_ERR(1, 58, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_V3CP) < 0) __PYX_ERR(1, 58, __pyx_L1_error) + __pyx_ptype_3tpm_V3CP = &__pyx_type_3tpm_V3CP; + __pyx_vtabptr_3tpm_V3SP = &__pyx_vtable_3tpm_V3SP; + __pyx_vtable_3tpm_V3SP.__pyx_base = *__pyx_vtabptr_3tpm_V3; + __pyx_type_3tpm_V3SP.tp_base = __pyx_ptype_3tpm_V3; + if (PyType_Ready(&__pyx_type_3tpm_V3SP) < 0) __PYX_ERR(1, 204, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_V3SP.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_V3SP.tp_dictoffset && __pyx_type_3tpm_V3SP.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_V3SP.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3SP, "__sub__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3SP, "__sub__"); if (unlikely(!wrapper)) __PYX_ERR(1, 204, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3SP_13__sub__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3SP_13__sub__.doc = __pyx_doc_5pytpm_3tpm_4V3SP_13__sub__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3SP_13__sub__; + __pyx_wrapperbase_3tpm_4V3SP_26__sub__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3SP_26__sub__.doc = __pyx_doc_3tpm_4V3SP_26__sub__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3SP_26__sub__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3SP, "__add__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3SP, "__add__"); if (unlikely(!wrapper)) __PYX_ERR(1, 204, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3SP_14__add__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3SP_14__add__.doc = __pyx_doc_5pytpm_3tpm_4V3SP_14__add__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3SP_14__add__; + __pyx_wrapperbase_3tpm_4V3SP_28__add__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3SP_28__add__.doc = __pyx_doc_3tpm_4V3SP_28__add__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3SP_28__add__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V3SP, "__mul__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V3SP, "__mul__"); if (unlikely(!wrapper)) __PYX_ERR(1, 204, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4V3SP_15__mul__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4V3SP_15__mul__.doc = __pyx_doc_5pytpm_3tpm_4V3SP_15__mul__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4V3SP_15__mul__; + __pyx_wrapperbase_3tpm_4V3SP_30__mul__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4V3SP_30__mul__.doc = __pyx_doc_3tpm_4V3SP_30__mul__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4V3SP_30__mul__; } } - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_V3SP.tp_dict, __pyx_vtabptr_5pytpm_3tpm_V3SP) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "V3SP", (PyObject *)&__pyx_type_5pytpm_3tpm_V3SP) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_V3SP = &__pyx_type_5pytpm_3tpm_V3SP; - __pyx_vtabptr_5pytpm_3tpm_V6 = &__pyx_vtable_5pytpm_3tpm_V6; - __pyx_vtable_5pytpm_3tpm_V6.getType = (int (*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getType; - __pyx_vtable_5pytpm_3tpm_V6.setType = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, int))__pyx_f_5pytpm_3tpm_2V6_setType; - __pyx_vtable_5pytpm_3tpm_V6.getX = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getX; - __pyx_vtable_5pytpm_3tpm_V6.setX = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, double))__pyx_f_5pytpm_3tpm_2V6_setX; - __pyx_vtable_5pytpm_3tpm_V6.getY = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getY; - __pyx_vtable_5pytpm_3tpm_V6.setY = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, double))__pyx_f_5pytpm_3tpm_2V6_setY; - __pyx_vtable_5pytpm_3tpm_V6.getZ = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getZ; - __pyx_vtable_5pytpm_3tpm_V6.setZ = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, double))__pyx_f_5pytpm_3tpm_2V6_setZ; - __pyx_vtable_5pytpm_3tpm_V6.getXdot = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getXdot; - __pyx_vtable_5pytpm_3tpm_V6.setXdot = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, double))__pyx_f_5pytpm_3tpm_2V6_setXdot; - __pyx_vtable_5pytpm_3tpm_V6.getYdot = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getYdot; - __pyx_vtable_5pytpm_3tpm_V6.setYdot = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, double))__pyx_f_5pytpm_3tpm_2V6_setYdot; - __pyx_vtable_5pytpm_3tpm_V6.getZdot = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getZdot; - __pyx_vtable_5pytpm_3tpm_V6.setZdot = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, double))__pyx_f_5pytpm_3tpm_2V6_setZdot; - __pyx_vtable_5pytpm_3tpm_V6.getV6 = (V6 (*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getV6; - __pyx_vtable_5pytpm_3tpm_V6.setV6 = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, V6))__pyx_f_5pytpm_3tpm_2V6_setV6; - __pyx_vtable_5pytpm_3tpm_V6.getPOS = (V3 (*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getPOS; - __pyx_vtable_5pytpm_3tpm_V6.setPOS = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, V3))__pyx_f_5pytpm_3tpm_2V6_setPOS; - __pyx_vtable_5pytpm_3tpm_V6.getVEL = (V3 (*)(struct __pyx_obj_5pytpm_3tpm_V6 *))__pyx_f_5pytpm_3tpm_2V6_getVEL; - __pyx_vtable_5pytpm_3tpm_V6.setVEL = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_V6 *, V3))__pyx_f_5pytpm_3tpm_2V6_setVEL; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_V6) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_V6.tp_dict, __pyx_vtabptr_5pytpm_3tpm_V6) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "V6", (PyObject *)&__pyx_type_5pytpm_3tpm_V6) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_V6 = &__pyx_type_5pytpm_3tpm_V6; - __pyx_vtabptr_5pytpm_3tpm_V6C = &__pyx_vtable_5pytpm_3tpm_V6C; - __pyx_vtable_5pytpm_3tpm_V6C.__pyx_base = *__pyx_vtabptr_5pytpm_3tpm_V6; - __pyx_type_5pytpm_3tpm_V6C.tp_base = __pyx_ptype_5pytpm_3tpm_V6; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_V6C) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if (__Pyx_SetVtable(__pyx_type_3tpm_V3SP.tp_dict, __pyx_vtabptr_3tpm_V3SP) < 0) __PYX_ERR(1, 204, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_V3SP, (PyObject *)&__pyx_type_3tpm_V3SP) < 0) __PYX_ERR(1, 204, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_V3SP) < 0) __PYX_ERR(1, 204, __pyx_L1_error) + __pyx_ptype_3tpm_V3SP = &__pyx_type_3tpm_V3SP; + __pyx_vtabptr_3tpm_V6 = &__pyx_vtable_3tpm_V6; + __pyx_vtable_3tpm_V6.getType = (int (*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getType; + __pyx_vtable_3tpm_V6.setType = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, int))__pyx_f_3tpm_2V6_setType; + __pyx_vtable_3tpm_V6.getX = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getX; + __pyx_vtable_3tpm_V6.setX = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, double))__pyx_f_3tpm_2V6_setX; + __pyx_vtable_3tpm_V6.getY = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getY; + __pyx_vtable_3tpm_V6.setY = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, double))__pyx_f_3tpm_2V6_setY; + __pyx_vtable_3tpm_V6.getZ = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getZ; + __pyx_vtable_3tpm_V6.setZ = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, double))__pyx_f_3tpm_2V6_setZ; + __pyx_vtable_3tpm_V6.getXdot = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getXdot; + __pyx_vtable_3tpm_V6.setXdot = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, double))__pyx_f_3tpm_2V6_setXdot; + __pyx_vtable_3tpm_V6.getYdot = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getYdot; + __pyx_vtable_3tpm_V6.setYdot = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, double))__pyx_f_3tpm_2V6_setYdot; + __pyx_vtable_3tpm_V6.getZdot = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getZdot; + __pyx_vtable_3tpm_V6.setZdot = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, double))__pyx_f_3tpm_2V6_setZdot; + __pyx_vtable_3tpm_V6.getV6 = (V6 (*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getV6; + __pyx_vtable_3tpm_V6.setV6 = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, V6))__pyx_f_3tpm_2V6_setV6; + __pyx_vtable_3tpm_V6.getPOS = (V3 (*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getPOS; + __pyx_vtable_3tpm_V6.setPOS = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, V3))__pyx_f_3tpm_2V6_setPOS; + __pyx_vtable_3tpm_V6.getVEL = (V3 (*)(struct __pyx_obj_3tpm_V6 *))__pyx_f_3tpm_2V6_getVEL; + __pyx_vtable_3tpm_V6.setVEL = (PyObject *(*)(struct __pyx_obj_3tpm_V6 *, V3))__pyx_f_3tpm_2V6_setVEL; + if (PyType_Ready(&__pyx_type_3tpm_V6) < 0) __PYX_ERR(1, 366, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_V6.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_V6.tp_dictoffset && __pyx_type_3tpm_V6.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_V6.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (__Pyx_SetVtable(__pyx_type_3tpm_V6.tp_dict, __pyx_vtabptr_3tpm_V6) < 0) __PYX_ERR(1, 366, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_V6, (PyObject *)&__pyx_type_3tpm_V6) < 0) __PYX_ERR(1, 366, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_V6) < 0) __PYX_ERR(1, 366, __pyx_L1_error) + __pyx_ptype_3tpm_V6 = &__pyx_type_3tpm_V6; + __pyx_vtabptr_3tpm_V6C = &__pyx_vtable_3tpm_V6C; + __pyx_vtable_3tpm_V6C.__pyx_base = *__pyx_vtabptr_3tpm_V6; + __pyx_type_3tpm_V6C.tp_base = __pyx_ptype_3tpm_V6; + if (PyType_Ready(&__pyx_type_3tpm_V6C) < 0) __PYX_ERR(1, 457, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_V6C.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_V6C.tp_dictoffset && __pyx_type_3tpm_V6C.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_V6C.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V6C, "__sub__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V6C, "__sub__"); if (unlikely(!wrapper)) __PYX_ERR(1, 457, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_3V6C_15__sub__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_3V6C_15__sub__.doc = __pyx_doc_5pytpm_3tpm_3V6C_15__sub__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_3V6C_15__sub__; + __pyx_wrapperbase_3tpm_3V6C_30__sub__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_3V6C_30__sub__.doc = __pyx_doc_3tpm_3V6C_30__sub__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_3V6C_30__sub__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_V6C, "__add__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_V6C, "__add__"); if (unlikely(!wrapper)) __PYX_ERR(1, 457, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_3V6C_16__add__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_3V6C_16__add__.doc = __pyx_doc_5pytpm_3tpm_3V6C_16__add__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_3V6C_16__add__; + __pyx_wrapperbase_3tpm_3V6C_32__add__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_3V6C_32__add__.doc = __pyx_doc_3tpm_3V6C_32__add__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_3V6C_32__add__; } } - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_V6C.tp_dict, __pyx_vtabptr_5pytpm_3tpm_V6C) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "V6C", (PyObject *)&__pyx_type_5pytpm_3tpm_V6C) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_V6C = &__pyx_type_5pytpm_3tpm_V6C; - __pyx_vtabptr_5pytpm_3tpm_V6S = &__pyx_vtable_5pytpm_3tpm_V6S; - __pyx_vtable_5pytpm_3tpm_V6S.__pyx_base = *__pyx_vtabptr_5pytpm_3tpm_V6; - __pyx_type_5pytpm_3tpm_V6S.tp_base = __pyx_ptype_5pytpm_3tpm_V6; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_V6S) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 679; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_V6S.tp_dict, __pyx_vtabptr_5pytpm_3tpm_V6S) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 679; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "V6S", (PyObject *)&__pyx_type_5pytpm_3tpm_V6S) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 679; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_V6S = &__pyx_type_5pytpm_3tpm_V6S; - __pyx_vtabptr_5pytpm_3tpm_M3 = &__pyx_vtable_5pytpm_3tpm_M3; - __pyx_vtable_5pytpm_3tpm_M3.getM3 = (M3 (*)(struct __pyx_obj_5pytpm_3tpm_M3 *))__pyx_f_5pytpm_3tpm_2M3_getM3; - __pyx_vtable_5pytpm_3tpm_M3.setM3 = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_M3 *, M3))__pyx_f_5pytpm_3tpm_2M3_setM3; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_M3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_M3.tp_dict, __pyx_vtabptr_5pytpm_3tpm_M3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "M3", (PyObject *)&__pyx_type_5pytpm_3tpm_M3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_M3 = &__pyx_type_5pytpm_3tpm_M3; - __pyx_vtabptr_5pytpm_3tpm_M6 = &__pyx_vtable_5pytpm_3tpm_M6; - __pyx_vtable_5pytpm_3tpm_M6.getM6 = (M6 (*)(struct __pyx_obj_5pytpm_3tpm_M6 *))__pyx_f_5pytpm_3tpm_2M6_getM6; - __pyx_vtable_5pytpm_3tpm_M6.setM6 = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_M6 *, M6))__pyx_f_5pytpm_3tpm_2M6_setM6; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_M6) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_M6.tp_dict, __pyx_vtabptr_5pytpm_3tpm_M6) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "M6", (PyObject *)&__pyx_type_5pytpm_3tpm_M6) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_M6 = &__pyx_type_5pytpm_3tpm_M6; - __pyx_vtabptr_5pytpm_3tpm_TSTATE = &__pyx_vtable_5pytpm_3tpm_TSTATE; - __pyx_vtable_5pytpm_3tpm_TSTATE.__get_tstate = (TPM_TSTATE (*)(struct __pyx_obj_5pytpm_3tpm_TSTATE *))__pyx_f_5pytpm_3tpm_6TSTATE___get_tstate; - __pyx_vtable_5pytpm_3tpm_TSTATE.__set_tstate = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_TSTATE *, TPM_TSTATE))__pyx_f_5pytpm_3tpm_6TSTATE___set_tstate; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_TSTATE) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_TSTATE.tp_dict, __pyx_vtabptr_5pytpm_3tpm_TSTATE) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "TSTATE", (PyObject *)&__pyx_type_5pytpm_3tpm_TSTATE) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_TSTATE = &__pyx_type_5pytpm_3tpm_TSTATE; - __pyx_vtabptr_5pytpm_3tpm_PVEC = &__pyx_vtable_5pytpm_3tpm_PVEC; - __pyx_vtable_5pytpm_3tpm_PVEC.__get_pvec = (__pyx_t_5pytpm_3tpm_S_PVEC (*)(struct __pyx_obj_5pytpm_3tpm_PVEC *))__pyx_f_5pytpm_3tpm_4PVEC___get_pvec; - __pyx_vtable_5pytpm_3tpm_PVEC.__set_pvec = (PyObject *(*)(struct __pyx_obj_5pytpm_3tpm_PVEC *, __pyx_t_5pytpm_3tpm_S_PVEC))__pyx_f_5pytpm_3tpm_4PVEC___set_pvec; - if (PyType_Ready(&__pyx_type_5pytpm_3tpm_PVEC) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + #endif + if (__Pyx_SetVtable(__pyx_type_3tpm_V6C.tp_dict, __pyx_vtabptr_3tpm_V6C) < 0) __PYX_ERR(1, 457, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_V6C, (PyObject *)&__pyx_type_3tpm_V6C) < 0) __PYX_ERR(1, 457, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_V6C) < 0) __PYX_ERR(1, 457, __pyx_L1_error) + __pyx_ptype_3tpm_V6C = &__pyx_type_3tpm_V6C; + __pyx_vtabptr_3tpm_V6S = &__pyx_vtable_3tpm_V6S; + __pyx_vtable_3tpm_V6S.__pyx_base = *__pyx_vtabptr_3tpm_V6; + __pyx_type_3tpm_V6S.tp_base = __pyx_ptype_3tpm_V6; + if (PyType_Ready(&__pyx_type_3tpm_V6S) < 0) __PYX_ERR(1, 679, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_V6S.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_V6S.tp_dictoffset && __pyx_type_3tpm_V6S.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_V6S.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (__Pyx_SetVtable(__pyx_type_3tpm_V6S.tp_dict, __pyx_vtabptr_3tpm_V6S) < 0) __PYX_ERR(1, 679, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_V6S, (PyObject *)&__pyx_type_3tpm_V6S) < 0) __PYX_ERR(1, 679, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_V6S) < 0) __PYX_ERR(1, 679, __pyx_L1_error) + __pyx_ptype_3tpm_V6S = &__pyx_type_3tpm_V6S; + __pyx_vtabptr_3tpm_M3 = &__pyx_vtable_3tpm_M3; + __pyx_vtable_3tpm_M3.getM3 = (M3 (*)(struct __pyx_obj_3tpm_M3 *))__pyx_f_3tpm_2M3_getM3; + __pyx_vtable_3tpm_M3.setM3 = (PyObject *(*)(struct __pyx_obj_3tpm_M3 *, M3))__pyx_f_3tpm_2M3_setM3; + if (PyType_Ready(&__pyx_type_3tpm_M3) < 0) __PYX_ERR(1, 800, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_M3.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_M3.tp_dictoffset && __pyx_type_3tpm_M3.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_M3.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (__Pyx_SetVtable(__pyx_type_3tpm_M3.tp_dict, __pyx_vtabptr_3tpm_M3) < 0) __PYX_ERR(1, 800, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_M3, (PyObject *)&__pyx_type_3tpm_M3) < 0) __PYX_ERR(1, 800, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_M3) < 0) __PYX_ERR(1, 800, __pyx_L1_error) + __pyx_ptype_3tpm_M3 = &__pyx_type_3tpm_M3; + __pyx_vtabptr_3tpm_M6 = &__pyx_vtable_3tpm_M6; + __pyx_vtable_3tpm_M6.getM6 = (M6 (*)(struct __pyx_obj_3tpm_M6 *))__pyx_f_3tpm_2M6_getM6; + __pyx_vtable_3tpm_M6.setM6 = (PyObject *(*)(struct __pyx_obj_3tpm_M6 *, M6))__pyx_f_3tpm_2M6_setM6; + if (PyType_Ready(&__pyx_type_3tpm_M6) < 0) __PYX_ERR(1, 1014, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_M6.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_M6.tp_dictoffset && __pyx_type_3tpm_M6.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_M6.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (__Pyx_SetVtable(__pyx_type_3tpm_M6.tp_dict, __pyx_vtabptr_3tpm_M6) < 0) __PYX_ERR(1, 1014, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_M6, (PyObject *)&__pyx_type_3tpm_M6) < 0) __PYX_ERR(1, 1014, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_M6) < 0) __PYX_ERR(1, 1014, __pyx_L1_error) + __pyx_ptype_3tpm_M6 = &__pyx_type_3tpm_M6; + __pyx_vtabptr_3tpm_TSTATE = &__pyx_vtable_3tpm_TSTATE; + __pyx_vtable_3tpm_TSTATE.__pyx___get_tstate = (TPM_TSTATE (*)(struct __pyx_obj_3tpm_TSTATE *))__pyx_f_3tpm_6TSTATE___get_tstate; + __pyx_vtable_3tpm_TSTATE.__pyx___set_tstate = (PyObject *(*)(struct __pyx_obj_3tpm_TSTATE *, TPM_TSTATE))__pyx_f_3tpm_6TSTATE___set_tstate; + if (PyType_Ready(&__pyx_type_3tpm_TSTATE) < 0) __PYX_ERR(4, 66, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_TSTATE.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_TSTATE.tp_dictoffset && __pyx_type_3tpm_TSTATE.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_TSTATE.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + if (__Pyx_SetVtable(__pyx_type_3tpm_TSTATE.tp_dict, __pyx_vtabptr_3tpm_TSTATE) < 0) __PYX_ERR(4, 66, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_TSTATE, (PyObject *)&__pyx_type_3tpm_TSTATE) < 0) __PYX_ERR(4, 66, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_TSTATE) < 0) __PYX_ERR(4, 66, __pyx_L1_error) + __pyx_ptype_3tpm_TSTATE = &__pyx_type_3tpm_TSTATE; + __pyx_vtabptr_3tpm_PVEC = &__pyx_vtable_3tpm_PVEC; + __pyx_vtable_3tpm_PVEC.__pyx___get_pvec = (__pyx_t_3tpm_S_PVEC (*)(struct __pyx_obj_3tpm_PVEC *))__pyx_f_3tpm_4PVEC___get_pvec; + __pyx_vtable_3tpm_PVEC.__pyx___set_pvec = (PyObject *(*)(struct __pyx_obj_3tpm_PVEC *, __pyx_t_3tpm_S_PVEC))__pyx_f_3tpm_4PVEC___set_pvec; + if (PyType_Ready(&__pyx_type_3tpm_PVEC) < 0) __PYX_ERR(2, 71, __pyx_L1_error) + #if PY_VERSION_HEX < 0x030800B1 + __pyx_type_3tpm_PVEC.tp_print = 0; + #endif + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type_3tpm_PVEC.tp_dictoffset && __pyx_type_3tpm_PVEC.tp_getattro == PyObject_GenericGetAttr)) { + __pyx_type_3tpm_PVEC.tp_getattro = __Pyx_PyObject_GenericGetAttr; + } + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_PVEC, "__init__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_PVEC, "__init__"); if (unlikely(!wrapper)) __PYX_ERR(2, 71, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4PVEC_1__init__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4PVEC_1__init__.doc = __pyx_doc_5pytpm_3tpm_4PVEC_1__init__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4PVEC_1__init__; + __pyx_wrapperbase_3tpm_4PVEC_2__init__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4PVEC_2__init__.doc = __pyx_doc_3tpm_4PVEC_2__init__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4PVEC_2__init__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_PVEC, "__getitem__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_PVEC, "__getitem__"); if (unlikely(!wrapper)) __PYX_ERR(2, 71, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4PVEC_2__getitem__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4PVEC_2__getitem__.doc = __pyx_doc_5pytpm_3tpm_4PVEC_2__getitem__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4PVEC_2__getitem__; + __pyx_wrapperbase_3tpm_4PVEC_4__getitem__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4PVEC_4__getitem__.doc = __pyx_doc_3tpm_4PVEC_4__getitem__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4PVEC_4__getitem__; } } + #endif + #if CYTHON_COMPILING_IN_CPYTHON { - PyObject *wrapper = __Pyx_GetAttrString((PyObject *)&__pyx_type_5pytpm_3tpm_PVEC, "__setitem__"); if (unlikely(!wrapper)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + PyObject *wrapper = PyObject_GetAttrString((PyObject *)&__pyx_type_3tpm_PVEC, "__setitem__"); if (unlikely(!wrapper)) __PYX_ERR(2, 71, __pyx_L1_error) if (Py_TYPE(wrapper) == &PyWrapperDescr_Type) { - __pyx_wrapperbase_5pytpm_3tpm_4PVEC_3__setitem__ = *((PyWrapperDescrObject *)wrapper)->d_base; - __pyx_wrapperbase_5pytpm_3tpm_4PVEC_3__setitem__.doc = __pyx_doc_5pytpm_3tpm_4PVEC_3__setitem__; - ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_5pytpm_3tpm_4PVEC_3__setitem__; + __pyx_wrapperbase_3tpm_4PVEC_6__setitem__ = *((PyWrapperDescrObject *)wrapper)->d_base; + __pyx_wrapperbase_3tpm_4PVEC_6__setitem__.doc = __pyx_doc_3tpm_4PVEC_6__setitem__; + ((PyWrapperDescrObject *)wrapper)->d_base = &__pyx_wrapperbase_3tpm_4PVEC_6__setitem__; } } - if (__Pyx_SetVtable(__pyx_type_5pytpm_3tpm_PVEC.tp_dict, __pyx_vtabptr_5pytpm_3tpm_PVEC) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__Pyx_SetAttrString(__pyx_m, "PVEC", (PyObject *)&__pyx_type_5pytpm_3tpm_PVEC) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_5pytpm_3tpm_PVEC = &__pyx_type_5pytpm_3tpm_PVEC; + #endif + if (__Pyx_SetVtable(__pyx_type_3tpm_PVEC.tp_dict, __pyx_vtabptr_3tpm_PVEC) < 0) __PYX_ERR(2, 71, __pyx_L1_error) + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_PVEC, (PyObject *)&__pyx_type_3tpm_PVEC) < 0) __PYX_ERR(2, 71, __pyx_L1_error) + if (__Pyx_setup_reduce((PyObject*)&__pyx_type_3tpm_PVEC) < 0) __PYX_ERR(2, 71, __pyx_L1_error) + __pyx_ptype_3tpm_PVEC = &__pyx_type_3tpm_PVEC; + __Pyx_RefNannyFinishContext(); + return 0; + __pyx_L1_error:; + __Pyx_RefNannyFinishContext(); + return -1; +} + +static int __Pyx_modinit_type_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); /*--- Type import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_variable_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); + /*--- Variable import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + +static int __Pyx_modinit_function_import_code(void) { + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); /*--- Function import code ---*/ + __Pyx_RefNannyFinishContext(); + return 0; +} + + +#ifndef CYTHON_NO_PYINIT_EXPORT +#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC +#elif PY_MAJOR_VERSION < 3 +#ifdef __cplusplus +#define __Pyx_PyMODINIT_FUNC extern "C" void +#else +#define __Pyx_PyMODINIT_FUNC void +#endif +#else +#ifdef __cplusplus +#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * +#else +#define __Pyx_PyMODINIT_FUNC PyObject * +#endif +#endif + + +#if PY_MAJOR_VERSION < 3 +__Pyx_PyMODINIT_FUNC inittpm(void) CYTHON_SMALL_CODE; /*proto*/ +__Pyx_PyMODINIT_FUNC inittpm(void) +#else +__Pyx_PyMODINIT_FUNC PyInit_tpm(void) CYTHON_SMALL_CODE; /*proto*/ +__Pyx_PyMODINIT_FUNC PyInit_tpm(void) +#if CYTHON_PEP489_MULTI_PHASE_INIT +{ + return PyModuleDef_Init(&__pyx_moduledef); +} +static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { + #if PY_VERSION_HEX >= 0x030700A1 + static PY_INT64_T main_interpreter_id = -1; + PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); + if (main_interpreter_id == -1) { + main_interpreter_id = current_id; + return (unlikely(current_id == -1)) ? -1 : 0; + } else if (unlikely(main_interpreter_id != current_id)) + #else + static PyInterpreterState *main_interpreter = NULL; + PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; + if (!main_interpreter) { + main_interpreter = current_interpreter; + } else if (unlikely(main_interpreter != current_interpreter)) + #endif + { + PyErr_SetString( + PyExc_ImportError, + "Interpreter change detected - this module can only be loaded into one interpreter per process."); + return -1; + } + return 0; +} +static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { + PyObject *value = PyObject_GetAttrString(spec, from_name); + int result = 0; + if (likely(value)) { + if (allow_none || value != Py_None) { + result = PyDict_SetItemString(moddict, to_name, value); + } + Py_DECREF(value); + } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { + PyErr_Clear(); + } else { + result = -1; + } + return result; +} +static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) { + PyObject *module = NULL, *moddict, *modname; + if (__Pyx_check_single_interpreter()) + return NULL; + if (__pyx_m) + return __Pyx_NewRef(__pyx_m); + modname = PyObject_GetAttrString(spec, "name"); + if (unlikely(!modname)) goto bad; + module = PyModule_NewObject(modname); + Py_DECREF(modname); + if (unlikely(!module)) goto bad; + moddict = PyModule_GetDict(module); + if (unlikely(!moddict)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; + if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__", 0) < 0)) goto bad; + return module; +bad: + Py_XDECREF(module); + return NULL; +} + + +static CYTHON_SMALL_CODE int __pyx_pymod_exec_tpm(PyObject *__pyx_pyinit_module) +#endif +#endif +{ + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannyDeclarations + #if CYTHON_PEP489_MULTI_PHASE_INIT + if (__pyx_m) { + if (__pyx_m == __pyx_pyinit_module) return 0; + PyErr_SetString(PyExc_RuntimeError, "Module 'tpm' has already been imported. Re-initialisation is not supported."); + return -1; + } + #elif PY_MAJOR_VERSION >= 3 + if (__pyx_m) return __Pyx_NewRef(__pyx_m); + #endif + #if CYTHON_REFNANNY +__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); +if (!__Pyx_RefNanny) { + PyErr_Clear(); + __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); + if (!__Pyx_RefNanny) + Py_FatalError("failed to import 'refnanny' module"); +} +#endif + __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_tpm(void)", 0); + if (__Pyx_check_binary_version() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #ifdef __Pxy_PyFrame_Initialize_Offsets + __Pxy_PyFrame_Initialize_Offsets(); + #endif + __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(5, 1, __pyx_L1_error) + __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(5, 1, __pyx_L1_error) + #ifdef __Pyx_CyFunction_USED + if (__pyx_CyFunction_init() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_FusedFunction_USED + if (__pyx_FusedFunction_init() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_Coroutine_USED + if (__pyx_Coroutine_init() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_Generator_USED + if (__pyx_Generator_init() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_AsyncGen_USED + if (__pyx_AsyncGen_init() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + #ifdef __Pyx_StopAsyncIteration_USED + if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + /*--- Library function declarations ---*/ + /*--- Threads initialization code ---*/ + #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS + #ifdef WITH_THREAD /* Python build with threading support? */ + PyEval_InitThreads(); + #endif + #endif + /*--- Module creation code ---*/ + #if CYTHON_PEP489_MULTI_PHASE_INIT + __pyx_m = __pyx_pyinit_module; + Py_INCREF(__pyx_m); + #else + #if PY_MAJOR_VERSION < 3 + __pyx_m = Py_InitModule4("tpm", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); + #else + __pyx_m = PyModule_Create(&__pyx_moduledef); + #endif + if (unlikely(!__pyx_m)) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(5, 1, __pyx_L1_error) + Py_INCREF(__pyx_d); + __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(5, 1, __pyx_L1_error) + Py_INCREF(__pyx_b); + __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(5, 1, __pyx_L1_error) + Py_INCREF(__pyx_cython_runtime); + if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(5, 1, __pyx_L1_error); + /*--- Initialize various global constants etc. ---*/ + if (__Pyx_InitGlobals() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) + if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif + if (__pyx_module_is_main_tpm) { + if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name, __pyx_n_s_main) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + } + #if PY_MAJOR_VERSION >= 3 + { + PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(5, 1, __pyx_L1_error) + if (!PyDict_GetItemString(modules, "tpm")) { + if (unlikely(PyDict_SetItemString(modules, "tpm", __pyx_m) < 0)) __PYX_ERR(5, 1, __pyx_L1_error) + } + } + #endif + /*--- Builtin init code ---*/ + if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + /*--- Constants init code ---*/ + if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + /*--- Global type/function init code ---*/ + (void)__Pyx_modinit_global_init_code(); + (void)__Pyx_modinit_variable_export_code(); + (void)__Pyx_modinit_function_export_code(); + if (unlikely(__Pyx_modinit_type_init_code() < 0)) __PYX_ERR(5, 1, __pyx_L1_error) + (void)__Pyx_modinit_type_import_code(); + (void)__Pyx_modinit_variable_import_code(); + (void)__Pyx_modinit_function_import_code(); /*--- Execution code ---*/ + #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) + if (__Pyx_patch_abc() < 0) __PYX_ERR(5, 1, __pyx_L1_error) + #endif - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":5 + /* "src/tpm_times.pxi":5 * # cimport tpm_times * * M_PI = tpm_times.M_PI # <<<<<<<<<<<<<< * MJD_0 = tpm_times.MJD_0 * B1950 = tpm_times.B1950 */ - __pyx_t_1 = PyFloat_FromDouble(M_PI); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(M_PI); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__M_PI, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_M_PI, __pyx_t_1) < 0) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":6 + /* "src/tpm_times.pxi":6 * * M_PI = tpm_times.M_PI * MJD_0 = tpm_times.MJD_0 # <<<<<<<<<<<<<< * B1950 = tpm_times.B1950 * J2000 = tpm_times.J2000 */ - __pyx_t_1 = PyFloat_FromDouble(MJD_0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(MJD_0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__MJD_0, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_MJD_0, __pyx_t_1) < 0) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":7 + /* "src/tpm_times.pxi":7 * M_PI = tpm_times.M_PI * MJD_0 = tpm_times.MJD_0 * B1950 = tpm_times.B1950 # <<<<<<<<<<<<<< * J2000 = tpm_times.J2000 * J1984 = tpm_times.J1984 */ - __pyx_t_1 = PyFloat_FromDouble(B1950); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(B1950); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__B1950, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_B1950, __pyx_t_1) < 0) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":8 + /* "src/tpm_times.pxi":8 * MJD_0 = tpm_times.MJD_0 * B1950 = tpm_times.B1950 * J2000 = tpm_times.J2000 # <<<<<<<<<<<<<< * J1984 = tpm_times.J1984 * CB = tpm_times.CB */ - __pyx_t_1 = PyFloat_FromDouble(J2000); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(J2000); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__J2000, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_J2000, __pyx_t_1) < 0) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":9 + /* "src/tpm_times.pxi":9 * B1950 = tpm_times.B1950 * J2000 = tpm_times.J2000 * J1984 = tpm_times.J1984 # <<<<<<<<<<<<<< * CB = tpm_times.CB * CJ = tpm_times.CJ */ - __pyx_t_1 = PyFloat_FromDouble(J1984); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(J1984); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__J1984, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_J1984, __pyx_t_1) < 0) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":10 + /* "src/tpm_times.pxi":10 * J2000 = tpm_times.J2000 * J1984 = tpm_times.J1984 * CB = tpm_times.CB # <<<<<<<<<<<<<< * CJ = tpm_times.CJ * SUNDAY = tpm_times.SUNDAY */ - __pyx_t_1 = PyFloat_FromDouble(CB); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(CB); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__CB, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_CB, __pyx_t_1) < 0) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":11 + /* "src/tpm_times.pxi":11 * J1984 = tpm_times.J1984 * CB = tpm_times.CB * CJ = tpm_times.CJ # <<<<<<<<<<<<<< * SUNDAY = tpm_times.SUNDAY * MONDAY = tpm_times.MONDAY */ - __pyx_t_1 = PyFloat_FromDouble(CJ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(CJ); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__CJ, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_CJ, __pyx_t_1) < 0) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":12 + /* "src/tpm_times.pxi":12 * CB = tpm_times.CB * CJ = tpm_times.CJ * SUNDAY = tpm_times.SUNDAY # <<<<<<<<<<<<<< * MONDAY = tpm_times.MONDAY * TUESDAY = tpm_times.TUESDAY */ - __pyx_t_1 = PyFloat_FromDouble(SUNDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(SUNDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SUNDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_SUNDAY, __pyx_t_1) < 0) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":13 + /* "src/tpm_times.pxi":13 * CJ = tpm_times.CJ * SUNDAY = tpm_times.SUNDAY * MONDAY = tpm_times.MONDAY # <<<<<<<<<<<<<< * TUESDAY = tpm_times.TUESDAY * WEDNESDAY = tpm_times.WEDNESDAY */ - __pyx_t_1 = PyFloat_FromDouble(MONDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(MONDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__MONDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_MONDAY, __pyx_t_1) < 0) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":14 + /* "src/tpm_times.pxi":14 * SUNDAY = tpm_times.SUNDAY * MONDAY = tpm_times.MONDAY * TUESDAY = tpm_times.TUESDAY # <<<<<<<<<<<<<< * WEDNESDAY = tpm_times.WEDNESDAY * THURSDAY = tpm_times.THURSDAY */ - __pyx_t_1 = PyFloat_FromDouble(TUESDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(TUESDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TUESDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TUESDAY, __pyx_t_1) < 0) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":15 + /* "src/tpm_times.pxi":15 * MONDAY = tpm_times.MONDAY * TUESDAY = tpm_times.TUESDAY * WEDNESDAY = tpm_times.WEDNESDAY # <<<<<<<<<<<<<< * THURSDAY = tpm_times.THURSDAY * FRIDAY = tpm_times.FRIDAY */ - __pyx_t_1 = PyFloat_FromDouble(WEDNESDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(WEDNESDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__WEDNESDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_WEDNESDAY, __pyx_t_1) < 0) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":16 + /* "src/tpm_times.pxi":16 * TUESDAY = tpm_times.TUESDAY * WEDNESDAY = tpm_times.WEDNESDAY * THURSDAY = tpm_times.THURSDAY # <<<<<<<<<<<<<< * FRIDAY = tpm_times.FRIDAY * SATURDAY = tpm_times.SATURDAY */ - __pyx_t_1 = PyFloat_FromDouble(THURSDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(THURSDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__THURSDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_THURSDAY, __pyx_t_1) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":17 + /* "src/tpm_times.pxi":17 * WEDNESDAY = tpm_times.WEDNESDAY * THURSDAY = tpm_times.THURSDAY * FRIDAY = tpm_times.FRIDAY # <<<<<<<<<<<<<< * SATURDAY = tpm_times.SATURDAY * */ - __pyx_t_1 = PyFloat_FromDouble(FRIDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(FRIDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FRIDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_FRIDAY, __pyx_t_1) < 0) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":18 + /* "src/tpm_times.pxi":18 * THURSDAY = tpm_times.THURSDAY * FRIDAY = tpm_times.FRIDAY * SATURDAY = tpm_times.SATURDAY # <<<<<<<<<<<<<< * * cdef class DMS(object): */ - __pyx_t_1 = PyFloat_FromDouble(SATURDAY); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyFloat_FromDouble(SATURDAY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SATURDAY, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_SATURDAY, __pyx_t_1) < 0) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":65 + /* "src/tpm_times.pxi":65 * * """ * valid_keys = ('r', 'h', 'dd', 'mm', 'ss') # <<<<<<<<<<<<<< * cdef tpm_times.DMS _dms * def __cinit__(self): */ - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS->tp_dict, __pyx_n_s__valid_keys, ((PyObject *)__pyx_k_tuple_83)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - PyType_Modified(__pyx_ptype_5pytpm_3tpm_DMS); + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_DMS->tp_dict, __pyx_n_s_valid_keys, __pyx_tuple__31) < 0) __PYX_ERR(0, 65, __pyx_L1_error) + PyType_Modified(__pyx_ptype_3tpm_DMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":91 + /* "src/tpm_times.pxi":91 * self._dms.dd = value * * dd = property(__getdd, __setdd,doc="Degrees.") # <<<<<<<<<<<<<< * * def __getmm(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS, __pyx_n_s____getdd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_DMS, __pyx_n_s_getdd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS, __pyx_n_s____setdd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_DMS, __pyx_n_s_setdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 91, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_84)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Degrees) < 0) __PYX_ERR(0, 91, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS->tp_dict, __pyx_n_s__dd, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_DMS->tp_dict, __pyx_n_s_dd, __pyx_t_1) < 0) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_DMS); + PyType_Modified(__pyx_ptype_3tpm_DMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":99 + /* "src/tpm_times.pxi":99 * self._dms.mm = value * * mm = property(__getmm, __setmm,doc="Minutes of arc.") # <<<<<<<<<<<<<< * * def __getss(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS, __pyx_n_s____getmm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_DMS, __pyx_n_s_getmm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS, __pyx_n_s____setmm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_DMS, __pyx_n_s_setmm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 99, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_85)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 99, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Minutes_of_arc) < 0) __PYX_ERR(0, 99, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS->tp_dict, __pyx_n_s__mm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_DMS->tp_dict, __pyx_n_s_mm, __pyx_t_1) < 0) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_DMS); + PyType_Modified(__pyx_ptype_3tpm_DMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":107 + /* "src/tpm_times.pxi":107 * self._dms.ss = value * * ss = property(__getss, __setss,doc="Seconds of arc.") # <<<<<<<<<<<<<< * * def __repr__(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS, __pyx_n_s____getss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_DMS, __pyx_n_s_getss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS, __pyx_n_s____setss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_DMS, __pyx_n_s_setss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 107, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_86)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 107, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Seconds_of_arc) < 0) __PYX_ERR(0, 107, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_DMS->tp_dict, __pyx_n_s__ss, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_DMS->tp_dict, __pyx_n_s_ss, __pyx_t_1) < 0) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_DMS); + PyType_Modified(__pyx_ptype_3tpm_DMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":270 + /* "src/tpm_times.pxi":270 * * """ * valid_keys = ('r', 'dd', 'hh', 'mm', 'ss') # <<<<<<<<<<<<<< * cdef tpm_times.HMS _hms * def __cinit__(self): */ - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS->tp_dict, __pyx_n_s__valid_keys, ((PyObject *)__pyx_k_tuple_87)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - PyType_Modified(__pyx_ptype_5pytpm_3tpm_HMS); + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_HMS->tp_dict, __pyx_n_s_valid_keys, __pyx_tuple__32) < 0) __PYX_ERR(0, 270, __pyx_L1_error) + PyType_Modified(__pyx_ptype_3tpm_HMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":296 + /* "src/tpm_times.pxi":296 * self._hms.hh = value * * hh = property(__gethh, __sethh,doc="Hours.") # <<<<<<<<<<<<<< * * def __getmm(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS, __pyx_n_s____gethh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_HMS, __pyx_n_s_gethh); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 296, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS, __pyx_n_s____sethh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_HMS, __pyx_n_s_sethh); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 296, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 296, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_88)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 296, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Hours) < 0) __PYX_ERR(0, 296, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 296, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS->tp_dict, __pyx_n_s__hh, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_HMS->tp_dict, __pyx_n_s_hh, __pyx_t_1) < 0) __PYX_ERR(0, 296, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_HMS); + PyType_Modified(__pyx_ptype_3tpm_HMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":304 + /* "src/tpm_times.pxi":304 * self._hms.mm = value * * mm = property(__getmm, __setmm,doc="Minutes.") # <<<<<<<<<<<<<< * * def __getss(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS, __pyx_n_s____getmm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_HMS, __pyx_n_s_getmm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 304, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS, __pyx_n_s____setmm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_HMS, __pyx_n_s_setmm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 304, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 304, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_89)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 304, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Minutes) < 0) __PYX_ERR(0, 304, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 304, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS->tp_dict, __pyx_n_s__mm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_HMS->tp_dict, __pyx_n_s_mm, __pyx_t_1) < 0) __PYX_ERR(0, 304, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_HMS); + PyType_Modified(__pyx_ptype_3tpm_HMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":312 + /* "src/tpm_times.pxi":312 * self._hms.ss = value * * ss = property(__getss, __setss,doc="Seconds.") # <<<<<<<<<<<<<< * * def __repr__(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS, __pyx_n_s____getss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_HMS, __pyx_n_s_getss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS, __pyx_n_s____setss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_HMS, __pyx_n_s_setss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 312, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_90)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 312, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Seconds) < 0) __PYX_ERR(0, 312, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_HMS->tp_dict, __pyx_n_s__ss, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_HMS->tp_dict, __pyx_n_s_ss, __pyx_t_1) < 0) __PYX_ERR(0, 312, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_HMS); + PyType_Modified(__pyx_ptype_3tpm_HMS); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":484 + /* "src/tpm_times.pxi":484 * * """ * valid_keys = ('j','year','ydd','y','m','dd','hh','mm','ss') # <<<<<<<<<<<<<< * cdef tpm_times.YMD _ymd * def __cinit__(self): */ - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__valid_keys, ((PyObject *)__pyx_k_tuple_91)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_valid_keys, __pyx_tuple__33) < 0) __PYX_ERR(0, 484, __pyx_L1_error) + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":525 + /* "src/tpm_times.pxi":525 * self._ymd.y = value * * y = property(__gety, __sety,doc="Year as an integer.") # <<<<<<<<<<<<<< * * def __getm(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____gety); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_gety); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____sety); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_sety); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 525, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_92)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 525, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Year_as_an_integer) < 0) __PYX_ERR(0, 525, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__y, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_y, __pyx_t_1) < 0) __PYX_ERR(0, 525, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":534 + /* "src/tpm_times.pxi":534 * self._ymd.m = value * * m = property(__getm, __setm,doc="Month as an integer.") # <<<<<<<<<<<<<< * * def __getdd(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____getm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_getm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____setm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_setm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 534, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_93)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 534, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Month_as_an_integer) < 0) __PYX_ERR(0, 534, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__m, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_m, __pyx_t_1) < 0) __PYX_ERR(0, 534, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":542 + /* "src/tpm_times.pxi":542 * self._ymd.dd = value * * dd = property(__getdd, __setdd,doc="Day as a float.") # <<<<<<<<<<<<<< * * def __gethh(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____getdd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_getdd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____setdd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_setdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 542, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_94)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 542, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Day_as_a_float) < 0) __PYX_ERR(0, 542, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__dd, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_dd, __pyx_t_1) < 0) __PYX_ERR(0, 542, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":550 + /* "src/tpm_times.pxi":550 * self._ymd.hms.hh = value * * hh = property(__gethh, __sethh,doc="Hours as a float.") # <<<<<<<<<<<<<< * * def __getmm(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____gethh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_gethh); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 550, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____sethh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_sethh); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 550, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 550, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_95)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 550, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Hours_as_a_float) < 0) __PYX_ERR(0, 550, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 550, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__hh, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 550; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_hh, __pyx_t_1) < 0) __PYX_ERR(0, 550, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":558 + /* "src/tpm_times.pxi":558 * self._ymd.hms.mm = value * * mm = property(__getmm, __setmm,doc="Minutes as a float.") # <<<<<<<<<<<<<< * * def __getss(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____getmm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_getmm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 558, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____setmm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_setmm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 558, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 558, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_96)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 558, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Minutes_as_a_float) < 0) __PYX_ERR(0, 558, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 558, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__mm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_mm, __pyx_t_1) < 0) __PYX_ERR(0, 558, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":566 + /* "src/tpm_times.pxi":566 * self._ymd.hms.ss = value * * ss = property(__getss, __setss,doc="Seconds as a float.") # <<<<<<<<<<<<<< * * def __repr__(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____getss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_getss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD, __pyx_n_s____setss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_YMD, __pyx_n_s_setss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 566, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_97)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 566, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Seconds_as_a_float) < 0) __PYX_ERR(0, 566, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_YMD->tp_dict, __pyx_n_s__ss, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_YMD->tp_dict, __pyx_n_s_ss, __pyx_t_1) < 0) __PYX_ERR(0, 566, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_YMD); + PyType_Modified(__pyx_ptype_3tpm_YMD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":756 + /* "src/tpm_times.pxi":756 * * """ * valid_keys = ('j', 'year', 'dd', 'hh', 'mm', 'ss') # <<<<<<<<<<<<<< * cdef tpm_times.JD _jd * def __cinit__(self): */ - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_JD->tp_dict, __pyx_n_s__valid_keys, ((PyObject *)__pyx_k_tuple_98)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 756; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - PyType_Modified(__pyx_ptype_5pytpm_3tpm_JD); + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_JD->tp_dict, __pyx_n_s_valid_keys, __pyx_tuple__34) < 0) __PYX_ERR(0, 756, __pyx_L1_error) + PyType_Modified(__pyx_ptype_3tpm_JD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":784 + /* "src/tpm_times.pxi":784 * self._jd.dd = value * * dd = property(__getdd, __setdd,doc="Day as a float.") # <<<<<<<<<<<<<< * * def __gethh(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____getdd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_getdd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____setdd); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_setdd); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 784, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_94)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 784, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Day_as_a_float) < 0) __PYX_ERR(0, 784, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_JD->tp_dict, __pyx_n_s__dd, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_JD->tp_dict, __pyx_n_s_dd, __pyx_t_1) < 0) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_JD); + PyType_Modified(__pyx_ptype_3tpm_JD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":792 + /* "src/tpm_times.pxi":792 * self._jd.hms.hh = value * * hh = property(__gethh, __sethh,doc="Hours.") # <<<<<<<<<<<<<< * * def __getmm(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____gethh); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_gethh); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____sethh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_sethh); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 792, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_88)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 792, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Hours) < 0) __PYX_ERR(0, 792, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_JD->tp_dict, __pyx_n_s__hh, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_JD->tp_dict, __pyx_n_s_hh, __pyx_t_1) < 0) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_JD); + PyType_Modified(__pyx_ptype_3tpm_JD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":800 + /* "src/tpm_times.pxi":800 * self._jd.hms.mm = value * * mm = property(__getmm, __setmm,doc="Minutes.") # <<<<<<<<<<<<<< * * def __getss(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____getmm); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_getmm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 800, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____setmm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_setmm); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 800, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 800, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_89)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 800, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Minutes) < 0) __PYX_ERR(0, 800, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 800, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_JD->tp_dict, __pyx_n_s__mm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_JD->tp_dict, __pyx_n_s_mm, __pyx_t_1) < 0) __PYX_ERR(0, 800, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_JD); + PyType_Modified(__pyx_ptype_3tpm_JD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":808 + /* "src/tpm_times.pxi":808 * self._jd.hms.ss = value * * ss = property(__getss, __setss,doc="Seconds.") # <<<<<<<<<<<<<< * * def __repr__(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____getss); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_getss); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 808, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_JD, __pyx_n_s____setss); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_JD, __pyx_n_s_setss); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 808, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 808, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_90)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 808, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Seconds) < 0) __PYX_ERR(0, 808, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 808, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_JD->tp_dict, __pyx_n_s__ss, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_JD->tp_dict, __pyx_n_s_ss, __pyx_t_1) < 0) __PYX_ERR(0, 808, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_JD); + PyType_Modified(__pyx_ptype_3tpm_JD); - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":927 + /* "src/tpm_times.pxi":927 * * * def byear2jd(byear): # <<<<<<<<<<<<<< * """Convert Besselian year into a Julian date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_byear2jd, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 927; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_1byear2jd, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__byear2jd, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 927; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_byear2jd, __pyx_t_1) < 0) __PYX_ERR(0, 927, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":951 + /* "src/tpm_times.pxi":951 * * * def jd2byear(jd): # <<<<<<<<<<<<<< * """Convert Julian date into a Besselian year. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_1jd2byear, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 951; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_3jd2byear, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 951, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__jd2byear, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 951; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_jd2byear, __pyx_t_1) < 0) __PYX_ERR(0, 951, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":975 + /* "src/tpm_times.pxi":975 * * * def jyear2jd(jyear): # <<<<<<<<<<<<<< * """Convert Julian year into a Julian date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_2jyear2jd, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 975; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_5jyear2jd, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 975, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__jyear2jd, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 975; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_jyear2jd, __pyx_t_1) < 0) __PYX_ERR(0, 975, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":999 + /* "src/tpm_times.pxi":999 * * * def jd2jyear(jd): # <<<<<<<<<<<<<< * """Convert Julian date into Julian year. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_3jd2jyear, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 999; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_7jd2jyear, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__jd2jyear, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 999; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_jd2jyear, __pyx_t_1) < 0) __PYX_ERR(0, 999, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1023 + /* "src/tpm_times.pxi":1023 * * * def jd_now(): # <<<<<<<<<<<<<< * """Return current Julian date as a JD object. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_4jd_now, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1023; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_9jd_now, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1023, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__jd_now, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1023; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_jd_now, __pyx_t_1) < 0) __PYX_ERR(0, 1023, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1039 + /* "src/tpm_times.pxi":1039 * * * def utc_now(): # <<<<<<<<<<<<<< * """Current UTC as a Julian date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_5utc_now, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_11utc_now, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1039, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__utc_now, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_utc_now, __pyx_t_1) < 0) __PYX_ERR(0, 1039, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1053 + /* "src/tpm_times.pxi":1053 * * * def gcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< * """Return Julian day number for the Gregorian calendar date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_6gcal2j, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_13gcal2j, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__gcal2j, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_gcal2j, __pyx_t_1) < 0) __PYX_ERR(0, 1053, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1085 + /* "src/tpm_times.pxi":1085 * * * def jcal2j(int y, int m, int dd): # <<<<<<<<<<<<<< * """Return Julian day number for the Julian calendar date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_7jcal2j, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_15jcal2j, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__jcal2j, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1085; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_jcal2j, __pyx_t_1) < 0) __PYX_ERR(0, 1085, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1119 + /* "src/tpm_times.pxi":1119 * * * def j2gcal(double j): # <<<<<<<<<<<<<< * """Convert Julian date into Gregorian calendar date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_8j2gcal, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_17j2gcal, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__j2gcal, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_j2gcal, __pyx_t_1) < 0) __PYX_ERR(0, 1119, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1149 + /* "src/tpm_times.pxi":1149 * * * def j2jcal(double j): # <<<<<<<<<<<<<< * """Convert Julian date into Julian calendar date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_9j2jcal, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_19j2jcal, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__j2jcal, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_j2jcal, __pyx_t_1) < 0) __PYX_ERR(0, 1149, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1179 + /* "src/tpm_times.pxi":1179 * * * def j2y(j): # <<<<<<<<<<<<<< * """Convert Julian date into Gregorian calendar year with fractional part. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_10j2y, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_21j2y, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1179, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__j2y, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_j2y, __pyx_t_1) < 0) __PYX_ERR(0, 1179, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1206 + /* "src/tpm_times.pxi":1206 * * * def y2j(y): # <<<<<<<<<<<<<< * """Convert Gregorian calendar year with fractional part into Julian date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_11y2j, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_23y2j, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__y2j, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_y2j, __pyx_t_1) < 0) __PYX_ERR(0, 1206, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1232 + /* "src/tpm_times.pxi":1232 * * * def j2dow(j): # <<<<<<<<<<<<<< * """Return day of week for the given Julian date. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_12j2dow, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_25j2dow, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__j2dow, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_j2dow, __pyx_t_1) < 0) __PYX_ERR(0, 1232, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1257 + /* "src/tpm_times.pxi":1257 * * * def y2doy(int y): # <<<<<<<<<<<<<< * """Return number of days in the given Gregorian calendar year. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_13y2doy, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_27y2doy, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1257, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__y2doy, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_y2doy, __pyx_t_1) < 0) __PYX_ERR(0, 1257, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1287 + /* "src/tpm_times.pxi":1287 * * * def fmt_alpha(alpha): # <<<<<<<<<<<<<< * """Normalize and format angle in radians into a str: ' ##H ##M ##.###S'. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_14fmt_alpha, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_29fmt_alpha, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_alpha, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_alpha, __pyx_t_1) < 0) __PYX_ERR(0, 1287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1331 + /* "src/tpm_times.pxi":1331 * * * def fmt_delta(delta): # <<<<<<<<<<<<<< * """Normalize and format angle in radians into a str: ###D ##' ##.###". * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_15fmt_delta, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_31fmt_delta, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_delta, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_delta, __pyx_t_1) < 0) __PYX_ERR(0, 1331, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1370 + /* "src/tpm_times.pxi":1370 * * * def fmt_d(d): # <<<<<<<<<<<<<< * """Format angle in degrees into a string: ###D ##' ##.###". * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_16fmt_d, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_33fmt_d, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_d, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_d, __pyx_t_1) < 0) __PYX_ERR(0, 1370, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1410 + /* "src/tpm_times.pxi":1410 * * * def fmt_h(h): # <<<<<<<<<<<<<< * """Format hours into a string: ##H ##M ##.###S". * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_17fmt_h, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_35fmt_h, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1410, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_h, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_h, __pyx_t_1) < 0) __PYX_ERR(0, 1410, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1444 + /* "src/tpm_times.pxi":1444 * * * def fmt_j(j): # <<<<<<<<<<<<<< * """Format Julian date into a string. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_18fmt_j, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_37fmt_j, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1444, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_j, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_j, __pyx_t_1) < 0) __PYX_ERR(0, 1444, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1480 + /* "src/tpm_times.pxi":1480 * * * def fmt_r(r): # <<<<<<<<<<<<<< * """Format radians into a string with angle expressed as degrees. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_19fmt_r, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1480; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_39fmt_r, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_r, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1480; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_r, __pyx_t_1) < 0) __PYX_ERR(0, 1480, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1517 + /* "src/tpm_times.pxi":1517 * * * def fmt_y(y): # <<<<<<<<<<<<<< * """Format years, including fractional part, into a string. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_20fmt_y, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1517; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_41fmt_y, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fmt_y, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1517; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fmt_y, __pyx_t_1) < 0) __PYX_ERR(0, 1517, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1549 + /* "src/tpm_times.pxi":1549 * * * def d2d(d): # <<<<<<<<<<<<<< * """Normalize angle in degrees into (-360, 360). * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_21d2d, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1549; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_43d2d, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1549, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__d2d, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1549; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_d2d, __pyx_t_1) < 0) __PYX_ERR(0, 1549, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1579 + /* "src/tpm_times.pxi":1579 * * * def h2h(h): # <<<<<<<<<<<<<< * """Normalize angle in hours into [0, 24). * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_22h2h, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1579; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_45h2h, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__h2h, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1579; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_h2h, __pyx_t_1) < 0) __PYX_ERR(0, 1579, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1611 + /* "src/tpm_times.pxi":1611 * * * def r2r(r): # <<<<<<<<<<<<<< * """Normalize angle in radians into [0, 2). * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_23r2r, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1611; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_47r2r, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__r2r, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1611; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_r2r, __pyx_t_1) < 0) __PYX_ERR(0, 1611, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1646 + /* "src/tpm_times.pxi":1646 * # times.h. I am including all of these in tpm_times for * # convenience. * def d2h(d): # <<<<<<<<<<<<<< * """Convert angle in degrees into hours. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_24d2h, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1646; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_49d2h, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__d2h, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1646; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_d2h, __pyx_t_1) < 0) __PYX_ERR(0, 1646, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1672 + /* "src/tpm_times.pxi":1672 * * * def h2d(h): # <<<<<<<<<<<<<< * """Convert angle in hours into degrees. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_25h2d, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1672; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_51h2d, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__h2d, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1672; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_h2d, __pyx_t_1) < 0) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1698 + /* "src/tpm_times.pxi":1698 * * * def d2r(d): # <<<<<<<<<<<<<< * """Convert angle in degrees into degrees. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_26d2r, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1698; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_53d2r, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__d2r, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1698; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_d2r, __pyx_t_1) < 0) __PYX_ERR(0, 1698, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1724 + /* "src/tpm_times.pxi":1724 * * * def r2d(r): # <<<<<<<<<<<<<< * """Convert angle in radians into degrees. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_27r2d, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_55r2d, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1724, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__r2d, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_r2d, __pyx_t_1) < 0) __PYX_ERR(0, 1724, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1752 + /* "src/tpm_times.pxi":1752 * * * def h2r(h): # <<<<<<<<<<<<<< * """Convert angle in hours into radians. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_28h2r, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_57h2r, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__h2r, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_h2r, __pyx_t_1) < 0) __PYX_ERR(0, 1752, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1776 + /* "src/tpm_times.pxi":1776 * * * def r2h(r): # <<<<<<<<<<<<<< * """Convert angle in radians into hours. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_29r2h, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_59r2h, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__r2h, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_r2h, __pyx_t_1) < 0) __PYX_ERR(0, 1776, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1800 + /* "src/tpm_times.pxi":1800 * * * def d2as(d): # <<<<<<<<<<<<<< * """Convert angle in degrees into arc-seconds. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_30d2as, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_61d2as, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1800, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__d2as, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_d2as, __pyx_t_1) < 0) __PYX_ERR(0, 1800, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1824 + /* "src/tpm_times.pxi":1824 * * * def as2d(arcs): # <<<<<<<<<<<<<< * """Convert angle in arc-seconds into degrees. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_31as2d, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1824; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_63as2d, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1824, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__as2d, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1824; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_as2d, __pyx_t_1) < 0) __PYX_ERR(0, 1824, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1848 + /* "src/tpm_times.pxi":1848 * * * def as2h(arcs): # <<<<<<<<<<<<<< * """Convert angle in arc-seconds into hours. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_32as2h, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1848; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_65as2h, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1848, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__as2h, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1848; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_as2h, __pyx_t_1) < 0) __PYX_ERR(0, 1848, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1872 + /* "src/tpm_times.pxi":1872 * * * def h2as(h): # <<<<<<<<<<<<<< * """Convert angle in hours into arc-seconds. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_33h2as, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_67h2as, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1872, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__h2as, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_h2as, __pyx_t_1) < 0) __PYX_ERR(0, 1872, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1896 + /* "src/tpm_times.pxi":1896 * * * def r2as(r): # <<<<<<<<<<<<<< * """Convert angle in radians into arc-seconds. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_34r2as, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1896; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_69r2as, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__r2as, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1896; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_r2as, __pyx_t_1) < 0) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_times.pxi":1919 + /* "src/tpm_times.pxi":1919 * * * def as2r(arcs): # <<<<<<<<<<<<<< * """Convert angle in arc-seconds into radians. * */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_35as2r, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_3tpm_71as2r, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1919, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__as2r, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_as2r, __pyx_t_1) < 0) __PYX_ERR(0, 1919, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":5 + /* "src/tpm_vec.pxi":5 * # cimport tpm_vec * * POS = tpm_vec.POS # <<<<<<<<<<<<<< * VEL = tpm_vec.VEL * CARTESIAN = tpm_vec.CARTESIAN */ - __pyx_t_1 = PyInt_FromLong(POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__POS, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_POS, __pyx_t_1) < 0) __PYX_ERR(1, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":6 + /* "src/tpm_vec.pxi":6 * * POS = tpm_vec.POS * VEL = tpm_vec.VEL # <<<<<<<<<<<<<< * CARTESIAN = tpm_vec.CARTESIAN * SPHERICAL = tpm_vec.SPHERICAL */ - __pyx_t_1 = PyInt_FromLong(VEL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(VEL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__VEL, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_VEL, __pyx_t_1) < 0) __PYX_ERR(1, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":7 + /* "src/tpm_vec.pxi":7 * POS = tpm_vec.POS * VEL = tpm_vec.VEL * CARTESIAN = tpm_vec.CARTESIAN # <<<<<<<<<<<<<< * SPHERICAL = tpm_vec.SPHERICAL * POLAR = tpm_vec.POLAR */ - __pyx_t_1 = PyInt_FromLong(CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__CARTESIAN, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_CARTESIAN, __pyx_t_1) < 0) __PYX_ERR(1, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":8 + /* "src/tpm_vec.pxi":8 * VEL = tpm_vec.VEL * CARTESIAN = tpm_vec.CARTESIAN * SPHERICAL = tpm_vec.SPHERICAL # <<<<<<<<<<<<<< * POLAR = tpm_vec.POLAR * */ - __pyx_t_1 = PyInt_FromLong(SPHERICAL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(SPHERICAL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SPHERICAL, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_SPHERICAL, __pyx_t_1) < 0) __PYX_ERR(1, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":9 + /* "src/tpm_vec.pxi":9 * CARTESIAN = tpm_vec.CARTESIAN * SPHERICAL = tpm_vec.SPHERICAL * POLAR = tpm_vec.POLAR # <<<<<<<<<<<<<< * * cdef class V3(object): */ - __pyx_t_1 = PyInt_FromLong(POLAR); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyInt_From_int(POLAR); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__POLAR, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_POLAR, __pyx_t_1) < 0) __PYX_ERR(1, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":21 + /* "src/tpm_vec.pxi":21 * self._v3.v[2] = 0.0 * * def __init__(self, ctype=CARTESIAN, X=0.0, Y=0.0, Z=0.0): # <<<<<<<<<<<<<< * self._v3.type = ctype * self._v3.v[0] = X */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_10 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_11 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_k_12 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_13 = __pyx_t_1; + __pyx_k__9 = __pyx_t_1; __Pyx_GIVEREF(__pyx_t_1); __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":78 + /* "src/tpm_vec.pxi":78 * """ * # The following are read only. * ctype = CARTESIAN # <<<<<<<<<<<<<< * vtype = POS * def __init__(self, x=0.0, y=0.0, z=0.0): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP->tp_dict, __pyx_n_s__ctype, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3CP->tp_dict, __pyx_n_s_ctype, __pyx_t_1) < 0) __PYX_ERR(1, 78, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3CP); + PyType_Modified(__pyx_ptype_3tpm_V3CP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":79 + /* "src/tpm_vec.pxi":79 * # The following are read only. * ctype = CARTESIAN * vtype = POS # <<<<<<<<<<<<<< * def __init__(self, x=0.0, y=0.0, z=0.0): * self.x = x */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP->tp_dict, __pyx_n_s__vtype, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3CP->tp_dict, __pyx_n_s_vtype, __pyx_t_1) < 0) __PYX_ERR(1, 79, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3CP); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":80 - * ctype = CARTESIAN - * vtype = POS - * def __init__(self, x=0.0, y=0.0, z=0.0): # <<<<<<<<<<<<<< - * self.x = x - * self.y = y - */ - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_14 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_15 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_16 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; + PyType_Modified(__pyx_ptype_3tpm_V3CP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":92 + /* "src/tpm_vec.pxi":92 * self.setX(x) * * x = property(__getx, __setx, doc="X coordinate.") # <<<<<<<<<<<<<< * * def __gety(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP, __pyx_n_s____getx); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3CP, __pyx_n_s_getx); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP, __pyx_n_s____setx); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V3CP, __pyx_n_s_setx); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 92, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_100)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 92, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_X_coordinate) < 0) __PYX_ERR(1, 92, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP->tp_dict, __pyx_n_s__x, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3CP->tp_dict, __pyx_n_s_x, __pyx_t_1) < 0) __PYX_ERR(1, 92, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3CP); + PyType_Modified(__pyx_ptype_3tpm_V3CP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":100 + /* "src/tpm_vec.pxi":100 * self.setY(y) * * y = property(__gety, __sety, doc="Y coordinate.") # <<<<<<<<<<<<<< * * def __getz(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP, __pyx_n_s____gety); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3CP, __pyx_n_s_gety); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP, __pyx_n_s____sety); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V3CP, __pyx_n_s_sety); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 100, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_101)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 100, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Y_coordinate) < 0) __PYX_ERR(1, 100, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP->tp_dict, __pyx_n_s__y, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3CP->tp_dict, __pyx_n_s_y, __pyx_t_1) < 0) __PYX_ERR(1, 100, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3CP); + PyType_Modified(__pyx_ptype_3tpm_V3CP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":108 + /* "src/tpm_vec.pxi":108 * self.setZ(z) * * z = property(__getz, __setz, doc="Z coordinate.") # <<<<<<<<<<<<<< * * def c2s(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP, __pyx_n_s____getz); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3CP, __pyx_n_s_getz); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP, __pyx_n_s____setz); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V3CP, __pyx_n_s_setz); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 108, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_102)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 108, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Z_coordinate) < 0) __PYX_ERR(1, 108, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3CP->tp_dict, __pyx_n_s__z, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3CP->tp_dict, __pyx_n_s_z, __pyx_t_1) < 0) __PYX_ERR(1, 108, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3CP); + PyType_Modified(__pyx_ptype_3tpm_V3CP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":231 + /* "src/tpm_vec.pxi":231 * """ * # The following are read only. * ctype = SPHERICAL # <<<<<<<<<<<<<< * vtype = POS * def __init__(self, r=0.0, alpha=0.0, delta=0.0): */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__SPHERICAL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_SPHERICAL); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__ctype, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_ctype, __pyx_t_1) < 0) __PYX_ERR(1, 231, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":232 + /* "src/tpm_vec.pxi":232 * # The following are read only. * ctype = SPHERICAL * vtype = POS # <<<<<<<<<<<<<< * def __init__(self, r=0.0, alpha=0.0, delta=0.0): * self.r = r */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__POS); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_POS); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__vtype, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_vtype, __pyx_t_1) < 0) __PYX_ERR(1, 232, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":233 - * ctype = SPHERICAL - * vtype = POS - * def __init__(self, r=0.0, alpha=0.0, delta=0.0): # <<<<<<<<<<<<<< - * self.r = r - * self.alpha = alpha - */ - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_19 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_20 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_k_21 = __pyx_t_1; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":245 + /* "src/tpm_vec.pxi":245 * self.setX(r) * * r = property(__getr, __setr, doc="Radial coordinate.") # <<<<<<<<<<<<<< * * def __getalpha(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____getr); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_getr); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____setr); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_setr); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 245, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_103)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 245, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Radial_coordinate) < 0) __PYX_ERR(1, 245, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__r, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_r, __pyx_t_1) < 0) __PYX_ERR(1, 245, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":253 + /* "src/tpm_vec.pxi":253 * self.setY(alpha) * * alpha = property(__getalpha, __setalpha, # <<<<<<<<<<<<<< * doc="Longitudinal coordinate.") * */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____getalpha); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_getalpha); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____setalpha); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_setalpha); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 253, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_104)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_vec.pxi":254 + * + * alpha = property(__getalpha, __setalpha, + * doc="Longitudinal coordinate.") # <<<<<<<<<<<<<< + * + * def __getdelta(self): + */ + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 254, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Longitudinal_coordinate) < 0) __PYX_ERR(1, 254, __pyx_L1_error) + + /* "src/tpm_vec.pxi":253 + * self.setY(alpha) + * + * alpha = property(__getalpha, __setalpha, # <<<<<<<<<<<<<< + * doc="Longitudinal coordinate.") + * + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__alpha, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_alpha, __pyx_t_1) < 0) __PYX_ERR(1, 253, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":262 + /* "src/tpm_vec.pxi":262 * self.setZ(delta) * * delta = property(__getdelta, __setdelta, # <<<<<<<<<<<<<< * doc="Latitudinal coordinate.") * */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____getdelta); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_getdelta); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____setdelta); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_setdelta); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); + __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 262, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); __pyx_t_1 = 0; __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_105)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_vec.pxi":263 + * + * delta = property(__getdelta, __setdelta, + * doc="Latitudinal coordinate.") # <<<<<<<<<<<<<< + * + * def __getnalpha(self): + */ + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 263, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Latitudinal_coordinate) < 0) __PYX_ERR(1, 263, __pyx_L1_error) + + /* "src/tpm_vec.pxi":262 + * self.setZ(delta) + * + * delta = property(__getdelta, __setdelta, # <<<<<<<<<<<<<< + * doc="Latitudinal coordinate.") + * + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__delta, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_delta, __pyx_t_1) < 0) __PYX_ERR(1, 262, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":268 + /* "src/tpm_vec.pxi":268 * return tpm_vec.v3alpha(self.getV3()) * * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") # <<<<<<<<<<<<<< * * def __getndelta(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____getnalpha); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_getnalpha); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 268, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_106)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 268, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_alpha_normalized_to_0_2) < 0) __PYX_ERR(1, 268, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__nalpha, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_nalpha, __pyx_t_3) < 0) __PYX_ERR(1, 268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":273 + /* "src/tpm_vec.pxi":273 * return tpm_vec.v3delta(self.getV3()) * * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") # <<<<<<<<<<<<<< * * def s2c(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP, __pyx_n_s____getndelta); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V3SP, __pyx_n_s_getndelta); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 273, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_107)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V3SP->tp_dict, __pyx_n_s__ndelta, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V3SP); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":380 - * self._v6.v[VEL].v[2] = 0.0 - * - * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, # <<<<<<<<<<<<<< - * xdot=0.0, ydot=0.0, zdot=0.0): - * self._v6.v[POS].type = ctype - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_24 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_25 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_26 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 273, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_delta_normalized_to_2_2) < 0) __PYX_ERR(1, 273, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_k_27 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V3SP->tp_dict, __pyx_n_s_ndelta, __pyx_t_2) < 0) __PYX_ERR(1, 273, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + PyType_Modified(__pyx_ptype_3tpm_V3SP); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":381 + /* "src/tpm_vec.pxi":380 + * self._v6.v[VEL].v[2] = 0.0 * - * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, - * xdot=0.0, ydot=0.0, zdot=0.0): # <<<<<<<<<<<<<< + * def __init__(self, ctype=CARTESIAN, x=0.0, y=0.0, z=0.0, # <<<<<<<<<<<<<< + * xdot=0.0, ydot=0.0, zdot=0.0): * self._v6.v[POS].type = ctype - * self._v6.v[POS].v[0] = x */ - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_28 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_29 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_k_30 = __pyx_t_2; + __pyx_k__16 = __pyx_t_2; __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":486 + /* "src/tpm_vec.pxi":486 * """ * # The following is read only. * ctype = CARTESIAN # <<<<<<<<<<<<<< * def __init__(self, x=0.0, y=0.0, z=0.0, xdot=0.0, ydot=0.0, zdot=0.0): * self.x = x */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__CARTESIAN); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_CARTESIAN); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 486, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__ctype, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_ctype, __pyx_t_2) < 0) __PYX_ERR(1, 486, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":487 - * # The following is read only. - * ctype = CARTESIAN - * def __init__(self, x=0.0, y=0.0, z=0.0, xdot=0.0, ydot=0.0, zdot=0.0): # <<<<<<<<<<<<<< - * self.x = x - * self.y = y - */ - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_32 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_33 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_34 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_35 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_36 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 487; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_37 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":501 + /* "src/tpm_vec.pxi":501 * self.setX(x) * * x = property(__getx, __setx, doc="X coordinate.") # <<<<<<<<<<<<<< * * def __gety(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____getx); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_getx); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 501, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____setx); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_setx); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 501, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 501, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_100)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__x, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 501, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_X_coordinate) < 0) __PYX_ERR(1, 501, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 501, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_x, __pyx_t_2) < 0) __PYX_ERR(1, 501, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":508 + /* "src/tpm_vec.pxi":508 * def __sety(self, y): * self.setY(y) * y = property(__gety, __sety, doc="Y coordinate.") # <<<<<<<<<<<<<< * * def __getz(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____gety); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_gety); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 508, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____sety); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_sety); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 508, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 508, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_101)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__y, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 508, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Y_coordinate) < 0) __PYX_ERR(1, 508, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 508, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_y, __pyx_t_2) < 0) __PYX_ERR(1, 508, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":516 + /* "src/tpm_vec.pxi":516 * self.setZ(z) * * z = property(__getz, __setz, doc="Z coordinate.") # <<<<<<<<<<<<<< * * def __getxdot(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____getz); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_getz); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____setz); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_setz); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 516, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_102)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__z, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 516, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Z_coordinate) < 0) __PYX_ERR(1, 516, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 516, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_z, __pyx_t_2) < 0) __PYX_ERR(1, 516, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":524 + /* "src/tpm_vec.pxi":524 * self.setXdot(xdot) * * xdot = property(__getxdot, __setxdot, # <<<<<<<<<<<<<< * doc="Rate of change of X coordinate.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____getxdot); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_getxdot); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____setxdot); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_setxdot); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 524, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_108)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__xdot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_vec.pxi":525 + * + * xdot = property(__getxdot, __setxdot, + * doc="Rate of change of X coordinate.") # <<<<<<<<<<<<<< + * + * def __getydot(self): + */ + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 525, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Rate_of_change_of_X_coordinate) < 0) __PYX_ERR(1, 525, __pyx_L1_error) + + /* "src/tpm_vec.pxi":524 + * self.setXdot(xdot) + * + * xdot = property(__getxdot, __setxdot, # <<<<<<<<<<<<<< + * doc="Rate of change of X coordinate.") + * + */ + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 524, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_xdot, __pyx_t_2) < 0) __PYX_ERR(1, 524, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":533 + /* "src/tpm_vec.pxi":533 * self.setYdot(ydot) * * ydot = property(__getydot, __setydot, # <<<<<<<<<<<<<< * doc="Rate of change of Y coordinate.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____getydot); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_getydot); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 533, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____setydot); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_setydot); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 533, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 533, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_109)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__ydot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_vec.pxi":534 + * + * ydot = property(__getydot, __setydot, + * doc="Rate of change of Y coordinate.") # <<<<<<<<<<<<<< + * + * def __getzdot(self): + */ + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 534, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Rate_of_change_of_Y_coordinate) < 0) __PYX_ERR(1, 534, __pyx_L1_error) + + /* "src/tpm_vec.pxi":533 + * self.setYdot(ydot) + * + * ydot = property(__getydot, __setydot, # <<<<<<<<<<<<<< + * doc="Rate of change of Y coordinate.") + * + */ + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 533, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_ydot, __pyx_t_2) < 0) __PYX_ERR(1, 533, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":542 + /* "src/tpm_vec.pxi":542 * self.setZdot(zdot) * * zdot = property(__getzdot, __setzdot, # <<<<<<<<<<<<<< * doc="Rate of change of Z coordinate.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____getzdot); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_getzdot); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____setzdot); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_setzdot); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 542, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_110)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__zdot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_vec.pxi":543 + * + * zdot = property(__getzdot, __setzdot, + * doc="Rate of change of Z coordinate.") # <<<<<<<<<<<<<< + * + * def __getPOS(self): + */ + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 543, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Rate_of_change_of_Z_coordinate) < 0) __PYX_ERR(1, 543, __pyx_L1_error) + + /* "src/tpm_vec.pxi":542 + * self.setZdot(zdot) + * + * zdot = property(__getzdot, __setzdot, # <<<<<<<<<<<<<< + * doc="Rate of change of Z coordinate.") + * + */ + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 542, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_zdot, __pyx_t_2) < 0) __PYX_ERR(1, 542, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":553 + /* "src/tpm_vec.pxi":553 * self.setPOS(v3cp.getV3()) * * pos = property(__getPOS, __setPOS, doc="The position component.") # <<<<<<<<<<<<<< * * def __sub__(V6C self, V6C other): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____getPOS); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_getPOS); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C, __pyx_n_s____setPOS); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6C, __pyx_n_s_setPOS); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 553, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_111)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6C->tp_dict, __pyx_n_s__pos, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 553, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_The_position_component) < 0) __PYX_ERR(1, 553, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 553, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6C->tp_dict, __pyx_n_s_pos, __pyx_t_2) < 0) __PYX_ERR(1, 553, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6C); + PyType_Modified(__pyx_ptype_3tpm_V6C); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":715 + /* "src/tpm_vec.pxi":715 * """ * # The following is read only. * ctype = SPHERICAL # <<<<<<<<<<<<<< * def __init__(self, r=0.0, alpha=0.0, delta=0.0, rdot=0.0, * alphadot=0.0, deltadot=0.0): */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__SPHERICAL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 715; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_SPHERICAL); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__ctype, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 715; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_ctype, __pyx_t_2) < 0) __PYX_ERR(1, 715, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":716 - * # The following is read only. - * ctype = SPHERICAL - * def __init__(self, r=0.0, alpha=0.0, delta=0.0, rdot=0.0, # <<<<<<<<<<<<<< - * alphadot=0.0, deltadot=0.0): - * self.setType(SPHERICAL) # Set type of the underlying V6. Why - */ - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_42 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_43 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_44 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_45 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":717 - * ctype = SPHERICAL - * def __init__(self, r=0.0, alpha=0.0, delta=0.0, rdot=0.0, - * alphadot=0.0, deltadot=0.0): # <<<<<<<<<<<<<< - * self.setType(SPHERICAL) # Set type of the underlying V6. Why - * # can't I call the inherited V6.__init__()? - */ - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 717; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_46 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 717; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_47 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":733 + /* "src/tpm_vec.pxi":733 * self.setX(r) * * r = property(__getr, __setr, doc="R coordinate.") # <<<<<<<<<<<<<< * * def __getalpha(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getr); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getr); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 733, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____setr); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_setr); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 733, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 733, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_112)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__r, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 733, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_R_coordinate) < 0) __PYX_ERR(1, 733, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 733, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_r, __pyx_t_2) < 0) __PYX_ERR(1, 733, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":741 + /* "src/tpm_vec.pxi":741 * self.setY(alpha) * * alpha = property(__getalpha, __setalpha, doc="ALPHA coordinate.") # <<<<<<<<<<<<<< * * def __getdelta(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getalpha); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getalpha); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____setalpha); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_setalpha); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 741, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_113)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__alpha, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 741, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_ALPHA_coordinate) < 0) __PYX_ERR(1, 741, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 741, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_alpha, __pyx_t_2) < 0) __PYX_ERR(1, 741, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":747 + /* "src/tpm_vec.pxi":747 * def __setdelta(self, delta): * self.setZ(delta) * delta = property(__getdelta, __setdelta, doc="DELTA coordinate.") # <<<<<<<<<<<<<< * * def __getrdot(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getdelta); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getdelta); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____setdelta); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_setdelta); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 747, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_114)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__delta, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 747, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_DELTA_coordinate) < 0) __PYX_ERR(1, 747, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 747, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_delta, __pyx_t_2) < 0) __PYX_ERR(1, 747, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":755 + /* "src/tpm_vec.pxi":755 * self.setXdot(rdot) * * rdot = property(__getrdot, __setrdot, # <<<<<<<<<<<<<< * doc="Rate of change of R coordinate.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getrdot); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getrdot); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____setrdot); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_setrdot); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 755, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_115)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__rdot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_vec.pxi":756 + * + * rdot = property(__getrdot, __setrdot, + * doc="Rate of change of R coordinate.") # <<<<<<<<<<<<<< + * + * def __getalphadot(self): + */ + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 756, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Rate_of_change_of_R_coordinate) < 0) __PYX_ERR(1, 756, __pyx_L1_error) + + /* "src/tpm_vec.pxi":755 + * self.setXdot(rdot) + * + * rdot = property(__getrdot, __setrdot, # <<<<<<<<<<<<<< + * doc="Rate of change of R coordinate.") + * + */ + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 755, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_rdot, __pyx_t_2) < 0) __PYX_ERR(1, 755, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":764 + /* "src/tpm_vec.pxi":764 * self.setYdot(alphadot) * * alphadot = property(__getalphadot, __setalphadot, # <<<<<<<<<<<<<< * doc="Rate of change of ALPHA coordinate.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getalphadot); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getalphadot); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 764, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____setalphadot); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_setalphadot); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 764, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 764, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); + __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + __pyx_t_2 = 0; + __pyx_t_3 = 0; + + /* "src/tpm_vec.pxi":765 + * + * alphadot = property(__getalphadot, __setalphadot, + * doc="Rate of change of ALPHA coordinate.") # <<<<<<<<<<<<<< + * + * def __getdeltadot(self): + */ + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 765, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Rate_of_change_of_ALPHA_coordina) < 0) __PYX_ERR(1, 765, __pyx_L1_error) + + /* "src/tpm_vec.pxi":764 + * self.setYdot(alphadot) + * + * alphadot = property(__getalphadot, __setalphadot, # <<<<<<<<<<<<<< + * doc="Rate of change of ALPHA coordinate.") + * + */ + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 764, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_alphadot, __pyx_t_2) < 0) __PYX_ERR(1, 764, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + PyType_Modified(__pyx_ptype_3tpm_V6S); + + /* "src/tpm_vec.pxi":773 + * self.setZdot(deltadot) + * + * deltadot = property(__getdeltadot, __setdeltadot, # <<<<<<<<<<<<<< + * doc="Rate of change of DELTA coordinate.") + * + */ + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getdeltadot); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 773, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_setdeltadot); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 773, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 773, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); __pyx_t_2 = 0; __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_116)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__alphadot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":773 + /* "src/tpm_vec.pxi":774 + * + * deltadot = property(__getdeltadot, __setdeltadot, + * doc="Rate of change of DELTA coordinate.") # <<<<<<<<<<<<<< + * + * def __getnalpha(self): + */ + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 774, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Rate_of_change_of_DELTA_coordina) < 0) __PYX_ERR(1, 774, __pyx_L1_error) + + /* "src/tpm_vec.pxi":773 * self.setZdot(deltadot) * * deltadot = property(__getdeltadot, __setdeltadot, # <<<<<<<<<<<<<< * doc="Rate of change of DELTA coordinate.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getdeltadot); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____setdeltadot); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_2 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_117)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__deltadot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_deltadot, __pyx_t_2) < 0) __PYX_ERR(1, 773, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":779 + /* "src/tpm_vec.pxi":779 * return tpm_vec.v6alpha(self.getV6()) * * nalpha = property(__getnalpha, doc="alpha normalized to [0, 2).") # <<<<<<<<<<<<<< * * def __getndelta(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getnalpha); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getnalpha); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 779, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 779, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_106)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 779, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_alpha_normalized_to_0_2) < 0) __PYX_ERR(1, 779, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 779, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__nalpha, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_nalpha, __pyx_t_1) < 0) __PYX_ERR(1, 779, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":784 + /* "src/tpm_vec.pxi":784 * return tpm_vec.v6delta(self.getV6()) * * ndelta = property(__getndelta, doc="delta normalized to [-/2, /2].") # <<<<<<<<<<<<<< * * def s2c(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S, __pyx_n_s____getndelta); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_V6S, __pyx_n_s_getndelta); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 784, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_107)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 784, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_delta_normalized_to_2_2) < 0) __PYX_ERR(1, 784, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_V6S->tp_dict, __pyx_n_s__ndelta, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_V6S->tp_dict, __pyx_n_s_ndelta, __pyx_t_3) < 0) __PYX_ERR(1, 784, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_V6S); - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":842 - * self._m3 = tpm_vec.m3I(1.0) - * - * def __init__(self, xx=1.0, xy=0.0, xz=0.0, yx=0.0, yy=1.0, yz=0.0, # <<<<<<<<<<<<<< - * zx=0.0, zy=0.0, zz=1.0): - * self._m3.m[0][0] = xx - */ - __pyx_t_3 = PyFloat_FromDouble(1.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_48 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_49 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_50 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_51 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(1.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_52 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_53 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":843 - * - * def __init__(self, xx=1.0, xy=0.0, xz=0.0, yx=0.0, yy=1.0, yz=0.0, - * zx=0.0, zy=0.0, zz=1.0): # <<<<<<<<<<<<<< - * self._m3.m[0][0] = xx - * self._m3.m[0][1] = xy - */ - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_54 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_55 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(1.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_56 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + PyType_Modified(__pyx_ptype_3tpm_V6S); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":860 + /* "src/tpm_vec.pxi":860 * self._m3.m[0][0] = xx * * xx = property(__getxx, __setxx, doc="XX.") # <<<<<<<<<<<<<< * * def __getxy(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getxx); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getxx); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setxx); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setxx); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 860, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_118)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 860, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_XX) < 0) __PYX_ERR(1, 860, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__xx, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_xx, __pyx_t_3) < 0) __PYX_ERR(1, 860, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":868 + /* "src/tpm_vec.pxi":868 * self._m3.m[0][1] = xy * * xy = property(__getxy, __setxy, doc="XY.") # <<<<<<<<<<<<<< * * def __getxz(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getxy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getxy); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 868, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setxy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 868, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 868, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_119)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 868, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_XY) < 0) __PYX_ERR(1, 868, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 868, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__xy, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_xy, __pyx_t_3) < 0) __PYX_ERR(1, 868, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":875 + /* "src/tpm_vec.pxi":875 * self._m3.m[1][2] = xz * * xz = property(__getxz, __setxz, doc="XZ.") # <<<<<<<<<<<<<< * * def __getyx(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getxz); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getxz); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 875, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setxz); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setxz); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 875, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_120)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 875, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_XZ) < 0) __PYX_ERR(1, 875, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 875, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__xz, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 875; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_xz, __pyx_t_3) < 0) __PYX_ERR(1, 875, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":883 + /* "src/tpm_vec.pxi":883 * self._m3.m[1][0] = yx * * yx = property(__getyx, __setyx, doc="YX.") # <<<<<<<<<<<<<< * * def __getyy(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getyx); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getyx); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 883, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setyx); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setyx); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 883, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 883, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_121)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 883, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_YX) < 0) __PYX_ERR(1, 883, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 883, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__yx, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_yx, __pyx_t_3) < 0) __PYX_ERR(1, 883, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":891 + /* "src/tpm_vec.pxi":891 * self._m3.m[1][1] = yy * * yy = property(__getyy, __setyy, doc="YY.") # <<<<<<<<<<<<<< * * def __getyz(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getyy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getyy); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setyy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setyy); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 891, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_122)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 891, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_YY) < 0) __PYX_ERR(1, 891, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__yy, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_yy, __pyx_t_3) < 0) __PYX_ERR(1, 891, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":899 + /* "src/tpm_vec.pxi":899 * self._m3.m[1][2] = yz * * yz = property(__getyz, __setyz, doc="YZ.") # <<<<<<<<<<<<<< * * def __getzx(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getyz); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getyz); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setyz); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setyz); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 899, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_123)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 899, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_YZ) < 0) __PYX_ERR(1, 899, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__yz, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_yz, __pyx_t_3) < 0) __PYX_ERR(1, 899, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":907 + /* "src/tpm_vec.pxi":907 * self._m3.m[2][0] = zx * * zx = property(__getzx, __setzx, doc="ZX.") # <<<<<<<<<<<<<< * * def __getzy(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getzx); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getzx); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 907, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setzx); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setzx); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 907, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 907, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_124)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 907, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_ZX) < 0) __PYX_ERR(1, 907, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 907, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__zx, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_zx, __pyx_t_3) < 0) __PYX_ERR(1, 907, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":915 + /* "src/tpm_vec.pxi":915 * self._m3.m[2][1] = zy * * zy = property(__getzy, __setzy, doc="ZY.") # <<<<<<<<<<<<<< * * def __getzz(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getzy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getzy); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 915, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setzy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setzy); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 915, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 915, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_125)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 915, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_ZY) < 0) __PYX_ERR(1, 915, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 915, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__zy, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 915; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_zy, __pyx_t_3) < 0) __PYX_ERR(1, 915, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":923 + /* "src/tpm_vec.pxi":923 * self._m3.m[2][2] = zz * * zz = property(__getzz, __setzz, doc="ZZ.") # <<<<<<<<<<<<<< * * cdef tpm_vec.M3 getM3(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____getzz); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_getzz); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 923, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M3, __pyx_n_s____setzz); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M3, __pyx_n_s_setzz); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 923, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 923, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_126)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 923, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_ZZ) < 0) __PYX_ERR(1, 923, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 923, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M3->tp_dict, __pyx_n_s__zz, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M3->tp_dict, __pyx_n_s_zz, __pyx_t_3) < 0) __PYX_ERR(1, 923, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M3); + PyType_Modified(__pyx_ptype_3tpm_M3); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1053 + /* "src/tpm_vec.pxi":1053 * self._m6.m[0][0] = m3.getM3() * * pp = property(__getPP, __setPP, doc="PP component.") # <<<<<<<<<<<<<< * * def __getPV(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____getPP); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_getPP); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____setPP); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_setPP); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1053, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_127)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1053, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_PP_component) < 0) __PYX_ERR(1, 1053, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M6->tp_dict, __pyx_n_s__pp, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M6->tp_dict, __pyx_n_s_pp, __pyx_t_3) < 0) __PYX_ERR(1, 1053, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M6); + PyType_Modified(__pyx_ptype_3tpm_M6); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1063 + /* "src/tpm_vec.pxi":1063 * self._m6.m[0][1] = m3.getM3() * * pv = property(__getPV, __setPV, doc="PV component.") # <<<<<<<<<<<<<< * * def __getVP(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____getPV); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_getPV); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____setPV); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_setPV); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1063, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_128)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1063, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_PV_component) < 0) __PYX_ERR(1, 1063, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M6->tp_dict, __pyx_n_s__pv, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1063; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M6->tp_dict, __pyx_n_s_pv, __pyx_t_3) < 0) __PYX_ERR(1, 1063, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M6); + PyType_Modified(__pyx_ptype_3tpm_M6); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1073 + /* "src/tpm_vec.pxi":1073 * self._m6.m[1][0] = m3.getM3() * * vp = property(__getVP, __setVP, doc="VP component.") # <<<<<<<<<<<<<< * * def __getVV(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____getVP); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_getVP); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1073, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____setVP); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_setVP); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1073, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1073, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_129)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1073, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_VP_component) < 0) __PYX_ERR(1, 1073, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1073, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M6->tp_dict, __pyx_n_s__vp, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1073; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M6->tp_dict, __pyx_n_s_vp, __pyx_t_3) < 0) __PYX_ERR(1, 1073, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M6); + PyType_Modified(__pyx_ptype_3tpm_M6); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1083 + /* "src/tpm_vec.pxi":1083 * self._m6.m[1][1] = m3.getM3() * * vv = property(__getVV, __setVV, doc="VV component.") # <<<<<<<<<<<<<< * * def __add__(M6 self, M6 other): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____getVV); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_getVV); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_M6, __pyx_n_s____setVV); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_M6, __pyx_n_s_setVV); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(1, 1083, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_130)) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 1083, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_VV_component) < 0) __PYX_ERR(1, 1083, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_M6->tp_dict, __pyx_n_s__vv, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_M6->tp_dict, __pyx_n_s_vv, __pyx_t_3) < 0) __PYX_ERR(1, 1083, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_M6); + PyType_Modified(__pyx_ptype_3tpm_M6); - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1150 + /* "src/tpm_vec.pxi":1150 * * * def m3rx(theta): # <<<<<<<<<<<<<< * """A rotation matrix for rotation about X-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_36m3rx, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_73m3rx, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1150, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m3rx, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m3rx, __pyx_t_3) < 0) __PYX_ERR(1, 1150, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1177 + /* "src/tpm_vec.pxi":1177 * * * def m3rxdot(theta, thetadot): # <<<<<<<<<<<<<< * """Derivative of rotation matrix for rotation about X-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_37m3rxdot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_75m3rxdot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m3rxdot, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m3rxdot, __pyx_t_3) < 0) __PYX_ERR(1, 1177, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1207 + /* "src/tpm_vec.pxi":1207 * * * def m3ry(theta): # <<<<<<<<<<<<<< * """A rotation matrix for rotation about Y-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_38m3ry, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_77m3ry, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m3ry, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m3ry, __pyx_t_3) < 0) __PYX_ERR(1, 1207, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1234 + /* "src/tpm_vec.pxi":1234 * * * def m3rydot(theta, thetadot): # <<<<<<<<<<<<<< * """Derivative of rotation matrix for rotation about Y-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_39m3rydot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_79m3rydot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m3rydot, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m3rydot, __pyx_t_3) < 0) __PYX_ERR(1, 1234, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1263 + /* "src/tpm_vec.pxi":1263 * * * def m3rz(theta): # <<<<<<<<<<<<<< * """Rotation matrix for rotation about Z-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_40m3rz, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_81m3rz, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m3rz, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m3rz, __pyx_t_3) < 0) __PYX_ERR(1, 1263, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1290 + /* "src/tpm_vec.pxi":1290 * * * def m3rzdot(theta, thetadot): # <<<<<<<<<<<<<< * """Derivative of rotation matrix for rotation about Z-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_41m3rzdot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_83m3rzdot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m3rzdot, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m3rzdot, __pyx_t_3) < 0) __PYX_ERR(1, 1290, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1319 + /* "src/tpm_vec.pxi":1319 * * * def m6qx(x, xdot): # <<<<<<<<<<<<<< * """An M6 matrix for rotation about X-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_42m6qx, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_85m6qx, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m6qx, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m6qx, __pyx_t_3) < 0) __PYX_ERR(1, 1319, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1340 + /* "src/tpm_vec.pxi":1340 * * * def m6qy(y, ydot): # <<<<<<<<<<<<<< * """An M6 matrix for rotation about Y-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_43m6qy, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_87m6qy, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1340, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m6qy, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m6qy, __pyx_t_3) < 0) __PYX_ERR(1, 1340, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_vec.pxi":1361 + /* "src/tpm_vec.pxi":1361 * * * def m6qz(z, zdot): # <<<<<<<<<<<<<< * """An M6 matrix for rotation about Z-axis. * */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_44m6qz, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1361; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_3tpm_89m6qz, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 1361, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__m6qz, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 1361; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_m6qz, __pyx_t_3) < 0) __PYX_ERR(1, 1361, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":5 + /* "src/tpm_tpm.pxi":5 * # cimport tpm_vec * * TPM_S00 = tpm_tpm.TPM_S00 # <<<<<<<<<<<<<< * TPM_S01 = tpm_tpm.TPM_S01 * TPM_S02 = tpm_tpm.TPM_S02 */ - __pyx_t_3 = PyInt_FromLong(TPM_S00); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S00); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S00, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S00, __pyx_t_3) < 0) __PYX_ERR(4, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":6 + /* "src/tpm_tpm.pxi":6 * * TPM_S00 = tpm_tpm.TPM_S00 * TPM_S01 = tpm_tpm.TPM_S01 # <<<<<<<<<<<<<< * TPM_S02 = tpm_tpm.TPM_S02 * TPM_S03 = tpm_tpm.TPM_S03 */ - __pyx_t_3 = PyInt_FromLong(TPM_S01); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S01); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S01, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S01, __pyx_t_3) < 0) __PYX_ERR(4, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":7 + /* "src/tpm_tpm.pxi":7 * TPM_S00 = tpm_tpm.TPM_S00 * TPM_S01 = tpm_tpm.TPM_S01 * TPM_S02 = tpm_tpm.TPM_S02 # <<<<<<<<<<<<<< * TPM_S03 = tpm_tpm.TPM_S03 * TPM_S04 = tpm_tpm.TPM_S04 */ - __pyx_t_3 = PyInt_FromLong(TPM_S02); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S02); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S02, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S02, __pyx_t_3) < 0) __PYX_ERR(4, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":8 + /* "src/tpm_tpm.pxi":8 * TPM_S01 = tpm_tpm.TPM_S01 * TPM_S02 = tpm_tpm.TPM_S02 * TPM_S03 = tpm_tpm.TPM_S03 # <<<<<<<<<<<<<< * TPM_S04 = tpm_tpm.TPM_S04 * TPM_S05 = tpm_tpm.TPM_S05 */ - __pyx_t_3 = PyInt_FromLong(TPM_S03); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S03); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S03, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S03, __pyx_t_3) < 0) __PYX_ERR(4, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":9 + /* "src/tpm_tpm.pxi":9 * TPM_S02 = tpm_tpm.TPM_S02 * TPM_S03 = tpm_tpm.TPM_S03 * TPM_S04 = tpm_tpm.TPM_S04 # <<<<<<<<<<<<<< * TPM_S05 = tpm_tpm.TPM_S05 * TPM_S06 = tpm_tpm.TPM_S06 */ - __pyx_t_3 = PyInt_FromLong(TPM_S04); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S04); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S04, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S04, __pyx_t_3) < 0) __PYX_ERR(4, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":10 + /* "src/tpm_tpm.pxi":10 * TPM_S03 = tpm_tpm.TPM_S03 * TPM_S04 = tpm_tpm.TPM_S04 * TPM_S05 = tpm_tpm.TPM_S05 # <<<<<<<<<<<<<< * TPM_S06 = tpm_tpm.TPM_S06 * TPM_S07 = tpm_tpm.TPM_S07 */ - __pyx_t_3 = PyInt_FromLong(TPM_S05); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S05); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S05, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S05, __pyx_t_3) < 0) __PYX_ERR(4, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":11 + /* "src/tpm_tpm.pxi":11 * TPM_S04 = tpm_tpm.TPM_S04 * TPM_S05 = tpm_tpm.TPM_S05 * TPM_S06 = tpm_tpm.TPM_S06 # <<<<<<<<<<<<<< * TPM_S07 = tpm_tpm.TPM_S07 * TPM_S08 = tpm_tpm.TPM_S08 */ - __pyx_t_3 = PyInt_FromLong(TPM_S06); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S06); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S06, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S06, __pyx_t_3) < 0) __PYX_ERR(4, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":12 + /* "src/tpm_tpm.pxi":12 * TPM_S05 = tpm_tpm.TPM_S05 * TPM_S06 = tpm_tpm.TPM_S06 * TPM_S07 = tpm_tpm.TPM_S07 # <<<<<<<<<<<<<< * TPM_S08 = tpm_tpm.TPM_S08 * TPM_S09 = tpm_tpm.TPM_S09 */ - __pyx_t_3 = PyInt_FromLong(TPM_S07); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S07); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S07, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S07, __pyx_t_3) < 0) __PYX_ERR(4, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":13 + /* "src/tpm_tpm.pxi":13 * TPM_S06 = tpm_tpm.TPM_S06 * TPM_S07 = tpm_tpm.TPM_S07 * TPM_S08 = tpm_tpm.TPM_S08 # <<<<<<<<<<<<<< * TPM_S09 = tpm_tpm.TPM_S09 * TPM_S10 = tpm_tpm.TPM_S10 */ - __pyx_t_3 = PyInt_FromLong(TPM_S08); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S08); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S08, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S08, __pyx_t_3) < 0) __PYX_ERR(4, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":14 + /* "src/tpm_tpm.pxi":14 * TPM_S07 = tpm_tpm.TPM_S07 * TPM_S08 = tpm_tpm.TPM_S08 * TPM_S09 = tpm_tpm.TPM_S09 # <<<<<<<<<<<<<< * TPM_S10 = tpm_tpm.TPM_S10 * TPM_S11 = tpm_tpm.TPM_S11 */ - __pyx_t_3 = PyInt_FromLong(TPM_S09); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S09); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S09, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S09, __pyx_t_3) < 0) __PYX_ERR(4, 14, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":15 + /* "src/tpm_tpm.pxi":15 * TPM_S08 = tpm_tpm.TPM_S08 * TPM_S09 = tpm_tpm.TPM_S09 * TPM_S10 = tpm_tpm.TPM_S10 # <<<<<<<<<<<<<< * TPM_S11 = tpm_tpm.TPM_S11 * TPM_S12 = tpm_tpm.TPM_S12 */ - __pyx_t_3 = PyInt_FromLong(TPM_S10); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S10); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S10, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S10, __pyx_t_3) < 0) __PYX_ERR(4, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":16 + /* "src/tpm_tpm.pxi":16 * TPM_S09 = tpm_tpm.TPM_S09 * TPM_S10 = tpm_tpm.TPM_S10 * TPM_S11 = tpm_tpm.TPM_S11 # <<<<<<<<<<<<<< * TPM_S12 = tpm_tpm.TPM_S12 * TPM_S13 = tpm_tpm.TPM_S13 */ - __pyx_t_3 = PyInt_FromLong(TPM_S11); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S11); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S11, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S11, __pyx_t_3) < 0) __PYX_ERR(4, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":17 + /* "src/tpm_tpm.pxi":17 * TPM_S10 = tpm_tpm.TPM_S10 * TPM_S11 = tpm_tpm.TPM_S11 * TPM_S12 = tpm_tpm.TPM_S12 # <<<<<<<<<<<<<< * TPM_S13 = tpm_tpm.TPM_S13 * TPM_S14 = tpm_tpm.TPM_S14 */ - __pyx_t_3 = PyInt_FromLong(TPM_S12); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S12); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S12, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S12, __pyx_t_3) < 0) __PYX_ERR(4, 17, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":18 + /* "src/tpm_tpm.pxi":18 * TPM_S11 = tpm_tpm.TPM_S11 * TPM_S12 = tpm_tpm.TPM_S12 * TPM_S13 = tpm_tpm.TPM_S13 # <<<<<<<<<<<<<< * TPM_S14 = tpm_tpm.TPM_S14 * TPM_S15 = tpm_tpm.TPM_S15 */ - __pyx_t_3 = PyInt_FromLong(TPM_S13); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S13); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S13, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S13, __pyx_t_3) < 0) __PYX_ERR(4, 18, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":19 + /* "src/tpm_tpm.pxi":19 * TPM_S12 = tpm_tpm.TPM_S12 * TPM_S13 = tpm_tpm.TPM_S13 * TPM_S14 = tpm_tpm.TPM_S14 # <<<<<<<<<<<<<< * TPM_S15 = tpm_tpm.TPM_S15 * TPM_S16 = tpm_tpm.TPM_S16 */ - __pyx_t_3 = PyInt_FromLong(TPM_S14); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S14); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S14, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S14, __pyx_t_3) < 0) __PYX_ERR(4, 19, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":20 + /* "src/tpm_tpm.pxi":20 * TPM_S13 = tpm_tpm.TPM_S13 * TPM_S14 = tpm_tpm.TPM_S14 * TPM_S15 = tpm_tpm.TPM_S15 # <<<<<<<<<<<<<< * TPM_S16 = tpm_tpm.TPM_S16 * TPM_S17 = tpm_tpm.TPM_S17 */ - __pyx_t_3 = PyInt_FromLong(TPM_S15); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S15); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S15, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S15, __pyx_t_3) < 0) __PYX_ERR(4, 20, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":21 + /* "src/tpm_tpm.pxi":21 * TPM_S14 = tpm_tpm.TPM_S14 * TPM_S15 = tpm_tpm.TPM_S15 * TPM_S16 = tpm_tpm.TPM_S16 # <<<<<<<<<<<<<< * TPM_S17 = tpm_tpm.TPM_S17 * TPM_S18 = tpm_tpm.TPM_S18 */ - __pyx_t_3 = PyInt_FromLong(TPM_S16); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S16); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S16, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S16, __pyx_t_3) < 0) __PYX_ERR(4, 21, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":22 + /* "src/tpm_tpm.pxi":22 * TPM_S15 = tpm_tpm.TPM_S15 * TPM_S16 = tpm_tpm.TPM_S16 * TPM_S17 = tpm_tpm.TPM_S17 # <<<<<<<<<<<<<< * TPM_S18 = tpm_tpm.TPM_S18 * TPM_S19 = tpm_tpm.TPM_S19 */ - __pyx_t_3 = PyInt_FromLong(TPM_S17); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S17); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S17, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S17, __pyx_t_3) < 0) __PYX_ERR(4, 22, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":23 + /* "src/tpm_tpm.pxi":23 * TPM_S16 = tpm_tpm.TPM_S16 * TPM_S17 = tpm_tpm.TPM_S17 * TPM_S18 = tpm_tpm.TPM_S18 # <<<<<<<<<<<<<< * TPM_S19 = tpm_tpm.TPM_S19 * TPM_S20 = tpm_tpm.TPM_S20 */ - __pyx_t_3 = PyInt_FromLong(TPM_S18); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S18); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S18, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S18, __pyx_t_3) < 0) __PYX_ERR(4, 23, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":24 + /* "src/tpm_tpm.pxi":24 * TPM_S17 = tpm_tpm.TPM_S17 * TPM_S18 = tpm_tpm.TPM_S18 * TPM_S19 = tpm_tpm.TPM_S19 # <<<<<<<<<<<<<< * TPM_S20 = tpm_tpm.TPM_S20 * TPM_S21 = tpm_tpm.TPM_S21 */ - __pyx_t_3 = PyInt_FromLong(TPM_S19); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S19); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S19, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S19, __pyx_t_3) < 0) __PYX_ERR(4, 24, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":25 + /* "src/tpm_tpm.pxi":25 * TPM_S18 = tpm_tpm.TPM_S18 * TPM_S19 = tpm_tpm.TPM_S19 * TPM_S20 = tpm_tpm.TPM_S20 # <<<<<<<<<<<<<< * TPM_S21 = tpm_tpm.TPM_S21 * N_TPM_STATES = tpm_tpm.N_TPM_STATES */ - __pyx_t_3 = PyInt_FromLong(TPM_S20); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S20); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 25, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S20, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S20, __pyx_t_3) < 0) __PYX_ERR(4, 25, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":26 + /* "src/tpm_tpm.pxi":26 * TPM_S19 = tpm_tpm.TPM_S19 * TPM_S20 = tpm_tpm.TPM_S20 * TPM_S21 = tpm_tpm.TPM_S21 # <<<<<<<<<<<<<< * N_TPM_STATES = tpm_tpm.N_TPM_STATES * */ - __pyx_t_3 = PyInt_FromLong(TPM_S21); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_S21); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_S21, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_S21, __pyx_t_3) < 0) __PYX_ERR(4, 26, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":27 + /* "src/tpm_tpm.pxi":27 * TPM_S20 = tpm_tpm.TPM_S20 * TPM_S21 = tpm_tpm.TPM_S21 * N_TPM_STATES = tpm_tpm.N_TPM_STATES # <<<<<<<<<<<<<< * * TPM_T00 = tpm_tpm.TPM_T00 */ - __pyx_t_3 = PyInt_FromLong(N_TPM_STATES); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(N_TPM_STATES); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__N_TPM_STATES, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_N_TPM_STATES, __pyx_t_3) < 0) __PYX_ERR(4, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":29 + /* "src/tpm_tpm.pxi":29 * N_TPM_STATES = tpm_tpm.N_TPM_STATES * * TPM_T00 = tpm_tpm.TPM_T00 # <<<<<<<<<<<<<< * TPM_T01 = tpm_tpm.TPM_T01 * TPM_T02 = tpm_tpm.TPM_T02 */ - __pyx_t_3 = PyInt_FromLong(TPM_T00); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T00); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 29, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T00, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T00, __pyx_t_3) < 0) __PYX_ERR(4, 29, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":30 + /* "src/tpm_tpm.pxi":30 * * TPM_T00 = tpm_tpm.TPM_T00 * TPM_T01 = tpm_tpm.TPM_T01 # <<<<<<<<<<<<<< * TPM_T02 = tpm_tpm.TPM_T02 * TPM_T03 = tpm_tpm.TPM_T03 */ - __pyx_t_3 = PyInt_FromLong(TPM_T01); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T01); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T01, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T01, __pyx_t_3) < 0) __PYX_ERR(4, 30, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":31 + /* "src/tpm_tpm.pxi":31 * TPM_T00 = tpm_tpm.TPM_T00 * TPM_T01 = tpm_tpm.TPM_T01 * TPM_T02 = tpm_tpm.TPM_T02 # <<<<<<<<<<<<<< * TPM_T03 = tpm_tpm.TPM_T03 * TPM_T04 = tpm_tpm.TPM_T04 */ - __pyx_t_3 = PyInt_FromLong(TPM_T02); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T02); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T02, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T02, __pyx_t_3) < 0) __PYX_ERR(4, 31, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":32 + /* "src/tpm_tpm.pxi":32 * TPM_T01 = tpm_tpm.TPM_T01 * TPM_T02 = tpm_tpm.TPM_T02 * TPM_T03 = tpm_tpm.TPM_T03 # <<<<<<<<<<<<<< * TPM_T04 = tpm_tpm.TPM_T04 * TPM_T05 = tpm_tpm.TPM_T05 */ - __pyx_t_3 = PyInt_FromLong(TPM_T03); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T03); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T03, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T03, __pyx_t_3) < 0) __PYX_ERR(4, 32, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":33 + /* "src/tpm_tpm.pxi":33 * TPM_T02 = tpm_tpm.TPM_T02 * TPM_T03 = tpm_tpm.TPM_T03 * TPM_T04 = tpm_tpm.TPM_T04 # <<<<<<<<<<<<<< * TPM_T05 = tpm_tpm.TPM_T05 * TPM_T06 = tpm_tpm.TPM_T06 */ - __pyx_t_3 = PyInt_FromLong(TPM_T04); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T04); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 33, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T04, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T04, __pyx_t_3) < 0) __PYX_ERR(4, 33, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":34 + /* "src/tpm_tpm.pxi":34 * TPM_T03 = tpm_tpm.TPM_T03 * TPM_T04 = tpm_tpm.TPM_T04 * TPM_T05 = tpm_tpm.TPM_T05 # <<<<<<<<<<<<<< * TPM_T06 = tpm_tpm.TPM_T06 * TPM_T07 = tpm_tpm.TPM_T07 */ - __pyx_t_3 = PyInt_FromLong(TPM_T05); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T05); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 34, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T05, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T05, __pyx_t_3) < 0) __PYX_ERR(4, 34, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":35 + /* "src/tpm_tpm.pxi":35 * TPM_T04 = tpm_tpm.TPM_T04 * TPM_T05 = tpm_tpm.TPM_T05 * TPM_T06 = tpm_tpm.TPM_T06 # <<<<<<<<<<<<<< * TPM_T07 = tpm_tpm.TPM_T07 * TPM_T08 = tpm_tpm.TPM_T08 */ - __pyx_t_3 = PyInt_FromLong(TPM_T06); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T06); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 35, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T06, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T06, __pyx_t_3) < 0) __PYX_ERR(4, 35, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":36 + /* "src/tpm_tpm.pxi":36 * TPM_T05 = tpm_tpm.TPM_T05 * TPM_T06 = tpm_tpm.TPM_T06 * TPM_T07 = tpm_tpm.TPM_T07 # <<<<<<<<<<<<<< * TPM_T08 = tpm_tpm.TPM_T08 * TPM_T09 = tpm_tpm.TPM_T09 */ - __pyx_t_3 = PyInt_FromLong(TPM_T07); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T07); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 36, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T07, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T07, __pyx_t_3) < 0) __PYX_ERR(4, 36, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":37 + /* "src/tpm_tpm.pxi":37 * TPM_T06 = tpm_tpm.TPM_T06 * TPM_T07 = tpm_tpm.TPM_T07 * TPM_T08 = tpm_tpm.TPM_T08 # <<<<<<<<<<<<<< * TPM_T09 = tpm_tpm.TPM_T09 * TPM_T10 = tpm_tpm.TPM_T10 */ - __pyx_t_3 = PyInt_FromLong(TPM_T08); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T08); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 37, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T08, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T08, __pyx_t_3) < 0) __PYX_ERR(4, 37, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":38 + /* "src/tpm_tpm.pxi":38 * TPM_T07 = tpm_tpm.TPM_T07 * TPM_T08 = tpm_tpm.TPM_T08 * TPM_T09 = tpm_tpm.TPM_T09 # <<<<<<<<<<<<<< * TPM_T10 = tpm_tpm.TPM_T10 * TPM_T11 = tpm_tpm.TPM_T11 */ - __pyx_t_3 = PyInt_FromLong(TPM_T09); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T09); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T09, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T09, __pyx_t_3) < 0) __PYX_ERR(4, 38, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":39 + /* "src/tpm_tpm.pxi":39 * TPM_T08 = tpm_tpm.TPM_T08 * TPM_T09 = tpm_tpm.TPM_T09 * TPM_T10 = tpm_tpm.TPM_T10 # <<<<<<<<<<<<<< * TPM_T11 = tpm_tpm.TPM_T11 * TPM_T12 = tpm_tpm.TPM_T12 */ - __pyx_t_3 = PyInt_FromLong(TPM_T10); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T10); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T10, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T10, __pyx_t_3) < 0) __PYX_ERR(4, 39, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":40 + /* "src/tpm_tpm.pxi":40 * TPM_T09 = tpm_tpm.TPM_T09 * TPM_T10 = tpm_tpm.TPM_T10 * TPM_T11 = tpm_tpm.TPM_T11 # <<<<<<<<<<<<<< * TPM_T12 = tpm_tpm.TPM_T12 * TPM_T13 = tpm_tpm.TPM_T13 */ - __pyx_t_3 = PyInt_FromLong(TPM_T11); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T11); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T11, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T11, __pyx_t_3) < 0) __PYX_ERR(4, 40, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":41 + /* "src/tpm_tpm.pxi":41 * TPM_T10 = tpm_tpm.TPM_T10 * TPM_T11 = tpm_tpm.TPM_T11 * TPM_T12 = tpm_tpm.TPM_T12 # <<<<<<<<<<<<<< * TPM_T13 = tpm_tpm.TPM_T13 * TPM_T14 = tpm_tpm.TPM_T14 */ - __pyx_t_3 = PyInt_FromLong(TPM_T12); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T12); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T12, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T12, __pyx_t_3) < 0) __PYX_ERR(4, 41, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":42 + /* "src/tpm_tpm.pxi":42 * TPM_T11 = tpm_tpm.TPM_T11 * TPM_T12 = tpm_tpm.TPM_T12 * TPM_T13 = tpm_tpm.TPM_T13 # <<<<<<<<<<<<<< * TPM_T14 = tpm_tpm.TPM_T14 * TPM_T15 = tpm_tpm.TPM_T15 */ - __pyx_t_3 = PyInt_FromLong(TPM_T13); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T13); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T13, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T13, __pyx_t_3) < 0) __PYX_ERR(4, 42, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":43 + /* "src/tpm_tpm.pxi":43 * TPM_T12 = tpm_tpm.TPM_T12 * TPM_T13 = tpm_tpm.TPM_T13 * TPM_T14 = tpm_tpm.TPM_T14 # <<<<<<<<<<<<<< * TPM_T15 = tpm_tpm.TPM_T15 * N_TPM_TRANS = tpm_tpm.N_TPM_TRANS */ - __pyx_t_3 = PyInt_FromLong(TPM_T14); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T14); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 43, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T14, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T14, __pyx_t_3) < 0) __PYX_ERR(4, 43, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":44 + /* "src/tpm_tpm.pxi":44 * TPM_T13 = tpm_tpm.TPM_T13 * TPM_T14 = tpm_tpm.TPM_T14 * TPM_T15 = tpm_tpm.TPM_T15 # <<<<<<<<<<<<<< * N_TPM_TRANS = tpm_tpm.N_TPM_TRANS * */ - __pyx_t_3 = PyInt_FromLong(TPM_T15); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_T15); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 44, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_T15, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_T15, __pyx_t_3) < 0) __PYX_ERR(4, 44, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":45 + /* "src/tpm_tpm.pxi":45 * TPM_T14 = tpm_tpm.TPM_T14 * TPM_T15 = tpm_tpm.TPM_T15 * N_TPM_TRANS = tpm_tpm.N_TPM_TRANS # <<<<<<<<<<<<<< * * TARGET_FK4 = tpm_tpm.TARGET_FK4 */ - __pyx_t_3 = PyInt_FromLong(N_TPM_TRANS); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(N_TPM_TRANS); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 45, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__N_TPM_TRANS, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_N_TPM_TRANS, __pyx_t_3) < 0) __PYX_ERR(4, 45, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":47 + /* "src/tpm_tpm.pxi":47 * N_TPM_TRANS = tpm_tpm.N_TPM_TRANS * * TARGET_FK4 = tpm_tpm.TARGET_FK4 # <<<<<<<<<<<<<< * TARGET_FK5 = tpm_tpm.TARGET_FK5 * TARGET_ECL = tpm_tpm.TARGET_ECL */ - __pyx_t_3 = PyInt_FromLong(TARGET_FK4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_FK4); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_FK4, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_FK4, __pyx_t_3) < 0) __PYX_ERR(4, 47, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":48 + /* "src/tpm_tpm.pxi":48 * * TARGET_FK4 = tpm_tpm.TARGET_FK4 * TARGET_FK5 = tpm_tpm.TARGET_FK5 # <<<<<<<<<<<<<< * TARGET_ECL = tpm_tpm.TARGET_ECL * TARGET_GAL = tpm_tpm.TARGET_GAL */ - __pyx_t_3 = PyInt_FromLong(TARGET_FK5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_FK5); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 48, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_FK5, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_FK5, __pyx_t_3) < 0) __PYX_ERR(4, 48, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":49 + /* "src/tpm_tpm.pxi":49 * TARGET_FK4 = tpm_tpm.TARGET_FK4 * TARGET_FK5 = tpm_tpm.TARGET_FK5 * TARGET_ECL = tpm_tpm.TARGET_ECL # <<<<<<<<<<<<<< * TARGET_GAL = tpm_tpm.TARGET_GAL * TARGET_APP_HADEC = tpm_tpm.TARGET_APP_HADEC */ - __pyx_t_3 = PyInt_FromLong(TARGET_ECL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_ECL); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_ECL, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_ECL, __pyx_t_3) < 0) __PYX_ERR(4, 49, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":50 + /* "src/tpm_tpm.pxi":50 * TARGET_FK5 = tpm_tpm.TARGET_FK5 * TARGET_ECL = tpm_tpm.TARGET_ECL * TARGET_GAL = tpm_tpm.TARGET_GAL # <<<<<<<<<<<<<< * TARGET_APP_HADEC = tpm_tpm.TARGET_APP_HADEC * TARGET_OBS_HADEC = tpm_tpm.TARGET_OBS_HADEC */ - __pyx_t_3 = PyInt_FromLong(TARGET_GAL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_GAL); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_GAL, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_GAL, __pyx_t_3) < 0) __PYX_ERR(4, 50, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":51 + /* "src/tpm_tpm.pxi":51 * TARGET_ECL = tpm_tpm.TARGET_ECL * TARGET_GAL = tpm_tpm.TARGET_GAL * TARGET_APP_HADEC = tpm_tpm.TARGET_APP_HADEC # <<<<<<<<<<<<<< * TARGET_OBS_HADEC = tpm_tpm.TARGET_OBS_HADEC * TARGET_APP_AZEL = tpm_tpm.TARGET_APP_AZEL */ - __pyx_t_3 = PyInt_FromLong(TARGET_APP_HADEC); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_APP_HADEC); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_APP_HADEC, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_APP_HADEC, __pyx_t_3) < 0) __PYX_ERR(4, 51, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":52 + /* "src/tpm_tpm.pxi":52 * TARGET_GAL = tpm_tpm.TARGET_GAL * TARGET_APP_HADEC = tpm_tpm.TARGET_APP_HADEC * TARGET_OBS_HADEC = tpm_tpm.TARGET_OBS_HADEC # <<<<<<<<<<<<<< * TARGET_APP_AZEL = tpm_tpm.TARGET_APP_AZEL * TARGET_OBS_AZEL = tpm_tpm.TARGET_OBS_AZEL */ - __pyx_t_3 = PyInt_FromLong(TARGET_OBS_HADEC); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_OBS_HADEC); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_OBS_HADEC, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_OBS_HADEC, __pyx_t_3) < 0) __PYX_ERR(4, 52, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":53 + /* "src/tpm_tpm.pxi":53 * TARGET_APP_HADEC = tpm_tpm.TARGET_APP_HADEC * TARGET_OBS_HADEC = tpm_tpm.TARGET_OBS_HADEC * TARGET_APP_AZEL = tpm_tpm.TARGET_APP_AZEL # <<<<<<<<<<<<<< * TARGET_OBS_AZEL = tpm_tpm.TARGET_OBS_AZEL * TARGET_OBS_WHAM = tpm_tpm.TARGET_OBS_WHAM */ - __pyx_t_3 = PyInt_FromLong(TARGET_APP_AZEL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_APP_AZEL); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_APP_AZEL, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_APP_AZEL, __pyx_t_3) < 0) __PYX_ERR(4, 53, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":54 + /* "src/tpm_tpm.pxi":54 * TARGET_OBS_HADEC = tpm_tpm.TARGET_OBS_HADEC * TARGET_APP_AZEL = tpm_tpm.TARGET_APP_AZEL * TARGET_OBS_AZEL = tpm_tpm.TARGET_OBS_AZEL # <<<<<<<<<<<<<< * TARGET_OBS_WHAM = tpm_tpm.TARGET_OBS_WHAM * TARGET_HADEC = tpm_tpm.TARGET_HADEC */ - __pyx_t_3 = PyInt_FromLong(TARGET_OBS_AZEL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_OBS_AZEL); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 54, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_OBS_AZEL, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_OBS_AZEL, __pyx_t_3) < 0) __PYX_ERR(4, 54, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":55 + /* "src/tpm_tpm.pxi":55 * TARGET_APP_AZEL = tpm_tpm.TARGET_APP_AZEL * TARGET_OBS_AZEL = tpm_tpm.TARGET_OBS_AZEL * TARGET_OBS_WHAM = tpm_tpm.TARGET_OBS_WHAM # <<<<<<<<<<<<<< * TARGET_HADEC = tpm_tpm.TARGET_HADEC * TARGET_TOP_AZEL = tpm_tpm.TARGET_TOP_AZEL */ - __pyx_t_3 = PyInt_FromLong(TARGET_OBS_WHAM); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_OBS_WHAM); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_OBS_WHAM, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_OBS_WHAM, __pyx_t_3) < 0) __PYX_ERR(4, 55, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":56 + /* "src/tpm_tpm.pxi":56 * TARGET_OBS_AZEL = tpm_tpm.TARGET_OBS_AZEL * TARGET_OBS_WHAM = tpm_tpm.TARGET_OBS_WHAM * TARGET_HADEC = tpm_tpm.TARGET_HADEC # <<<<<<<<<<<<<< * TARGET_TOP_AZEL = tpm_tpm.TARGET_TOP_AZEL * */ - __pyx_t_3 = PyInt_FromLong(TARGET_HADEC); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_HADEC); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 56, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_HADEC, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_HADEC, __pyx_t_3) < 0) __PYX_ERR(4, 56, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":57 + /* "src/tpm_tpm.pxi":57 * TARGET_OBS_WHAM = tpm_tpm.TARGET_OBS_WHAM * TARGET_HADEC = tpm_tpm.TARGET_HADEC * TARGET_TOP_AZEL = tpm_tpm.TARGET_TOP_AZEL # <<<<<<<<<<<<<< * * TPM_INIT = tpm_tpm.TPM_INIT */ - __pyx_t_3 = PyInt_FromLong(TARGET_TOP_AZEL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TARGET_TOP_AZEL); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 57, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TARGET_TOP_AZEL, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TARGET_TOP_AZEL, __pyx_t_3) < 0) __PYX_ERR(4, 57, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":59 + /* "src/tpm_tpm.pxi":59 * TARGET_TOP_AZEL = tpm_tpm.TARGET_TOP_AZEL * * TPM_INIT = tpm_tpm.TPM_INIT # <<<<<<<<<<<<<< * TPM_FAST = tpm_tpm.TPM_FAST * TPM_MEDIUM = tpm_tpm.TPM_MEDIUM */ - __pyx_t_3 = PyInt_FromLong(TPM_INIT); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_INIT); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_INIT, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_INIT, __pyx_t_3) < 0) __PYX_ERR(4, 59, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":60 + /* "src/tpm_tpm.pxi":60 * * TPM_INIT = tpm_tpm.TPM_INIT * TPM_FAST = tpm_tpm.TPM_FAST # <<<<<<<<<<<<<< * TPM_MEDIUM = tpm_tpm.TPM_MEDIUM * TPM_SLOW = tpm_tpm.TPM_SLOW */ - __pyx_t_3 = PyInt_FromLong(TPM_FAST); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_FAST); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_FAST, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_FAST, __pyx_t_3) < 0) __PYX_ERR(4, 60, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":61 + /* "src/tpm_tpm.pxi":61 * TPM_INIT = tpm_tpm.TPM_INIT * TPM_FAST = tpm_tpm.TPM_FAST * TPM_MEDIUM = tpm_tpm.TPM_MEDIUM # <<<<<<<<<<<<<< * TPM_SLOW = tpm_tpm.TPM_SLOW * TPM_REFRACTION = tpm_tpm.TPM_REFRACTION */ - __pyx_t_3 = PyInt_FromLong(TPM_MEDIUM); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_MEDIUM); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_MEDIUM, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_MEDIUM, __pyx_t_3) < 0) __PYX_ERR(4, 61, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":62 + /* "src/tpm_tpm.pxi":62 * TPM_FAST = tpm_tpm.TPM_FAST * TPM_MEDIUM = tpm_tpm.TPM_MEDIUM * TPM_SLOW = tpm_tpm.TPM_SLOW # <<<<<<<<<<<<<< * TPM_REFRACTION = tpm_tpm.TPM_REFRACTION * TPM_ALL = tpm_tpm.TPM_ALL */ - __pyx_t_3 = PyInt_FromLong(TPM_SLOW); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_SLOW); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_SLOW, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_SLOW, __pyx_t_3) < 0) __PYX_ERR(4, 62, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":63 + /* "src/tpm_tpm.pxi":63 * TPM_MEDIUM = tpm_tpm.TPM_MEDIUM * TPM_SLOW = tpm_tpm.TPM_SLOW * TPM_REFRACTION = tpm_tpm.TPM_REFRACTION # <<<<<<<<<<<<<< * TPM_ALL = tpm_tpm.TPM_ALL * */ - __pyx_t_3 = PyInt_FromLong(TPM_REFRACTION); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_REFRACTION); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_REFRACTION, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_REFRACTION, __pyx_t_3) < 0) __PYX_ERR(4, 63, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":64 + /* "src/tpm_tpm.pxi":64 * TPM_SLOW = tpm_tpm.TPM_SLOW * TPM_REFRACTION = tpm_tpm.TPM_REFRACTION * TPM_ALL = tpm_tpm.TPM_ALL # <<<<<<<<<<<<<< * * cdef class TSTATE(object): */ - __pyx_t_3 = PyInt_FromLong(TPM_ALL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyInt_From_int(TPM_ALL); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 64, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TPM_ALL, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_TPM_ALL, __pyx_t_3) < 0) __PYX_ERR(4, 64, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":182 - * tpm_astro.tpm_data(&self._tstate, TPM_INIT) + /* "src/tpm_tpm.pxi":217 + * self._tstate.utc = utc * - * def __init__(self, utc=None, delta_at=None, delta_ut=0.0, lon=0.0, # <<<<<<<<<<<<<< - * lat=0.0, alt=0.0, xpole=0.0, ypole=0.0, T=273.15, - * P=1013.25, H=0.0, wavelength=0.550): - */ - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_57 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_58 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":183 + * utc = property(__getutc, __setutc, # <<<<<<<<<<<<<< + * doc="UTC as JD. Defines NOW, i.e., current time.") * - * def __init__(self, utc=None, delta_at=None, delta_ut=0.0, lon=0.0, - * lat=0.0, alt=0.0, xpole=0.0, ypole=0.0, T=273.15, # <<<<<<<<<<<<<< - * P=1013.25, H=0.0, wavelength=0.550): - * # If utc and delta_at is None, then just use the value set by */ - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_59 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_60 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_61 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getutc); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_k_62 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(273.15); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_63 = __pyx_t_3; + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setutc); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 217, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 217, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; + __pyx_t_1 = 0; - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":184 - * def __init__(self, utc=None, delta_at=None, delta_ut=0.0, lon=0.0, - * lat=0.0, alt=0.0, xpole=0.0, ypole=0.0, T=273.15, - * P=1013.25, H=0.0, wavelength=0.550): # <<<<<<<<<<<<<< - * # If utc and delta_at is None, then just use the value set by - * # __cinit__. + /* "src/tpm_tpm.pxi":218 + * + * utc = property(__getutc, __setutc, + * doc="UTC as JD. Defines NOW, i.e., current time.") # <<<<<<<<<<<<<< + * + * def __getdelta_at(self): */ - __pyx_t_3 = PyFloat_FromDouble(1013.25); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_64 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_65 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyFloat_FromDouble(0.550); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_k_66 = __pyx_t_3; - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 218, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_UTC_as_JD_Defines_NOW_i_e_curren) < 0) __PYX_ERR(4, 218, __pyx_L1_error) - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":217 + /* "src/tpm_tpm.pxi":217 * self._tstate.utc = utc * * utc = property(__getutc, __setutc, # <<<<<<<<<<<<<< * doc="UTC as JD. Defines NOW, i.e., current time.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getutc); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 217, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_utc, __pyx_t_3) < 0) __PYX_ERR(4, 217, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + PyType_Modified(__pyx_ptype_3tpm_TSTATE); + + /* "src/tpm_tpm.pxi":226 + * self._tstate.delta_at = delta_at + * + * delta_at = property(__getdelta_at, __setdelta_at, # <<<<<<<<<<<<<< + * doc="DELTA_AT = TAI - UTC (s)") + * + */ + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getdelta_at); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 226, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setutc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setdelta_at); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 226, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 226, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_131)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__utc, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":226 + /* "src/tpm_tpm.pxi":227 + * + * delta_at = property(__getdelta_at, __setdelta_at, + * doc="DELTA_AT = TAI - UTC (s)") # <<<<<<<<<<<<<< + * + * def __getdelta_ut(self): + */ + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 227, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_DELTA_AT_TAI_UTC_s) < 0) __PYX_ERR(4, 227, __pyx_L1_error) + + /* "src/tpm_tpm.pxi":226 * self._tstate.delta_at = delta_at * * delta_at = property(__getdelta_at, __setdelta_at, # <<<<<<<<<<<<<< * doc="DELTA_AT = TAI - UTC (s)") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getdelta_at); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 226, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setdelta_at); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_3 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_132)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__delta_at, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_delta_at, __pyx_t_3) < 0) __PYX_ERR(4, 226, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":235 + /* "src/tpm_tpm.pxi":235 * self._tstate.delta_ut = delta_ut * * delta_ut = property(__getdelta_ut, __setdelta_ut, # <<<<<<<<<<<<<< * doc="DELTA_UT = UT1 - UTC (s)") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getdelta_ut); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getdelta_ut); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setdelta_ut); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setdelta_ut); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 235, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_133)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_tpm.pxi":236 + * + * delta_ut = property(__getdelta_ut, __setdelta_ut, + * doc="DELTA_UT = UT1 - UTC (s)") # <<<<<<<<<<<<<< + * + * def __getlon(self): + */ + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 236, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_DELTA_UT_UT1_UTC_s) < 0) __PYX_ERR(4, 236, __pyx_L1_error) + + /* "src/tpm_tpm.pxi":235 + * self._tstate.delta_ut = delta_ut + * + * delta_ut = property(__getdelta_ut, __setdelta_ut, # <<<<<<<<<<<<<< + * doc="DELTA_UT = UT1 - UTC (s)") + * + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__delta_ut, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_delta_ut, __pyx_t_3) < 0) __PYX_ERR(4, 235, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":244 + /* "src/tpm_tpm.pxi":244 * self._tstate.lon = lon * * lon = property(__getlon, __setlon, doc= # <<<<<<<<<<<<<< * "East longitude in radians.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getlon); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getlon); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setlon); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setlon); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 244, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_134)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 244, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_East_longitude_in_radians) < 0) __PYX_ERR(4, 244, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__lon, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_lon, __pyx_t_3) < 0) __PYX_ERR(4, 244, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":253 + /* "src/tpm_tpm.pxi":253 * self._tstate.lat = lat * * lat = property(__getlat, __setlat, doc= # <<<<<<<<<<<<<< * "Latitude in radians.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getlat); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getlat); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setlat); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setlat); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 253, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_135)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 253, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Latitude_in_radians) < 0) __PYX_ERR(4, 253, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__lat, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_lat, __pyx_t_3) < 0) __PYX_ERR(4, 253, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":262 + /* "src/tpm_tpm.pxi":262 * self._tstate.alt = alt * * alt = property(__getalt, __setalt, doc= # <<<<<<<<<<<<<< * "Altitude above geoid in meters.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getalt); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getalt); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setalt); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setalt); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 262, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_136)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 262, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Altitude_above_geoid_in_meters) < 0) __PYX_ERR(4, 262, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__alt, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_alt, __pyx_t_3) < 0) __PYX_ERR(4, 262, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":271 + /* "src/tpm_tpm.pxi":271 * self._tstate.xpole = xpole * * xpole = property(__getxpole, __setxpole, doc= # <<<<<<<<<<<<<< * "Polar motion in radians.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getxpole); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getxpole); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setxpole); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setxpole); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 271, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_137)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 271, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Polar_motion_in_radians) < 0) __PYX_ERR(4, 271, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__xpole, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_xpole, __pyx_t_3) < 0) __PYX_ERR(4, 271, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":280 + /* "src/tpm_tpm.pxi":280 * self._tstate.ypole = ypole * * ypole = property(__getypole, __setypole, doc= # <<<<<<<<<<<<<< * "Polar motion in radians.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getypole); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getypole); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setypole); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setypole); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 280, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_137)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 280, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Polar_motion_in_radians) < 0) __PYX_ERR(4, 280, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__ypole, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_ypole, __pyx_t_3) < 0) __PYX_ERR(4, 280, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":289 + /* "src/tpm_tpm.pxi":289 * self._tstate.T = T * * T = property(__getT, __setT, doc="Ambient temperature in Kelvins.") # <<<<<<<<<<<<<< * * def __getP(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getT); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getT); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setT); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 289, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_138)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 289, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Ambient_temperature_in_Kelvins) < 0) __PYX_ERR(4, 289, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__T, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_T, __pyx_t_3) < 0) __PYX_ERR(4, 289, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":297 + /* "src/tpm_tpm.pxi":297 * self._tstate.P = P * * P = property(__getP, __setP, doc="Ambient pressure in millibars.") # <<<<<<<<<<<<<< * * def __getH(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getP); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getP); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setP); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setP); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 297, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_139)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 297, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Ambient_pressure_in_millibars) < 0) __PYX_ERR(4, 297, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__P, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_P, __pyx_t_3) < 0) __PYX_ERR(4, 297, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":305 + /* "src/tpm_tpm.pxi":305 * self._tstate.H = H * * H = property(__getH, __setH, doc="Ambient humidity (0-1).") # <<<<<<<<<<<<<< * * def __getwavelength(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getH); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getH); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setH); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setH); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 305, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_140)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 305, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Ambient_humidity_0_1) < 0) __PYX_ERR(4, 305, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__H, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_H, __pyx_t_3) < 0) __PYX_ERR(4, 305, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":313 + /* "src/tpm_tpm.pxi":313 * self._tstate.wavelength = wavelength * * wavelength = property(__getwavelength, __setwavelength, # <<<<<<<<<<<<<< * doc="Observing wavelength in microns.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getwavelength); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getwavelength); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____setwavelength); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_setwavelength); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); + __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 313, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); __pyx_t_3 = 0; __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_141)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_tpm.pxi":314 + * + * wavelength = property(__getwavelength, __setwavelength, + * doc="Observing wavelength in microns.") # <<<<<<<<<<<<<< + * + * def __gettai(self): + */ + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 314, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Observing_wavelength_in_microns) < 0) __PYX_ERR(4, 314, __pyx_L1_error) + + /* "src/tpm_tpm.pxi":313 + * self._tstate.wavelength = wavelength + * + * wavelength = property(__getwavelength, __setwavelength, # <<<<<<<<<<<<<< + * doc="Observing wavelength in microns.") + * + */ + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__wavelength, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_wavelength, __pyx_t_3) < 0) __PYX_ERR(4, 313, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":319 + /* "src/tpm_tpm.pxi":319 * return self._tstate.tai * * tai = property(__gettai, doc="International Atomic Time.") # <<<<<<<<<<<<<< * * def __gettdt(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____gettai); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_gettai); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 319, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_142)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__tai, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 319, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_International_Atomic_Time) < 0) __PYX_ERR(4, 319, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 319, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_tai, __pyx_t_2) < 0) __PYX_ERR(4, 319, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":324 + /* "src/tpm_tpm.pxi":324 * return self._tstate.tdt * * tdt = property(__gettdt, # <<<<<<<<<<<<<< * doc="Terrestrial Dynamic Time (Terrestrial Time).") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____gettdt); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_gettdt); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 324, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_143)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + + /* "src/tpm_tpm.pxi":325 + * + * tdt = property(__gettdt, + * doc="Terrestrial Dynamic Time (Terrestrial Time).") # <<<<<<<<<<<<<< + * + * def __gettdb(self): + */ + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 325, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Terrestrial_Dynamic_Time_Terrest) < 0) __PYX_ERR(4, 325, __pyx_L1_error) + + /* "src/tpm_tpm.pxi":324 + * return self._tstate.tdt + * + * tdt = property(__gettdt, # <<<<<<<<<<<<<< + * doc="Terrestrial Dynamic Time (Terrestrial Time).") + * + */ + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__tdt, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_tdt, __pyx_t_1) < 0) __PYX_ERR(4, 324, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":330 + /* "src/tpm_tpm.pxi":330 * return self._tstate.tdb * * tdb = property(__gettdb, doc="Barycentric Dynamic Time.") # <<<<<<<<<<<<<< * * def __getobliquity(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____gettdb); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_gettdb); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_144)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 330, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Barycentric_Dynamic_Time) < 0) __PYX_ERR(4, 330, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__tdb, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_tdb, __pyx_t_3) < 0) __PYX_ERR(4, 330, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":335 + /* "src/tpm_tpm.pxi":335 * return self._tstate.obliquity * * obliquity = property(__getobliquity, doc= # <<<<<<<<<<<<<< * "Obliquity of the Ecliptic.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getobliquity); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getobliquity); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 335, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 335, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_145)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__obliquity, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 335, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Obliquity_of_the_Ecliptic) < 0) __PYX_ERR(4, 335, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 335, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_obliquity, __pyx_t_2) < 0) __PYX_ERR(4, 335, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":341 + /* "src/tpm_tpm.pxi":341 * return self._tstate.nut_lon * * nut_lon = property(__getnut_lon, doc="Nutation in longitude.") # <<<<<<<<<<<<<< * * def __getnut_obl(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getnut_lon); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getnut_lon); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 341, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_146)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 341, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Nutation_in_longitude) < 0) __PYX_ERR(4, 341, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__nut_lon, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_nut_lon, __pyx_t_1) < 0) __PYX_ERR(4, 341, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":346 + /* "src/tpm_tpm.pxi":346 * return self._tstate.nut_obl * * nut_obl = property(__getnut_obl, doc="Nutation in obliquity.") # <<<<<<<<<<<<<< * * def __getnm(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getnut_obl); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getnut_obl); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_147)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 346, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Nutation_in_obliquity) < 0) __PYX_ERR(4, 346, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__nut_obl, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_nut_obl, __pyx_t_3) < 0) __PYX_ERR(4, 346, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":353 + /* "src/tpm_tpm.pxi":353 * return m3 * * nm = property(__getnm, doc="Nutation matrix for NOW.") # <<<<<<<<<<<<<< * * def __getpm(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getnm); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getnm); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 353, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_148)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__nm, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 353, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Nutation_matrix_for_NOW) < 0) __PYX_ERR(4, 353, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 353, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_nm, __pyx_t_2) < 0) __PYX_ERR(4, 353, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":360 + /* "src/tpm_tpm.pxi":360 * return m6 * * pm = property(__getpm, doc="Precession matrix from J2000 to NOW.") # <<<<<<<<<<<<<< * * def __getut1(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getpm); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 360, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 360, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_149)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 360, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Precession_matrix_from_J2000_to) < 0) __PYX_ERR(4, 360, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 360, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__pm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_pm, __pyx_t_1) < 0) __PYX_ERR(4, 360, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":365 + /* "src/tpm_tpm.pxi":365 * return self._tstate.ut1 * * ut1 = property(__getut1, doc="Universal time.") # <<<<<<<<<<<<<< * * def __getgmst(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getut1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getut1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 365, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_150)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 365, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Universal_time) < 0) __PYX_ERR(4, 365, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__ut1, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_ut1, __pyx_t_3) < 0) __PYX_ERR(4, 365, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":370 + /* "src/tpm_tpm.pxi":370 * return self._tstate.gmst * * gmst = property(__getgmst, doc="Greewich Mean Sidereal Time.") # <<<<<<<<<<<<<< * * def __getgast(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getgmst); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getgmst); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 370, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_151)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__gmst, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 370, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Greewich_Mean_Sidereal_Time) < 0) __PYX_ERR(4, 370, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 370, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_gmst, __pyx_t_2) < 0) __PYX_ERR(4, 370, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":375 + /* "src/tpm_tpm.pxi":375 * return self._tstate.gast * * gast = property(__getgast, doc="Greewich Apparent Sidereal Time.") # <<<<<<<<<<<<<< * * def __getlast(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getgast); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getgast); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 375, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 375, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_152)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 375, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Greewich_Apparent_Sidereal_Time) < 0) __PYX_ERR(4, 375, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 375, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__gast, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_gast, __pyx_t_1) < 0) __PYX_ERR(4, 375, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":380 + /* "src/tpm_tpm.pxi":380 * return self._tstate.last * * last = property(__getlast, doc="Local Apparent Sidereal Time.") # <<<<<<<<<<<<<< * * def __geteb(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getlast); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getlast); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 380, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_153)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 380, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Local_Apparent_Sidereal_Time) < 0) __PYX_ERR(4, 380, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 380, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__last, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_last, __pyx_t_3) < 0) __PYX_ERR(4, 380, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":387 + /* "src/tpm_tpm.pxi":387 * return v6 * * eb = property(__geteb, doc="Barycentric Earth state vector.") # <<<<<<<<<<<<<< * * def __geteh(self): */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____geteb); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_geteb); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 387, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_154)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__eb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 387, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Barycentric_Earth_state_vector) < 0) __PYX_ERR(4, 387, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 387, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_eb, __pyx_t_2) < 0) __PYX_ERR(4, 387, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":394 + /* "src/tpm_tpm.pxi":394 * return v6 * * eh = property(__geteh, doc="Heliocentric Earth state vector.") # <<<<<<<<<<<<<< * * def __getobs_m(self): */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____geteh); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_geteh); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 394, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_155)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 394, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Heliocentric_Earth_state_vector) < 0) __PYX_ERR(4, 394, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__eh, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_eh, __pyx_t_1) < 0) __PYX_ERR(4, 394, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":401 + /* "src/tpm_tpm.pxi":401 * return v6 * * obs_m = property(__getobs_m, doc= # <<<<<<<<<<<<<< * "Geocentric Earth-fixed mean state vector.") * */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getobs_m); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getobs_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 401, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_156)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 401, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Geocentric_Earth_fixed_mean_stat) < 0) __PYX_ERR(4, 401, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__obs_m, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_obs_m, __pyx_t_3) < 0) __PYX_ERR(4, 401, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":409 + /* "src/tpm_tpm.pxi":409 * return v6 * * obs_t = property(__getobs_t, doc= # <<<<<<<<<<<<<< * "Geocentric Earth-fixed true state vector.") * */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getobs_t); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getobs_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 409, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 409, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_157)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__obs_t, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 409, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Geocentric_Earth_fixed_true_stat) < 0) __PYX_ERR(4, 409, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 409, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_obs_t, __pyx_t_2) < 0) __PYX_ERR(4, 409, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":417 + /* "src/tpm_tpm.pxi":417 * return v6 * * obs_s = property(__getobs_s, doc= # <<<<<<<<<<<<<< * "Geocentric space-fixed true state vector.") * */ - __pyx_t_2 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getobs_s); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_2, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getobs_s); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 417, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); + __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 417, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_158)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_3), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 417, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_doc, __pyx_kp_s_Geocentric_space_fixed_true_stat) < 0) __PYX_ERR(4, 417, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 417, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__obs_s, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_obs_s, __pyx_t_1) < 0) __PYX_ERR(4, 417, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":423 + /* "src/tpm_tpm.pxi":423 * return self._tstate.refa * * refa = property(__getrefa, doc="Refraction coefficient.") # <<<<<<<<<<<<<< * * def __getrefb(self): */ - __pyx_t_1 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getrefa); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_1, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getrefa); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 423, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_1); + PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_159)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 423, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_doc, __pyx_kp_s_Refraction_coefficient) < 0) __PYX_ERR(4, 423, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__refa, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_refa, __pyx_t_3) < 0) __PYX_ERR(4, 423, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_tpm.pxi":428 + /* "src/tpm_tpm.pxi":428 * return self._tstate.refb * * refb = property(__getrefb, doc="Refraction coefficient.") # <<<<<<<<<<<<<< */ - __pyx_t_3 = __Pyx_GetName((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE, __pyx_n_s____getrefb); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __Pyx_GetNameInClass(__pyx_t_3, (PyObject *)__pyx_ptype_3tpm_TSTATE, __pyx_n_s_getrefb); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(4, 428, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_3); + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__doc), ((PyObject *)__pyx_kp_s_159)) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyDict_SetItem((PyObject *)__pyx_ptype_5pytpm_3tpm_TSTATE->tp_dict, __pyx_n_s__refb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[3]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(4, 428, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_doc, __pyx_kp_s_Refraction_coefficient) < 0) __PYX_ERR(4, 428, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_property, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(4, 428, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + if (PyDict_SetItem((PyObject *)__pyx_ptype_3tpm_TSTATE->tp_dict, __pyx_n_s_refb, __pyx_t_2) < 0) __PYX_ERR(4, 428, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - PyType_Modified(__pyx_ptype_5pytpm_3tpm_TSTATE); + PyType_Modified(__pyx_ptype_3tpm_TSTATE); - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":5 + /* "src/tpm_astro.pxi":5 * # cimport tpm_astro * * IAU_K = tpm_astro.IAU_K # <<<<<<<<<<<<<< * IAU_DM = tpm_astro.IAU_DM * IAU_AU = tpm_astro.IAU_AU */ - __pyx_t_2 = PyFloat_FromDouble(IAU_K); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_K); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_K, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 5; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_K, __pyx_t_2) < 0) __PYX_ERR(2, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":6 + /* "src/tpm_astro.pxi":6 * * IAU_K = tpm_astro.IAU_K * IAU_DM = tpm_astro.IAU_DM # <<<<<<<<<<<<<< * IAU_AU = tpm_astro.IAU_AU * IAU_C = tpm_astro.IAU_C */ - __pyx_t_2 = PyFloat_FromDouble(IAU_DM); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_DM); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_DM, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 6; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_DM, __pyx_t_2) < 0) __PYX_ERR(2, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":7 + /* "src/tpm_astro.pxi":7 * IAU_K = tpm_astro.IAU_K * IAU_DM = tpm_astro.IAU_DM * IAU_AU = tpm_astro.IAU_AU # <<<<<<<<<<<<<< * IAU_C = tpm_astro.IAU_C * IAU_RE = tpm_astro.IAU_RE */ - __pyx_t_2 = PyFloat_FromDouble(IAU_AU); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_AU); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_AU, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_AU, __pyx_t_2) < 0) __PYX_ERR(2, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":8 + /* "src/tpm_astro.pxi":8 * IAU_DM = tpm_astro.IAU_DM * IAU_AU = tpm_astro.IAU_AU * IAU_C = tpm_astro.IAU_C # <<<<<<<<<<<<<< * IAU_RE = tpm_astro.IAU_RE * IAU_RM = tpm_astro.IAU_RM */ - __pyx_t_2 = PyFloat_FromDouble(IAU_C); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_C); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_C, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_C, __pyx_t_2) < 0) __PYX_ERR(2, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":9 + /* "src/tpm_astro.pxi":9 * IAU_AU = tpm_astro.IAU_AU * IAU_C = tpm_astro.IAU_C * IAU_RE = tpm_astro.IAU_RE # <<<<<<<<<<<<<< * IAU_RM = tpm_astro.IAU_RM * IAU_F = tpm_astro.IAU_F */ - __pyx_t_2 = PyFloat_FromDouble(IAU_RE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_RE); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_RE, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_RE, __pyx_t_2) < 0) __PYX_ERR(2, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":10 + /* "src/tpm_astro.pxi":10 * IAU_C = tpm_astro.IAU_C * IAU_RE = tpm_astro.IAU_RE * IAU_RM = tpm_astro.IAU_RM # <<<<<<<<<<<<<< * IAU_F = tpm_astro.IAU_F * IAU_KAPPA = tpm_astro.IAU_KAPPA */ - __pyx_t_2 = PyFloat_FromDouble(IAU_RM); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_RM); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_RM, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_RM, __pyx_t_2) < 0) __PYX_ERR(2, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":11 + /* "src/tpm_astro.pxi":11 * IAU_RE = tpm_astro.IAU_RE * IAU_RM = tpm_astro.IAU_RM * IAU_F = tpm_astro.IAU_F # <<<<<<<<<<<<<< * IAU_KAPPA = tpm_astro.IAU_KAPPA * IAU_W = tpm_astro.IAU_W */ - __pyx_t_2 = PyFloat_FromDouble(IAU_F); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_F); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_F, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_F, __pyx_t_2) < 0) __PYX_ERR(2, 11, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":12 + /* "src/tpm_astro.pxi":12 * IAU_RM = tpm_astro.IAU_RM * IAU_F = tpm_astro.IAU_F * IAU_KAPPA = tpm_astro.IAU_KAPPA # <<<<<<<<<<<<<< * IAU_W = tpm_astro.IAU_W * GAL_RA = tpm_astro.GAL_RA */ - __pyx_t_2 = PyFloat_FromDouble(IAU_KAPPA); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_KAPPA); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_KAPPA, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_KAPPA, __pyx_t_2) < 0) __PYX_ERR(2, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":13 + /* "src/tpm_astro.pxi":13 * IAU_F = tpm_astro.IAU_F * IAU_KAPPA = tpm_astro.IAU_KAPPA * IAU_W = tpm_astro.IAU_W # <<<<<<<<<<<<<< * GAL_RA = tpm_astro.GAL_RA * GAL_DEC = tpm_astro.GAL_DEC */ - __pyx_t_2 = PyFloat_FromDouble(IAU_W); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(IAU_W); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__IAU_W, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_IAU_W, __pyx_t_2) < 0) __PYX_ERR(2, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":14 + /* "src/tpm_astro.pxi":14 * IAU_KAPPA = tpm_astro.IAU_KAPPA * IAU_W = tpm_astro.IAU_W * GAL_RA = tpm_astro.GAL_RA # <<<<<<<<<<<<<< * GAL_DEC = tpm_astro.GAL_DEC * GAL_LON = tpm_astro.GAL_LON */ - __pyx_t_2 = PyFloat_FromDouble(GAL_RA); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(GAL_RA); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__GAL_RA, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_GAL_RA, __pyx_t_2) < 0) __PYX_ERR(2, 14, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":15 + /* "src/tpm_astro.pxi":15 * IAU_W = tpm_astro.IAU_W * GAL_RA = tpm_astro.GAL_RA * GAL_DEC = tpm_astro.GAL_DEC # <<<<<<<<<<<<<< * GAL_LON = tpm_astro.GAL_LON * PRECESS_NEWCOMB = tpm_astro.PRECESS_NEWCOMB */ - __pyx_t_2 = PyFloat_FromDouble(GAL_DEC); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(GAL_DEC); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__GAL_DEC, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_GAL_DEC, __pyx_t_2) < 0) __PYX_ERR(2, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":16 + /* "src/tpm_astro.pxi":16 * GAL_RA = tpm_astro.GAL_RA * GAL_DEC = tpm_astro.GAL_DEC * GAL_LON = tpm_astro.GAL_LON # <<<<<<<<<<<<<< * PRECESS_NEWCOMB = tpm_astro.PRECESS_NEWCOMB * PRECESS_ANDOYER = tpm_astro.PRECESS_ANDOYER */ - __pyx_t_2 = PyFloat_FromDouble(GAL_LON); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyFloat_FromDouble(GAL_LON); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__GAL_LON, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_GAL_LON, __pyx_t_2) < 0) __PYX_ERR(2, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":17 + /* "src/tpm_astro.pxi":17 * GAL_DEC = tpm_astro.GAL_DEC * GAL_LON = tpm_astro.GAL_LON * PRECESS_NEWCOMB = tpm_astro.PRECESS_NEWCOMB # <<<<<<<<<<<<<< * PRECESS_ANDOYER = tpm_astro.PRECESS_ANDOYER * PRECESS_KINOSHITA = tpm_astro.PRECESS_KINOSHITA */ - __pyx_t_2 = PyInt_FromLong(PRECESS_NEWCOMB); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_NEWCOMB); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_NEWCOMB, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_NEWCOMB, __pyx_t_2) < 0) __PYX_ERR(2, 17, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":18 + /* "src/tpm_astro.pxi":18 * GAL_LON = tpm_astro.GAL_LON * PRECESS_NEWCOMB = tpm_astro.PRECESS_NEWCOMB * PRECESS_ANDOYER = tpm_astro.PRECESS_ANDOYER # <<<<<<<<<<<<<< * PRECESS_KINOSHITA = tpm_astro.PRECESS_KINOSHITA * PRECESS_LIESKE = tpm_astro.PRECESS_LIESKE */ - __pyx_t_2 = PyInt_FromLong(PRECESS_ANDOYER); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_ANDOYER); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_ANDOYER, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_ANDOYER, __pyx_t_2) < 0) __PYX_ERR(2, 18, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":19 + /* "src/tpm_astro.pxi":19 * PRECESS_NEWCOMB = tpm_astro.PRECESS_NEWCOMB * PRECESS_ANDOYER = tpm_astro.PRECESS_ANDOYER * PRECESS_KINOSHITA = tpm_astro.PRECESS_KINOSHITA # <<<<<<<<<<<<<< * PRECESS_LIESKE = tpm_astro.PRECESS_LIESKE * PRECESS_FK4 = tpm_astro.PRECESS_FK4 */ - __pyx_t_2 = PyInt_FromLong(PRECESS_KINOSHITA); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_KINOSHITA); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_KINOSHITA, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 19; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_KINOSHITA, __pyx_t_2) < 0) __PYX_ERR(2, 19, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":20 + /* "src/tpm_astro.pxi":20 * PRECESS_ANDOYER = tpm_astro.PRECESS_ANDOYER * PRECESS_KINOSHITA = tpm_astro.PRECESS_KINOSHITA * PRECESS_LIESKE = tpm_astro.PRECESS_LIESKE # <<<<<<<<<<<<<< * PRECESS_FK4 = tpm_astro.PRECESS_FK4 * PRECESS_FK5 = tpm_astro.PRECESS_FK5 */ - __pyx_t_2 = PyInt_FromLong(PRECESS_LIESKE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_LIESKE); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_LIESKE, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_LIESKE, __pyx_t_2) < 0) __PYX_ERR(2, 20, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":21 + /* "src/tpm_astro.pxi":21 * PRECESS_KINOSHITA = tpm_astro.PRECESS_KINOSHITA * PRECESS_LIESKE = tpm_astro.PRECESS_LIESKE * PRECESS_FK4 = tpm_astro.PRECESS_FK4 # <<<<<<<<<<<<<< * PRECESS_FK5 = tpm_astro.PRECESS_FK5 * PRECESS_INERTIAL = tpm_astro.PRECESS_INERTIAL */ - __pyx_t_2 = PyInt_FromLong(PRECESS_FK4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_FK4); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_FK4, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_FK4, __pyx_t_2) < 0) __PYX_ERR(2, 21, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":22 + /* "src/tpm_astro.pxi":22 * PRECESS_LIESKE = tpm_astro.PRECESS_LIESKE * PRECESS_FK4 = tpm_astro.PRECESS_FK4 * PRECESS_FK5 = tpm_astro.PRECESS_FK5 # <<<<<<<<<<<<<< * PRECESS_INERTIAL = tpm_astro.PRECESS_INERTIAL * PRECESS_ROTATING = tpm_astro.PRECESS_ROTATING */ - __pyx_t_2 = PyInt_FromLong(PRECESS_FK5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_FK5); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_FK5, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_FK5, __pyx_t_2) < 0) __PYX_ERR(2, 22, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":23 + /* "src/tpm_astro.pxi":23 * PRECESS_FK4 = tpm_astro.PRECESS_FK4 * PRECESS_FK5 = tpm_astro.PRECESS_FK5 * PRECESS_INERTIAL = tpm_astro.PRECESS_INERTIAL # <<<<<<<<<<<<<< * PRECESS_ROTATING = tpm_astro.PRECESS_ROTATING * */ - __pyx_t_2 = PyInt_FromLong(PRECESS_INERTIAL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_INERTIAL); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_INERTIAL, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_INERTIAL, __pyx_t_2) < 0) __PYX_ERR(2, 23, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":24 + /* "src/tpm_astro.pxi":24 * PRECESS_FK5 = tpm_astro.PRECESS_FK5 * PRECESS_INERTIAL = tpm_astro.PRECESS_INERTIAL * PRECESS_ROTATING = tpm_astro.PRECESS_ROTATING # <<<<<<<<<<<<<< * * */ - __pyx_t_2 = PyInt_FromLong(PRECESS_ROTATING); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = __Pyx_PyInt_From_int(PRECESS_ROTATING); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PRECESS_ROTATING, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PRECESS_ROTATING, __pyx_t_2) < 0) __PYX_ERR(2, 24, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":27 + /* "src/tpm_astro.pxi":27 * * * def tpm_data(TSTATE tstate, int action): # <<<<<<<<<<<<<< * """Compute and set dependent TSTATE data. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_45tpm_data, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_91tpm_data, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tpm_data, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tpm_data, __pyx_t_2) < 0) __PYX_ERR(2, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":140 + /* "src/tpm_astro.pxi":140 * * * def tpm(PVEC pvec, int s1, int s2, double ep, double eq, TSTATE tstate): # <<<<<<<<<<<<<< * """Apply transition between to states. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_46tpm, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_93tpm, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tpm, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tpm, __pyx_t_2) < 0) __PYX_ERR(2, 140, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":195 + /* "src/tpm_astro.pxi":195 * * * def tpm_state(s): # <<<<<<<<<<<<<< * """Return state name given state id. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_47tpm_state, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_95tpm_state, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tpm_state, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tpm_state, __pyx_t_2) < 0) __PYX_ERR(2, 195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":226 + /* "src/tpm_astro.pxi":226 * * * def delta_AT(utc): # <<<<<<<<<<<<<< * """Return Delta AT = TAI - UTC for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_48delta_AT, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_97delta_AT, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 226, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__delta_AT, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_delta_AT, __pyx_t_2) < 0) __PYX_ERR(2, 226, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":248 + /* "src/tpm_astro.pxi":248 * * * def delta_T(ut1): # <<<<<<<<<<<<<< * """Return Delta T = TT - UT1 for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_49delta_T, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_99delta_T, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 248, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__delta_T, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_delta_T, __pyx_t_2) < 0) __PYX_ERR(2, 248, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":277 + /* "src/tpm_astro.pxi":277 * * * def delta_UT(utc): # <<<<<<<<<<<<<< * """Return Delta UT = UT1 - UTC for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_50delta_UT, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_101delta_UT, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__delta_UT, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_delta_UT, __pyx_t_2) < 0) __PYX_ERR(2, 277, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":301 + /* "src/tpm_astro.pxi":301 * * * def delta_ET(utc): # <<<<<<<<<<<<<< * """Return Delta ET = ET - UTC for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_51delta_ET, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_103delta_ET, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__delta_ET, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_delta_ET, __pyx_t_2) < 0) __PYX_ERR(2, 301, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":318 + /* "src/tpm_astro.pxi":318 * * * def delta_TT(utc): # <<<<<<<<<<<<<< * """Return Delta TT = TDT - UTC for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_52delta_TT, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_105delta_TT, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__delta_TT, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_delta_TT, __pyx_t_2) < 0) __PYX_ERR(2, 318, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":335 + /* "src/tpm_astro.pxi":335 * * * def tdt2tdb(tdt): # <<<<<<<<<<<<<< * """Return TDB for the given TDT. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_53tdt2tdb, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_107tdt2tdb, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 335, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tdt2tdb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tdt2tdb, __pyx_t_2) < 0) __PYX_ERR(2, 335, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":352 + /* "src/tpm_astro.pxi":352 * * * def ut12gmst(ut1): # <<<<<<<<<<<<<< * """Return GMST for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_54ut12gmst, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_109ut12gmst, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut12gmst, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut12gmst, __pyx_t_2) < 0) __PYX_ERR(2, 352, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":372 + /* "src/tpm_astro.pxi":372 * * * def et2tdt(et): # <<<<<<<<<<<<<< * """Return TDT for the given ET. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_55et2tdt, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_111et2tdt, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 372, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__et2tdt, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_et2tdt, __pyx_t_2) < 0) __PYX_ERR(2, 372, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":389 + /* "src/tpm_astro.pxi":389 * * * def tai2tdt(tai): # <<<<<<<<<<<<<< * """Return TDT for the given TAI. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_56tai2tdt, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_113tai2tdt, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 389, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tai2tdt, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tai2tdt, __pyx_t_2) < 0) __PYX_ERR(2, 389, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":406 + /* "src/tpm_astro.pxi":406 * * * def tdt2et(tdt): # <<<<<<<<<<<<<< * """Return ET for the given TDT. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_57tdt2et, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 406; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_115tdt2et, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tdt2et, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 406; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tdt2et, __pyx_t_2) < 0) __PYX_ERR(2, 406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":423 + /* "src/tpm_astro.pxi":423 * * * def ut12et(ut1): # <<<<<<<<<<<<<< * """Return ET for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_58ut12et, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_117ut12et, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut12et, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut12et, __pyx_t_2) < 0) __PYX_ERR(2, 423, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":440 + /* "src/tpm_astro.pxi":440 * * * def utc2et(utc): # <<<<<<<<<<<<<< * """Return ET for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_59utc2et, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_119utc2et, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 440, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__utc2et, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_utc2et, __pyx_t_2) < 0) __PYX_ERR(2, 440, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":457 + /* "src/tpm_astro.pxi":457 * * * def utc2tdt(utc): # <<<<<<<<<<<<<< * """Return TDT for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_60utc2tdt, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_121utc2tdt, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 457, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__utc2tdt, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_utc2tdt, __pyx_t_2) < 0) __PYX_ERR(2, 457, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":474 + /* "src/tpm_astro.pxi":474 * * * def utc2ut1(utc): # <<<<<<<<<<<<<< * """Return UT1 for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_61utc2ut1, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_123utc2ut1, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__utc2ut1, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_utc2ut1, __pyx_t_2) < 0) __PYX_ERR(2, 474, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":491 + /* "src/tpm_astro.pxi":491 * * * def et2ut1(et): # <<<<<<<<<<<<<< * """Return UT1 for the given ET. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_62et2ut1, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_125et2ut1, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__et2ut1, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_et2ut1, __pyx_t_2) < 0) __PYX_ERR(2, 491, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":508 + /* "src/tpm_astro.pxi":508 * * * def et2utc(et): # <<<<<<<<<<<<<< * """Return UTC for the given ET. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_63et2utc, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_127et2utc, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 508, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__et2utc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_et2utc, __pyx_t_2) < 0) __PYX_ERR(2, 508, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":525 + /* "src/tpm_astro.pxi":525 * * * def tai2utc(tai): # <<<<<<<<<<<<<< * """Return UTC for the given TAI. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_64tai2utc, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_129tai2utc, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tai2utc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tai2utc, __pyx_t_2) < 0) __PYX_ERR(2, 525, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":542 + /* "src/tpm_astro.pxi":542 * * * def tdt2tai(tdt): # <<<<<<<<<<<<<< * """Return TAI for the given TDT. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_65tdt2tai, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_131tdt2tai, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tdt2tai, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tdt2tai, __pyx_t_2) < 0) __PYX_ERR(2, 542, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":559 + /* "src/tpm_astro.pxi":559 * * * def tdt2utc(tdt): # <<<<<<<<<<<<<< * """Return UTC for the given TDT. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_66tdt2utc, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 559; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_133tdt2utc, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 559, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tdt2utc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 559; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tdt2utc, __pyx_t_2) < 0) __PYX_ERR(2, 559, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":576 + /* "src/tpm_astro.pxi":576 * * * def ut12utc(ut1): # <<<<<<<<<<<<<< * """Return UTC for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_67ut12utc, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_135ut12utc, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut12utc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut12utc, __pyx_t_2) < 0) __PYX_ERR(2, 576, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":593 + /* "src/tpm_astro.pxi":593 * * * def et2tai(et): # <<<<<<<<<<<<<< * """Return TAI for the given ET. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_68et2tai, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 593; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_137et2tai, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__et2tai, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 593; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_et2tai, __pyx_t_2) < 0) __PYX_ERR(2, 593, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":610 + /* "src/tpm_astro.pxi":610 * * * def et2tdb(et): # <<<<<<<<<<<<<< * """Return TDB for the given ET. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_69et2tdb, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 610; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_139et2tdb, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 610, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__et2tdb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 610; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_et2tdb, __pyx_t_2) < 0) __PYX_ERR(2, 610, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":627 + /* "src/tpm_astro.pxi":627 * * * def tai2et(tai): # <<<<<<<<<<<<<< * """Return ET for the given TAI. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_70tai2et, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_141tai2et, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 627, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tai2et, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tai2et, __pyx_t_2) < 0) __PYX_ERR(2, 627, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":644 + /* "src/tpm_astro.pxi":644 * * * def tai2tdb(tai): # <<<<<<<<<<<<<< * """Return TDB for the given TAI. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_71tai2tdb, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_143tai2tdb, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tai2tdb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tai2tdb, __pyx_t_2) < 0) __PYX_ERR(2, 644, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":661 + /* "src/tpm_astro.pxi":661 * * * def tai2ut1(tai): # <<<<<<<<<<<<<< * """Return UT1 for the given TAI. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_72tai2ut1, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 661; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_145tai2ut1, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tai2ut1, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 661; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tai2ut1, __pyx_t_2) < 0) __PYX_ERR(2, 661, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":694 + /* "src/tpm_astro.pxi":694 * # return tpm_astro.tdb2utc(tdb) * * def tdt2ut1(tdt): # <<<<<<<<<<<<<< * """Return UT1 for the given TDT. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_73tdt2ut1, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 694; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_147tdt2ut1, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 694, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tdt2ut1, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 694; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_tdt2ut1, __pyx_t_2) < 0) __PYX_ERR(2, 694, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":711 + /* "src/tpm_astro.pxi":711 * * * def ut12tai(ut1): # <<<<<<<<<<<<<< * """Return TAI for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_74ut12tai, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 711; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_149ut12tai, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut12tai, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 711; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut12tai, __pyx_t_2) < 0) __PYX_ERR(2, 711, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":728 + /* "src/tpm_astro.pxi":728 * * * def ut12tdb(ut1): # <<<<<<<<<<<<<< * """Return TDB for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_75ut12tdb, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 728; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_151ut12tdb, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 728, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut12tdb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 728; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut12tdb, __pyx_t_2) < 0) __PYX_ERR(2, 728, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":745 + /* "src/tpm_astro.pxi":745 * * * def ut12tdt(ut1): # <<<<<<<<<<<<<< * """Return TDT for the given UT1. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_76ut12tdt, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 745; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_153ut12tdt, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 745, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut12tdt, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 745; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut12tdt, __pyx_t_2) < 0) __PYX_ERR(2, 745, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":762 + /* "src/tpm_astro.pxi":762 * * * def utc2tdb(utc): # <<<<<<<<<<<<<< * """Return TDB for the given UTC. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_77utc2tdb, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_155utc2tdb, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 762, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__utc2tdb, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_utc2tdb, __pyx_t_2) < 0) __PYX_ERR(2, 762, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":779 + /* "src/tpm_astro.pxi":779 * * * def et2ut(et): # <<<<<<<<<<<<<< * """Return UT for the given ET; same as et2ut1(et).""" * return tpm_astro.et2ut(et) */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_78et2ut, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_157et2ut, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 779, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__et2ut, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_et2ut, __pyx_t_2) < 0) __PYX_ERR(2, 779, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":784 + /* "src/tpm_astro.pxi":784 * * * def ut2et(ut): # <<<<<<<<<<<<<< * """Return ET for the given UT; same as ut12et(ut).""" * return tpm_astro.ut2et(ut) */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_79ut2et, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_159ut2et, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut2et, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut2et, __pyx_t_2) < 0) __PYX_ERR(2, 784, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":789 + /* "src/tpm_astro.pxi":789 * * * def ut2gmst(ut): # <<<<<<<<<<<<<< * """Return GMST for the given UT; same as ut12gmst(ut)""" * return tpm_astro.ut2gmst(ut) */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_80ut2gmst, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 789; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_161ut2gmst, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ut2gmst, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 789; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ut2gmst, __pyx_t_2) < 0) __PYX_ERR(2, 789, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":794 + /* "src/tpm_astro.pxi":794 * * * def cat2v6(alpha, delta, pma, pmd, px, rv, C=36525.0): # <<<<<<<<<<<<<< * """Create a V6C vector from a catalog entry. * */ - __pyx_t_2 = PyFloat_FromDouble(36525.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_72 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_81cat2v6, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_163cat2v6, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__cat2v6, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_cat2v6, __pyx_t_2) < 0) __PYX_ERR(2, 794, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":837 + /* "src/tpm_astro.pxi":837 * * * def v62cat(V6C v6, C=36525.0): # <<<<<<<<<<<<<< * """Return catalog quantites given a V6C vector. * */ - __pyx_t_2 = PyFloat_FromDouble(36525.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_73 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_82v62cat, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_165v62cat, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 837, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__v62cat, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 837; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_v62cat, __pyx_t_2) < 0) __PYX_ERR(2, 837, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":879 + /* "src/tpm_astro.pxi":879 * * * def proper_motion(V6C v6, end, start): # <<<<<<<<<<<<<< * """Apply proper motion to the given V6C vector. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_83proper_motion, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_167proper_motion, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__proper_motion, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 879; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_proper_motion, __pyx_t_2) < 0) __PYX_ERR(2, 879, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":916 + /* "src/tpm_astro.pxi":916 * * * def aberrate(V6C p, V6C e, int flag): # <<<<<<<<<<<<<< * """Apply aberration of light to a state vector. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_84aberrate, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_169aberrate, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 916, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__aberrate, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 916; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_aberrate, __pyx_t_2) < 0) __PYX_ERR(2, 916, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":956 + /* "src/tpm_astro.pxi":956 * * * def azel2hadec(V6C v6, double latitude): # <<<<<<<<<<<<<< * """Convert V6C from (AZ, EL) to (HA, DEC). * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_85azel2hadec, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_171azel2hadec, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 956, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__azel2hadec, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 956; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_azel2hadec, __pyx_t_2) < 0) __PYX_ERR(2, 956, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":987 + /* "src/tpm_astro.pxi":987 * * * def hadec2azel(V6C v6, double latitude): # <<<<<<<<<<<<<< * """Convert V6C from (HA, DEC) to (AZ, EL). * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_86hadec2azel, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_173hadec2azel, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 987, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__hadec2azel, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_hadec2azel, __pyx_t_2) < 0) __PYX_ERR(2, 987, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1017 + /* "src/tpm_astro.pxi":1017 * * * def evp(double tdb): # <<<<<<<<<<<<<< * """J2000 Barycentric and Heliocentric state vectors for Earth. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_87evp, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_175evp, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1017, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__evp, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_evp, __pyx_t_2) < 0) __PYX_ERR(2, 1017, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1048 + /* "src/tpm_astro.pxi":1048 * * * def ecl2equ(V6C v6, double obl): # <<<<<<<<<<<<<< * """Convert Ecliptic to FK5 Equatorial coordinates. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_88ecl2equ, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_177ecl2equ, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1048, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ecl2equ, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1048; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ecl2equ, __pyx_t_2) < 0) __PYX_ERR(2, 1048, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1075 + /* "src/tpm_astro.pxi":1075 * * * def equ2ecl(V6C v6, double obl): # <<<<<<<<<<<<<< * """Convert FK5 equatorial coordinates to Ecliptic coordinates. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_89equ2ecl, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_179equ2ecl, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1075, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__equ2ecl, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1075; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_equ2ecl, __pyx_t_2) < 0) __PYX_ERR(2, 1075, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1103 + /* "src/tpm_astro.pxi":1103 * * * def ellab(double tdt, V6C star, int flag): # <<<<<<<<<<<<<< * """Add or remove elliptic aberration. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_90ellab, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_181ellab, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ellab, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ellab, __pyx_t_2) < 0) __PYX_ERR(2, 1103, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1133 + /* "src/tpm_astro.pxi":1133 * * * def equ2gal(V6C v6): # <<<<<<<<<<<<<< * """Convert FK4 Equatorial to Galactic. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_91equ2gal, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_183equ2gal, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1133, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__equ2gal, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_equ2gal, __pyx_t_2) < 0) __PYX_ERR(2, 1133, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1159 + /* "src/tpm_astro.pxi":1159 * * * def gal2equ(V6C v6): # <<<<<<<<<<<<<< * """Convert state vector from Galactic to FK4 Equatorial. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_92gal2equ, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_185gal2equ, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__gal2equ, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_gal2equ, __pyx_t_2) < 0) __PYX_ERR(2, 1159, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1186 + /* "src/tpm_astro.pxi":1186 * * * def eterms(double ep): # <<<<<<<<<<<<<< * """Return a V6C vector containing the e-terms of aberration. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_93eterms, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_187eterms, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__eterms, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_eterms, __pyx_t_2) < 0) __PYX_ERR(2, 1186, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1210 + /* "src/tpm_astro.pxi":1210 * * * def fk425(V6C v6): # <<<<<<<<<<<<<< * """Precess a V6C vector from FK4 system to FK5 system. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_94fk425, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_189fk425, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fk425, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fk425, __pyx_t_2) < 0) __PYX_ERR(2, 1210, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1234 + /* "src/tpm_astro.pxi":1234 * * * def fk524(V6C v6): # <<<<<<<<<<<<<< * """Precess state vector from FK5 to FK4. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_95fk524, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_191fk524, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fk524, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_fk524, __pyx_t_2) < 0) __PYX_ERR(2, 1234, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1258 + /* "src/tpm_astro.pxi":1258 * * * def geod2geoc(lon, lat, alt): # <<<<<<<<<<<<<< * """Convert geodetic position to geocentric position. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_96geod2geoc, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_193geod2geoc, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1258, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__geod2geoc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_geod2geoc, __pyx_t_2) < 0) __PYX_ERR(2, 1258, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1288 + /* "src/tpm_astro.pxi":1288 * * * def ldeflect(V6C star, V6C earth, int flag): # <<<<<<<<<<<<<< * """Apply General Relativity deflection of light. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_97ldeflect, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_195ldeflect, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ldeflect, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ldeflect, __pyx_t_2) < 0) __PYX_ERR(2, 1288, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1316 + /* "src/tpm_astro.pxi":1316 * * * def precess(double start, double end, V6C v6, int pflag): # <<<<<<<<<<<<<< * """Precess a state vector within an inertial frame. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_98precess, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_197precess, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__precess, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_precess, __pyx_t_2) < 0) __PYX_ERR(2, 1316, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1355 + /* "src/tpm_astro.pxi":1355 * * * def precess_m(start, end, pflag, sflag): # <<<<<<<<<<<<<< * """Precession matrix for time between end and start. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_99precess_m, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_199precess_m, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1355, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__precess_m, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_precess_m, __pyx_t_2) < 0) __PYX_ERR(2, 1355, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1392 + /* "src/tpm_astro.pxi":1392 * * * def eccentricity(tdt): # <<<<<<<<<<<<<< * """Eccentricity of Earth's orbit. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_100eccentricity, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1392; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_201eccentricity, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__eccentricity, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1392; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_eccentricity, __pyx_t_2) < 0) __PYX_ERR(2, 1392, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1414 + /* "src/tpm_astro.pxi":1414 * * * def eccentricity_dot(tdt): # <<<<<<<<<<<<<< * """Rate of change in the eccentricity of Earth's orbit. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_101eccentricity_dot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1414; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_203eccentricity_dot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1414, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__eccentricity_dot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1414; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_eccentricity_dot, __pyx_t_2) < 0) __PYX_ERR(2, 1414, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1437 + /* "src/tpm_astro.pxi":1437 * * * def obliquity(tdt): # <<<<<<<<<<<<<< * """Mean obliquity of Ecliptic(epoch J2000). * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_102obliquity, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1437; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_205obliquity, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__obliquity, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1437; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_obliquity, __pyx_t_2) < 0) __PYX_ERR(2, 1437, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1459 + /* "src/tpm_astro.pxi":1459 * * * def obliquity_dot(tdt): # <<<<<<<<<<<<<< * """Rate of change of mean obliquity of Ecliptic(epoch J2000). * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_103obliquity_dot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_207obliquity_dot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1459, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__obliquity_dot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_obliquity_dot, __pyx_t_2) < 0) __PYX_ERR(2, 1459, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1482 + /* "src/tpm_astro.pxi":1482 * * * def refco(lat=0.557744205098, alt=2093.093, # <<<<<<<<<<<<<< * T=273.15, P=1013.25, rh=0.0, * wavelength=0.550, eps=1e-8): */ - __pyx_t_2 = PyFloat_FromDouble(0.557744205098); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_209refco, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_k_74 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(2093.093); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_75 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1483 - * - * def refco(lat=0.557744205098, alt=2093.093, - * T=273.15, P=1013.25, rh=0.0, # <<<<<<<<<<<<<< - * wavelength=0.550, eps=1e-8): - * """Refractions coefficients for use with ``refract()``. - */ - __pyx_t_2 = PyFloat_FromDouble(273.15); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1483; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_76 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(1013.25); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1483; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_77 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(0.0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1483; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_78 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1484 - * def refco(lat=0.557744205098, alt=2093.093, - * T=273.15, P=1013.25, rh=0.0, - * wavelength=0.550, eps=1e-8): # <<<<<<<<<<<<<< - * """Refractions coefficients for use with ``refract()``. - * - */ - __pyx_t_2 = PyFloat_FromDouble(0.550); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_79 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyFloat_FromDouble(1e-8); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_80 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1482 - * - * - * def refco(lat=0.557744205098, alt=2093.093, # <<<<<<<<<<<<<< - * T=273.15, P=1013.25, rh=0.0, - * wavelength=0.550, eps=1e-8): - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_104refco, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__refco, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_refco, __pyx_t_2) < 0) __PYX_ERR(2, 1482, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1527 + /* "src/tpm_astro.pxi":1527 * * * def refract(zx, refa, refb, flag): # <<<<<<<<<<<<<< * """Returns change in zenith distance due to refraction. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_105refract, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_211refract, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__refract, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_refract, __pyx_t_2) < 0) __PYX_ERR(2, 1527, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1556 + /* "src/tpm_astro.pxi":1556 * * * def solar_perigee(tdt): # <<<<<<<<<<<<<< * """Mean longitude of the perigee of solar orbit. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_106solar_perigee, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_213solar_perigee, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1556, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__solar_perigee, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_solar_perigee, __pyx_t_2) < 0) __PYX_ERR(2, 1556, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1573 + /* "src/tpm_astro.pxi":1573 * * * def solar_perigee_dot(tdt): # <<<<<<<<<<<<<< * """Rate of change of solar perigee. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_107solar_perigee_dot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_215solar_perigee_dot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__solar_perigee_dot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_solar_perigee_dot, __pyx_t_2) < 0) __PYX_ERR(2, 1573, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1590 + /* "src/tpm_astro.pxi":1590 * * * def theta(start, end, pflag): # <<<<<<<<<<<<<< * """FK4 and FK5 precession angles. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_108theta, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_217theta, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__theta, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_theta, __pyx_t_2) < 0) __PYX_ERR(2, 1590, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1623 + /* "src/tpm_astro.pxi":1623 * * * def thetadot(start, end, pflag): # <<<<<<<<<<<<<< * """Rate of change of FK4 and FK5 precession angles. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_109thetadot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_219thetadot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__thetadot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_thetadot, __pyx_t_2) < 0) __PYX_ERR(2, 1623, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1657 + /* "src/tpm_astro.pxi":1657 * * * def zee(start, end, pflag): # <<<<<<<<<<<<<< * """FK4 and FK5 precession angles. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_110zee, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_221zee, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__zee, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_zee, __pyx_t_2) < 0) __PYX_ERR(2, 1657, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1690 + /* "src/tpm_astro.pxi":1690 * * * def zeedot(start, end, pflag): # <<<<<<<<<<<<<< * """Rate of change of FK4 and FK5 precession angles. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_111zeedot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_223zeedot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1690, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__zeedot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_zeedot, __pyx_t_2) < 0) __PYX_ERR(2, 1690, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1723 + /* "src/tpm_astro.pxi":1723 * * * def zeta(start, end, pflag): # <<<<<<<<<<<<<< * """FK4 and FK5 precession angles. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_112zeta, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_225zeta, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1723, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__zeta, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_zeta, __pyx_t_2) < 0) __PYX_ERR(2, 1723, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1756 + /* "src/tpm_astro.pxi":1756 * * * def zetadot(start, end, pflag): # <<<<<<<<<<<<<< * """Rate of change of FK4 and FK5 precession angles. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_113zetadot, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_227zetadot, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__zetadot, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_zetadot, __pyx_t_2) < 0) __PYX_ERR(2, 1756, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "/home/phn/projects/pytpm/src/tpm_astro.pxi":1790 + /* "src/tpm_astro.pxi":1790 * * * def nutations(tdt): # <<<<<<<<<<<<<< * """Nutations in longitude and obliquity. * */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_114nutations, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1790; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_229nutations, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__nutations, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[2]; __pyx_lineno = 1790; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_nutations, __pyx_t_2) < 0) __PYX_ERR(2, 1790, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/tpm.pyx":13 + /* "tpm.pyx":13 * * # Some functions that use features in TPM. * def nalpha(alpha, degrees=True): # <<<<<<<<<<<<<< * """Normalize angle in the x-y plane, i.e., longitudinal angle. * */ - __pyx_t_2 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_231nalpha, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_k_81 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_115nalpha, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__nalpha, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_nalpha, __pyx_t_2) < 0) __PYX_ERR(5, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/tpm.pyx":53 + /* "tpm.pyx":53 * return tpm_times.r2r(alpha) * * def ndelta(delta, degrees=True): # <<<<<<<<<<<<<< * """Normalize angle out of the x-y plane, i.e., latitudinal angle. * */ - __pyx_t_2 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_k_82 = __pyx_t_2; - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5pytpm_3tpm_116ndelta, NULL, __pyx_n_s_99); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_3tpm_233ndelta, NULL, __pyx_n_s_tpm); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ndelta, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ndelta, __pyx_t_2) < 0) __PYX_ERR(5, 53, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + /* "tpm.pyx":1 + * cimport tpm_times # <<<<<<<<<<<<<< + * cimport tpm_vec + * cimport tpm_tpm + */ + __pyx_t_2 = __Pyx_PyDict_NewPresized(47); if (unlikely(!__pyx_t_2)) __PYX_ERR(5, 1, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_DMS_normalize_line_161, __pyx_kp_u_Normalize_components_Normalizes) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_HMS_normalize_line_367, __pyx_kp_u_Normalize_components_Normalizes_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_YMD_normalize_line_594, __pyx_kp_u_Normalize_YMD_The_components_y_m) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_YMD_to_jd_line_612, __pyx_kp_u_Convert_into_a_tpm_JD_object_Ret) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_YMD_to_j_line_633, __pyx_kp_u_Convert_YMD_into_scalar_Julian_d) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_YMD_raw_str_line_649, __pyx_kp_u_A_string_representation_in_the_r) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_YMD_doy_line_677, __pyx_kp_u_Day_of_the_year_corresponding_to) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_YMD_to_year_line_695, __pyx_kp_u_Convert_date_time_into_a_year_nu) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_JD_normalize_line_847, __pyx_kp_u_Normalize_the_JD_structure_Norma) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_JD_to_ymd_line_865, __pyx_kp_u_Convert_to_YMD_Gregorian_calenda) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_JD_to_j_line_888, __pyx_kp_u_Convert_JD_to_a_scalar_Julian_da) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_JD_to_year_line_905, __pyx_kp_u_Convert_JD_into_year_Gregorian_c) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_byear2jd_line_927, __pyx_kp_u_Convert_Besselian_year_into_a_Ju) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_jd2byear_line_951, __pyx_kp_u_Convert_Julian_date_into_a_Besse) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_jyear2jd_line_975, __pyx_kp_u_Convert_Julian_year_into_a_Julia) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_jd2jyear_line_999, __pyx_kp_u_Convert_Julian_date_into_Julian) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_gcal2j_line_1053, __pyx_kp_u_Return_Julian_day_number_for_the) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_jcal2j_line_1085, __pyx_kp_u_Return_Julian_day_number_for_the_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_j2gcal_line_1119, __pyx_kp_u_Convert_Julian_date_into_Gregori) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_j2jcal_line_1149, __pyx_kp_u_Convert_Julian_date_into_Julian_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_j2y_line_1179, __pyx_kp_u_Convert_Julian_date_into_Gregori_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_y2j_line_1206, __pyx_kp_u_Convert_Gregorian_calendar_year) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_j2dow_line_1232, __pyx_kp_u_Return_day_of_week_for_the_given) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_y2doy_line_1257, __pyx_kp_u_Return_number_of_days_in_the_giv) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_alpha_line_1287, __pyx_kp_u_Normalize_and_format_angle_in_ra) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_delta_line_1331, __pyx_kp_u_Normalize_and_format_angle_in_ra_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_d_line_1370, __pyx_kp_u_Format_angle_in_degrees_into_a_s) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_h_line_1410, __pyx_kp_u_Format_hours_into_a_string_H_M_S) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_j_line_1444, __pyx_kp_u_Format_Julian_date_into_a_string) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_r_line_1480, __pyx_kp_u_Format_radians_into_a_string_wit) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_fmt_y_line_1517, __pyx_kp_u_Format_years_including_fractiona) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_d2d_line_1549, __pyx_kp_u_Normalize_angle_in_degrees_into) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_h2h_line_1579, __pyx_kp_u_Normalize_angle_in_hours_into_0) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_r2r_line_1611, __pyx_kp_u_Normalize_angle_in_radians_into) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_d2h_line_1646, __pyx_kp_u_Convert_angle_in_degrees_into_ho) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_h2d_line_1672, __pyx_kp_u_Convert_angle_in_hours_into_degr) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_d2r_line_1698, __pyx_kp_u_Convert_angle_in_degrees_into_de) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_r2d_line_1724, __pyx_kp_u_Convert_angle_in_radians_into_de) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_h2r_line_1752, __pyx_kp_u_Convert_angle_in_hours_into_radi) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_r2h_line_1776, __pyx_kp_u_Convert_angle_in_radians_into_ho) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_d2as_line_1800, __pyx_kp_u_Convert_angle_in_degrees_into_ar) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_as2d_line_1824, __pyx_kp_u_Convert_angle_in_arc_seconds_int) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_as2h_line_1848, __pyx_kp_u_Convert_angle_in_arc_seconds_int_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_h2as_line_1872, __pyx_kp_u_Convert_angle_in_hours_into_arc) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_r2as_line_1896, __pyx_kp_u_Convert_angle_in_radians_into_ar) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_as2r_line_1919, __pyx_kp_u_Convert_angle_in_arc_seconds_int_3) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_kp_u_tpm_state_line_195, __pyx_kp_u_Return_state_name_given_state_id) < 0) __PYX_ERR(5, 1, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(5, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "src/tpm.pyx":1 - * cimport tpm_times # <<<<<<<<<<<<<< - * cimport tpm_vec - * cimport tpm_tpm - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_160), ((PyObject *)__pyx_kp_u_161)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_162), ((PyObject *)__pyx_kp_u_163)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_164), ((PyObject *)__pyx_kp_u_165)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_166), ((PyObject *)__pyx_kp_u_167)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_168), ((PyObject *)__pyx_kp_u_169)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_170), ((PyObject *)__pyx_kp_u_171)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_172), ((PyObject *)__pyx_kp_u_173)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_174), ((PyObject *)__pyx_kp_u_175)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_176), ((PyObject *)__pyx_kp_u_177)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_178), ((PyObject *)__pyx_kp_u_179)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_180), ((PyObject *)__pyx_kp_u_181)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_182), ((PyObject *)__pyx_kp_u_183)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_184), ((PyObject *)__pyx_kp_u_185)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_186), ((PyObject *)__pyx_kp_u_187)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_188), ((PyObject *)__pyx_kp_u_189)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_190), ((PyObject *)__pyx_kp_u_191)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_192), ((PyObject *)__pyx_kp_u_193)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_194), ((PyObject *)__pyx_kp_u_195)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_196), ((PyObject *)__pyx_kp_u_197)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_198), ((PyObject *)__pyx_kp_u_199)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_200), ((PyObject *)__pyx_kp_u_201)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_202), ((PyObject *)__pyx_kp_u_203)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_204), ((PyObject *)__pyx_kp_u_205)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_206), ((PyObject *)__pyx_kp_u_207)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_208), ((PyObject *)__pyx_kp_u_209)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_210), ((PyObject *)__pyx_kp_u_211)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_212), ((PyObject *)__pyx_kp_u_213)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_214), ((PyObject *)__pyx_kp_u_215)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_216), ((PyObject *)__pyx_kp_u_217)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_218), ((PyObject *)__pyx_kp_u_219)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_220), ((PyObject *)__pyx_kp_u_221)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_222), ((PyObject *)__pyx_kp_u_223)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_224), ((PyObject *)__pyx_kp_u_225)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_226), ((PyObject *)__pyx_kp_u_227)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_228), ((PyObject *)__pyx_kp_u_229)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_230), ((PyObject *)__pyx_kp_u_231)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_232), ((PyObject *)__pyx_kp_u_233)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_234), ((PyObject *)__pyx_kp_u_235)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_236), ((PyObject *)__pyx_kp_u_237)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_238), ((PyObject *)__pyx_kp_u_239)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_240), ((PyObject *)__pyx_kp_u_241)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_242), ((PyObject *)__pyx_kp_u_243)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_244), ((PyObject *)__pyx_kp_u_245)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_246), ((PyObject *)__pyx_kp_u_247)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_248), ((PyObject *)__pyx_kp_u_249)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_250), ((PyObject *)__pyx_kp_u_251)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_kp_u_252), ((PyObject *)__pyx_kp_u_253)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[4]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - if (__pyx_m) { - __Pyx_AddTraceback("init pytpm.tpm"); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init pytpm.tpm"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif + /*--- Wrapped vars code ---*/ + + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_XDECREF(__pyx_t_1); + __Pyx_XDECREF(__pyx_t_2); + __Pyx_XDECREF(__pyx_t_3); + if (__pyx_m) { + if (__pyx_d) { + __Pyx_AddTraceback("init tpm", __pyx_clineno, __pyx_lineno, __pyx_filename); + } + Py_CLEAR(__pyx_m); + } else if (!PyErr_Occurred()) { + PyErr_SetString(PyExc_ImportError, "init tpm"); + } + __pyx_L0:; + __Pyx_RefNannyFinishContext(); + #if CYTHON_PEP489_MULTI_PHASE_INIT + return (__pyx_m != NULL) ? 0 : -1; + #elif PY_MAJOR_VERSION >= 3 + return __pyx_m; + #else + return; + #endif +} + +/* --- Runtime support code --- */ +/* Refnanny */ +#if CYTHON_REFNANNY +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { + PyObject *m = NULL, *p = NULL; + void *r = NULL; + m = PyImport_ImportModule(modname); + if (!m) goto end; + p = PyObject_GetAttrString(m, "RefNannyAPI"); + if (!p) goto end; + r = PyLong_AsVoidPtr(p); +end: + Py_XDECREF(p); + Py_XDECREF(m); + return (__Pyx_RefNannyAPIStruct *)r; +} +#endif + +/* PyObjectGetAttrStr */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_getattro)) + return tp->tp_getattro(obj, attr_name); +#if PY_MAJOR_VERSION < 3 + if (likely(tp->tp_getattr)) + return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); +#endif + return PyObject_GetAttr(obj, attr_name); +} +#endif + +/* GetBuiltinName */ +static PyObject *__Pyx_GetBuiltinName(PyObject *name) { + PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name); + if (unlikely(!result)) { + PyErr_Format(PyExc_NameError, +#if PY_MAJOR_VERSION >= 3 + "name '%U' is not defined", name); +#else + "name '%.200s' is not defined", PyString_AS_STRING(name)); +#endif + } + return result; +} + +/* RaiseArgTupleInvalid */ +static void __Pyx_RaiseArgtupleInvalid( + const char* func_name, + int exact, + Py_ssize_t num_min, + Py_ssize_t num_max, + Py_ssize_t num_found) +{ + Py_ssize_t num_expected; + const char *more_or_less; + if (num_found < num_min) { + num_expected = num_min; + more_or_less = "at least"; + } else { + num_expected = num_max; + more_or_less = "at most"; + } + if (exact) { + more_or_less = "exactly"; + } + PyErr_Format(PyExc_TypeError, + "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)", + func_name, more_or_less, num_expected, + (num_expected == 1) ? "" : "s", num_found); +} + +/* KeywordStringCheck */ +static int __Pyx_CheckKeywordStrings( + PyObject *kwdict, + const char* function_name, + int kw_allowed) +{ + PyObject* key = 0; + Py_ssize_t pos = 0; +#if CYTHON_COMPILING_IN_PYPY + if (!kw_allowed && PyDict_Next(kwdict, &pos, &key, 0)) + goto invalid_keyword; + return 1; +#else + while (PyDict_Next(kwdict, &pos, &key, 0)) { + #if PY_MAJOR_VERSION < 3 + if (unlikely(!PyString_Check(key))) + #endif + if (unlikely(!PyUnicode_Check(key))) + goto invalid_keyword_type; + } + if ((!kw_allowed) && unlikely(key)) + goto invalid_keyword; + return 1; +invalid_keyword_type: + PyErr_Format(PyExc_TypeError, + "%.200s() keywords must be strings", function_name); + return 0; +#endif +invalid_keyword: + PyErr_Format(PyExc_TypeError, + #if PY_MAJOR_VERSION < 3 + "%.200s() got an unexpected keyword argument '%.200s'", + function_name, PyString_AsString(key)); + #else + "%s() got an unexpected keyword argument '%U'", + function_name, key); + #endif + return 0; +} + +/* IterFinish */ +static CYTHON_INLINE int __Pyx_IterFinish(void) { +#if CYTHON_FAST_THREAD_STATE + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject* exc_type = tstate->curexc_type; + if (unlikely(exc_type)) { + if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) { + PyObject *exc_value, *exc_tb; + exc_value = tstate->curexc_value; + exc_tb = tstate->curexc_traceback; + tstate->curexc_type = 0; + tstate->curexc_value = 0; + tstate->curexc_traceback = 0; + Py_DECREF(exc_type); + Py_XDECREF(exc_value); + Py_XDECREF(exc_tb); + return 0; + } else { + return -1; + } + } + return 0; +#else + if (unlikely(PyErr_Occurred())) { + if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { + PyErr_Clear(); + return 0; + } else { + return -1; + } + } + return 0; +#endif +} + +/* PyFunctionFastCall */ +#if CYTHON_FAST_PYCALL +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, + PyObject *globals) { + PyFrameObject *f; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + PyObject **fastlocals; + Py_ssize_t i; + PyObject *result; + assert(globals != NULL); + /* XXX Perhaps we should create a specialized + PyFrame_New() that doesn't take locals, but does + take builtins without sanity checking them. + */ + assert(tstate != NULL); + f = PyFrame_New(tstate, co, globals, NULL); + if (f == NULL) { + return NULL; + } + fastlocals = __Pyx_PyFrame_GetLocalsplus(f); + for (i = 0; i < na; i++) { + Py_INCREF(*args); + fastlocals[i] = *args++; + } + result = PyEval_EvalFrameEx(f,0); + ++tstate->recursion_depth; + Py_DECREF(f); + --tstate->recursion_depth; + return result; +} +#if 1 || PY_VERSION_HEX < 0x030600B1 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { + PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); + PyObject *globals = PyFunction_GET_GLOBALS(func); + PyObject *argdefs = PyFunction_GET_DEFAULTS(func); + PyObject *closure; +#if PY_MAJOR_VERSION >= 3 + PyObject *kwdefs; +#endif + PyObject *kwtuple, **k; + PyObject **d; + Py_ssize_t nd; + Py_ssize_t nk; + PyObject *result; + assert(kwargs == NULL || PyDict_Check(kwargs)); + nk = kwargs ? PyDict_Size(kwargs) : 0; + if (Py_EnterRecursiveCall((char*)" while calling a Python object")) { + return NULL; + } + if ( +#if PY_MAJOR_VERSION >= 3 + co->co_kwonlyargcount == 0 && +#endif + likely(kwargs == NULL || nk == 0) && + co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { + if (argdefs == NULL && co->co_argcount == nargs) { + result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); + goto done; + } + else if (nargs == 0 && argdefs != NULL + && co->co_argcount == Py_SIZE(argdefs)) { + /* function called with no arguments, but all parameters have + a default value: use default values as arguments .*/ + args = &PyTuple_GET_ITEM(argdefs, 0); + result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); + goto done; + } + } + if (kwargs != NULL) { + Py_ssize_t pos, i; + kwtuple = PyTuple_New(2 * nk); + if (kwtuple == NULL) { + result = NULL; + goto done; + } + k = &PyTuple_GET_ITEM(kwtuple, 0); + pos = i = 0; + while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { + Py_INCREF(k[i]); + Py_INCREF(k[i+1]); + i += 2; + } + nk = i / 2; + } + else { + kwtuple = NULL; + k = NULL; + } + closure = PyFunction_GET_CLOSURE(func); +#if PY_MAJOR_VERSION >= 3 + kwdefs = PyFunction_GET_KW_DEFAULTS(func); +#endif + if (argdefs != NULL) { + d = &PyTuple_GET_ITEM(argdefs, 0); + nd = Py_SIZE(argdefs); + } + else { + d = NULL; + nd = 0; + } +#if PY_MAJOR_VERSION >= 3 + result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, kwdefs, closure); +#else + result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, + args, (int)nargs, + k, (int)nk, + d, (int)nd, closure); +#endif + Py_XDECREF(kwtuple); +done: + Py_LeaveRecursiveCall(); + return result; +} +#endif +#endif + +/* PyObjectCall */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { + PyObject *result; + ternaryfunc call = func->ob_type->tp_call; + if (unlikely(!call)) + return PyObject_Call(func, arg, kw); + if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) + return NULL; + result = (*call)(func, arg, kw); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* PyObjectCallMethO */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { + PyObject *self, *result; + PyCFunction cfunc; + cfunc = PyCFunction_GET_FUNCTION(func); + self = PyCFunction_GET_SELF(func); + if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) + return NULL; + result = cfunc(self, arg); + Py_LeaveRecursiveCall(); + if (unlikely(!result) && unlikely(!PyErr_Occurred())) { + PyErr_SetString( + PyExc_SystemError, + "NULL result without error in PyObject_Call"); + } + return result; +} +#endif + +/* PyObjectCallNoArg */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) { +#if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCall(func, NULL, 0); + } +#endif +#ifdef __Pyx_CyFunction_USED + if (likely(PyCFunction_Check(func) || __Pyx_CyFunction_Check(func))) +#else + if (likely(PyCFunction_Check(func))) +#endif + { + if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) { + return __Pyx_PyObject_CallMethO(func, NULL); + } + } + return __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL); +} +#endif + +/* PyCFunctionFastCall */ +#if CYTHON_FAST_PYCCALL +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) { + PyCFunctionObject *func = (PyCFunctionObject*)func_obj; + PyCFunction meth = PyCFunction_GET_FUNCTION(func); + PyObject *self = PyCFunction_GET_SELF(func); + int flags = PyCFunction_GET_FLAGS(func); + assert(PyCFunction_Check(func)); + assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS))); + assert(nargs >= 0); + assert(nargs == 0 || args != NULL); + /* _PyCFunction_FastCallDict() must not be called with an exception set, + because it may clear it (directly or indirectly) and so the + caller loses its exception */ + assert(!PyErr_Occurred()); + if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) { + return (*((__Pyx_PyCFunctionFastWithKeywords)(void*)meth)) (self, args, nargs, NULL); + } else { + return (*((__Pyx_PyCFunctionFast)(void*)meth)) (self, args, nargs); + } +} +#endif + +/* PyObjectCallOneArg */ +#if CYTHON_COMPILING_IN_CPYTHON +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) { + PyObject *result; + PyObject *args = PyTuple_New(1); + if (unlikely(!args)) return NULL; + Py_INCREF(arg); + PyTuple_SET_ITEM(args, 0, arg); + result = __Pyx_PyObject_Call(func, args, NULL); + Py_DECREF(args); + return result; +} +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { +#if CYTHON_FAST_PYCALL + if (PyFunction_Check(func)) { + return __Pyx_PyFunction_FastCall(func, &arg, 1); + } +#endif + if (likely(PyCFunction_Check(func))) { + if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { + return __Pyx_PyObject_CallMethO(func, arg); +#if CYTHON_FAST_PYCCALL + } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) { + return __Pyx_PyCFunction_FastCall(func, &arg, 1); +#endif + } + } + return __Pyx__PyObject_CallOneArg(func, arg); +} +#else +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { + PyObject *result; + PyObject *args = PyTuple_Pack(1, arg); + if (unlikely(!args)) return NULL; + result = __Pyx_PyObject_Call(func, args, NULL); + Py_DECREF(args); + return result; +} +#endif + +/* PyObjectGetMethod */ +static int __Pyx_PyObject_GetMethod(PyObject *obj, PyObject *name, PyObject **method) { + PyObject *attr; +#if CYTHON_UNPACK_METHODS && CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_PYTYPE_LOOKUP + PyTypeObject *tp = Py_TYPE(obj); + PyObject *descr; + descrgetfunc f = NULL; + PyObject **dictptr, *dict; + int meth_found = 0; + assert (*method == NULL); + if (unlikely(tp->tp_getattro != PyObject_GenericGetAttr)) { + attr = __Pyx_PyObject_GetAttrStr(obj, name); + goto try_unpack; + } + if (unlikely(tp->tp_dict == NULL) && unlikely(PyType_Ready(tp) < 0)) { + return 0; + } + descr = _PyType_Lookup(tp, name); + if (likely(descr != NULL)) { + Py_INCREF(descr); +#if PY_MAJOR_VERSION >= 3 + #ifdef __Pyx_CyFunction_USED + if (likely(PyFunction_Check(descr) || (Py_TYPE(descr) == &PyMethodDescr_Type) || __Pyx_CyFunction_Check(descr))) + #else + if (likely(PyFunction_Check(descr) || (Py_TYPE(descr) == &PyMethodDescr_Type))) + #endif +#else + #ifdef __Pyx_CyFunction_USED + if (likely(PyFunction_Check(descr) || __Pyx_CyFunction_Check(descr))) + #else + if (likely(PyFunction_Check(descr))) + #endif +#endif + { + meth_found = 1; + } else { + f = Py_TYPE(descr)->tp_descr_get; + if (f != NULL && PyDescr_IsData(descr)) { + attr = f(descr, obj, (PyObject *)Py_TYPE(obj)); + Py_DECREF(descr); + goto try_unpack; + } + } + } + dictptr = _PyObject_GetDictPtr(obj); + if (dictptr != NULL && (dict = *dictptr) != NULL) { + Py_INCREF(dict); + attr = __Pyx_PyDict_GetItemStr(dict, name); + if (attr != NULL) { + Py_INCREF(attr); + Py_DECREF(dict); + Py_XDECREF(descr); + goto try_unpack; + } + Py_DECREF(dict); + } + if (meth_found) { + *method = descr; + return 1; + } + if (f != NULL) { + attr = f(descr, obj, (PyObject *)Py_TYPE(obj)); + Py_DECREF(descr); + goto try_unpack; + } + if (descr != NULL) { + *method = descr; + return 0; + } + PyErr_Format(PyExc_AttributeError, +#if PY_MAJOR_VERSION >= 3 + "'%.50s' object has no attribute '%U'", + tp->tp_name, name); +#else + "'%.50s' object has no attribute '%.400s'", + tp->tp_name, PyString_AS_STRING(name)); +#endif + return 0; +#else + attr = __Pyx_PyObject_GetAttrStr(obj, name); + goto try_unpack; +#endif +try_unpack: +#if CYTHON_UNPACK_METHODS + if (likely(attr) && PyMethod_Check(attr) && likely(PyMethod_GET_SELF(attr) == obj)) { + PyObject *function = PyMethod_GET_FUNCTION(attr); + Py_INCREF(function); + Py_DECREF(attr); + *method = function; + return 1; + } +#endif + *method = attr; + return 0; +} + +/* PyObjectCallMethod0 */ +static PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) { + PyObject *method = NULL, *result = NULL; + int is_method = __Pyx_PyObject_GetMethod(obj, method_name, &method); + if (likely(is_method)) { + result = __Pyx_PyObject_CallOneArg(method, obj); + Py_DECREF(method); + return result; + } + if (unlikely(!method)) goto bad; + result = __Pyx_PyObject_CallNoArg(method); + Py_DECREF(method); +bad: + return result; +} + +/* RaiseNeedMoreValuesToUnpack */ +static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { + PyErr_Format(PyExc_ValueError, + "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack", + index, (index == 1) ? "" : "s"); } -/* Runtime support code */ +/* RaiseTooManyValuesToUnpack */ +static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { + PyErr_Format(PyExc_ValueError, + "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected); +} -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) - PyErr_SetObject(PyExc_NameError, name); - return result; +/* UnpackItemEndCheck */ +static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { + if (unlikely(retval)) { + Py_DECREF(retval); + __Pyx_RaiseTooManyValuesError(expected); + return -1; + } else { + return __Pyx_IterFinish(); + } + return 0; } -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *number, *more_or_less; +/* RaiseNoneIterError */ +static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { + PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); +} - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; +/* UnpackTupleError */ +static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) { + if (t == Py_None) { + __Pyx_RaiseNoneNotIterableError(); + } else if (PyTuple_GET_SIZE(t) < index) { + __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(t)); } else { - num_expected = num_max; - more_or_less = "at most"; + __Pyx_RaiseTooManyValuesError(index); } - if (exact) { - more_or_less = "exactly"; +} + +/* UnpackTuple2 */ +static CYTHON_INLINE int __Pyx_unpack_tuple2_exact( + PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, int decref_tuple) { + PyObject *value1 = NULL, *value2 = NULL; +#if CYTHON_COMPILING_IN_PYPY + value1 = PySequence_ITEM(tuple, 0); if (unlikely(!value1)) goto bad; + value2 = PySequence_ITEM(tuple, 1); if (unlikely(!value2)) goto bad; +#else + value1 = PyTuple_GET_ITEM(tuple, 0); Py_INCREF(value1); + value2 = PyTuple_GET_ITEM(tuple, 1); Py_INCREF(value2); +#endif + if (decref_tuple) { + Py_DECREF(tuple); } - number = (num_expected == 1) ? "" : "s"; - PyErr_Format(PyExc_TypeError, - #if PY_VERSION_HEX < 0x02050000 - "%s() takes %s %d positional argument%s (%d given)", - #else - "%s() takes %s %zd positional argument%s (%zd given)", - #endif - func_name, more_or_less, num_expected, number, num_found); + *pvalue1 = value1; + *pvalue2 = value2; + return 0; +#if CYTHON_COMPILING_IN_PYPY +bad: + Py_XDECREF(value1); + Py_XDECREF(value2); + if (decref_tuple) { Py_XDECREF(tuple); } + return -1; +#endif +} +static int __Pyx_unpack_tuple2_generic(PyObject* tuple, PyObject** pvalue1, PyObject** pvalue2, + int has_known_size, int decref_tuple) { + Py_ssize_t index; + PyObject *value1 = NULL, *value2 = NULL, *iter = NULL; + iternextfunc iternext; + iter = PyObject_GetIter(tuple); + if (unlikely(!iter)) goto bad; + if (decref_tuple) { Py_DECREF(tuple); tuple = NULL; } + iternext = Py_TYPE(iter)->tp_iternext; + value1 = iternext(iter); if (unlikely(!value1)) { index = 0; goto unpacking_failed; } + value2 = iternext(iter); if (unlikely(!value2)) { index = 1; goto unpacking_failed; } + if (!has_known_size && unlikely(__Pyx_IternextUnpackEndCheck(iternext(iter), 2))) goto bad; + Py_DECREF(iter); + *pvalue1 = value1; + *pvalue2 = value2; + return 0; +unpacking_failed: + if (!has_known_size && __Pyx_IterFinish() == 0) + __Pyx_RaiseNeedMoreValuesError(index); +bad: + Py_XDECREF(iter); + Py_XDECREF(value1); + Py_XDECREF(value2); + if (decref_tuple) { Py_XDECREF(tuple); } + return -1; } -static CYTHON_INLINE int __Pyx_CheckKeywordStrings( - PyObject *kwdict, - const char* function_name, - int kw_allowed) -{ - PyObject* key = 0; - Py_ssize_t pos = 0; - while (PyDict_Next(kwdict, &pos, &key, 0)) { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) - #endif - goto invalid_keyword_type; +/* dict_iter */ +static CYTHON_INLINE PyObject* __Pyx_dict_iterator(PyObject* iterable, int is_dict, PyObject* method_name, + Py_ssize_t* p_orig_length, int* p_source_is_dict) { + is_dict = is_dict || likely(PyDict_CheckExact(iterable)); + *p_source_is_dict = is_dict; + if (is_dict) { +#if !CYTHON_COMPILING_IN_PYPY + *p_orig_length = PyDict_Size(iterable); + Py_INCREF(iterable); + return iterable; +#elif PY_MAJOR_VERSION >= 3 + static PyObject *py_items = NULL, *py_keys = NULL, *py_values = NULL; + PyObject **pp = NULL; + if (method_name) { + const char *name = PyUnicode_AsUTF8(method_name); + if (strcmp(name, "iteritems") == 0) pp = &py_items; + else if (strcmp(name, "iterkeys") == 0) pp = &py_keys; + else if (strcmp(name, "itervalues") == 0) pp = &py_values; + if (pp) { + if (!*pp) { + *pp = PyUnicode_FromString(name + 4); + if (!*pp) + return NULL; + } + method_name = *pp; + } + } +#endif + } + *p_orig_length = 0; + if (method_name) { + PyObject* iter; + iterable = __Pyx_PyObject_CallMethod0(iterable, method_name); + if (!iterable) + return NULL; +#if !CYTHON_COMPILING_IN_PYPY + if (PyTuple_CheckExact(iterable) || PyList_CheckExact(iterable)) + return iterable; +#endif + iter = PyObject_GetIter(iterable); + Py_DECREF(iterable); + return iter; + } + return PyObject_GetIter(iterable); +} +static CYTHON_INLINE int __Pyx_dict_iter_next( + PyObject* iter_obj, CYTHON_NCP_UNUSED Py_ssize_t orig_length, CYTHON_NCP_UNUSED Py_ssize_t* ppos, + PyObject** pkey, PyObject** pvalue, PyObject** pitem, int source_is_dict) { + PyObject* next_item; +#if !CYTHON_COMPILING_IN_PYPY + if (source_is_dict) { + PyObject *key, *value; + if (unlikely(orig_length != PyDict_Size(iter_obj))) { + PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); + return -1; + } + if (unlikely(!PyDict_Next(iter_obj, ppos, &key, &value))) { + return 0; + } + if (pitem) { + PyObject* tuple = PyTuple_New(2); + if (unlikely(!tuple)) { + return -1; + } + Py_INCREF(key); + Py_INCREF(value); + PyTuple_SET_ITEM(tuple, 0, key); + PyTuple_SET_ITEM(tuple, 1, value); + *pitem = tuple; + } else { + if (pkey) { + Py_INCREF(key); + *pkey = key; + } + if (pvalue) { + Py_INCREF(value); + *pvalue = value; + } + } + return 1; + } else if (PyTuple_CheckExact(iter_obj)) { + Py_ssize_t pos = *ppos; + if (unlikely(pos >= PyTuple_GET_SIZE(iter_obj))) return 0; + *ppos = pos + 1; + next_item = PyTuple_GET_ITEM(iter_obj, pos); + Py_INCREF(next_item); + } else if (PyList_CheckExact(iter_obj)) { + Py_ssize_t pos = *ppos; + if (unlikely(pos >= PyList_GET_SIZE(iter_obj))) return 0; + *ppos = pos + 1; + next_item = PyList_GET_ITEM(iter_obj, pos); + Py_INCREF(next_item); + } else +#endif + { + next_item = PyIter_Next(iter_obj); + if (unlikely(!next_item)) { + return __Pyx_IterFinish(); + } + } + if (pitem) { + *pitem = next_item; + } else if (pkey && pvalue) { + if (__Pyx_unpack_tuple2(next_item, pkey, pvalue, source_is_dict, source_is_dict, 1)) + return -1; + } else if (pkey) { + *pkey = next_item; + } else { + *pvalue = next_item; } - if ((!kw_allowed) && unlikely(key)) - goto invalid_keyword; return 1; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - return 0; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); +} + +/* PyObjectCall2Args */ +static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { + PyObject *args, *result = NULL; + #if CYTHON_FAST_PYCALL + if (PyFunction_Check(function)) { + PyObject *args[2] = {arg1, arg2}; + return __Pyx_PyFunction_FastCall(function, args, 2); + } #endif - return 0; + #if CYTHON_FAST_PYCCALL + if (__Pyx_PyFastCFunction_Check(function)) { + PyObject *args[2] = {arg1, arg2}; + return __Pyx_PyCFunction_FastCall(function, args, 2); + } + #endif + args = PyTuple_New(2); + if (unlikely(!args)) goto done; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + Py_INCREF(function); + result = __Pyx_PyObject_Call(function, args, NULL); + Py_DECREF(args); + Py_DECREF(function); +done: + return result; } -static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) { +/* PyErrFetchRestore */ +#if CYTHON_FAST_THREAD_STATE +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; tmp_tb = tstate->curexc_traceback; @@ -36779,76 +51393,60 @@ static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyOb Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); } - -static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) { - PyThreadState *tstate = PyThreadState_GET(); +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; - tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; } +#endif - +/* RaiseException */ #if PY_MAJOR_VERSION < 3 -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) { +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, + CYTHON_UNUSED PyObject *cause) { + __Pyx_PyThreadState_declare Py_XINCREF(type); - Py_XINCREF(value); - Py_XINCREF(tb); - /* First, check the traceback argument, replacing None with NULL. */ - if (tb == Py_None) { - Py_DECREF(tb); - tb = 0; - } - else if (tb != NULL && !PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto raise_error; - } - /* Next, replace a missing value with None */ - if (value == NULL) { - value = Py_None; + if (!value || value == Py_None) + value = NULL; + else Py_INCREF(value); + if (!tb || tb == Py_None) + tb = NULL; + else { + Py_INCREF(tb); + if (!PyTraceBack_Check(tb)) { + PyErr_SetString(PyExc_TypeError, + "raise: arg 3 must be a traceback or None"); + goto raise_error; + } } - #if PY_VERSION_HEX < 0x02050000 - if (!PyClass_Check(type)) - #else - if (!PyType_Check(type)) - #endif - { - /* Raising an instance. The value should be a dummy. */ - if (value != Py_None) { + if (PyType_Check(type)) { +#if CYTHON_COMPILING_IN_PYPY + if (!value) { + Py_INCREF(Py_None); + value = Py_None; + } +#endif + PyErr_NormalizeException(&type, &value, &tb); + } else { + if (value) { PyErr_SetString(PyExc_TypeError, "instance exception may not have a separate value"); goto raise_error; } - /* Normalize to raise , */ - Py_DECREF(value); value = type; - #if PY_VERSION_HEX < 0x02050000 - if (PyInstance_Check(type)) { - type = (PyObject*) ((PyInstanceObject*)type)->in_class; - Py_INCREF(type); - } - else { - type = 0; - PyErr_SetString(PyExc_TypeError, - "raise: exception must be an old-style class or instance"); - goto raise_error; - } - #else - type = (PyObject*) Py_TYPE(type); - Py_INCREF(type); - if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto raise_error; - } - #endif + type = (PyObject*) Py_TYPE(type); + Py_INCREF(type); + if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { + PyErr_SetString(PyExc_TypeError, + "raise: exception class must be a subclass of BaseException"); + goto raise_error; + } } - + __Pyx_PyThreadState_assign __Pyx_ErrRestore(type, value, tb); return; raise_error: @@ -36857,10 +51455,9 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) { Py_XDECREF(tb); return; } - -#else /* Python 3+ */ - -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) { +#else +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { + PyObject* owned_instance = NULL; if (tb == Py_None) { tb = 0; } else if (tb && !PyTraceBack_Check(tb)) { @@ -36870,7 +51467,6 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) { } if (value == Py_None) value = 0; - if (PyExceptionInstance_Check(type)) { if (value) { PyErr_SetString(PyExc_TypeError, @@ -36879,75 +51475,323 @@ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) { } value = type; type = (PyObject*) Py_TYPE(value); - } else if (!PyExceptionClass_Check(type)) { + } else if (PyExceptionClass_Check(type)) { + PyObject *instance_class = NULL; + if (value && PyExceptionInstance_Check(value)) { + instance_class = (PyObject*) Py_TYPE(value); + if (instance_class != type) { + int is_subclass = PyObject_IsSubclass(instance_class, type); + if (!is_subclass) { + instance_class = NULL; + } else if (unlikely(is_subclass == -1)) { + goto bad; + } else { + type = instance_class; + } + } + } + if (!instance_class) { + PyObject *args; + if (!value) + args = PyTuple_New(0); + else if (PyTuple_Check(value)) { + Py_INCREF(value); + args = value; + } else + args = PyTuple_Pack(1, value); + if (!args) + goto bad; + owned_instance = PyObject_Call(type, args, NULL); + Py_DECREF(args); + if (!owned_instance) + goto bad; + value = owned_instance; + if (!PyExceptionInstance_Check(value)) { + PyErr_Format(PyExc_TypeError, + "calling %R should have returned an instance of " + "BaseException, not %R", + type, Py_TYPE(value)); + goto bad; + } + } + } else { PyErr_SetString(PyExc_TypeError, "raise: exception class must be a subclass of BaseException"); goto bad; } - + if (cause) { + PyObject *fixed_cause; + if (cause == Py_None) { + fixed_cause = NULL; + } else if (PyExceptionClass_Check(cause)) { + fixed_cause = PyObject_CallObject(cause, NULL); + if (fixed_cause == NULL) + goto bad; + } else if (PyExceptionInstance_Check(cause)) { + fixed_cause = cause; + Py_INCREF(fixed_cause); + } else { + PyErr_SetString(PyExc_TypeError, + "exception causes must derive from " + "BaseException"); + goto bad; + } + PyException_SetCause(value, fixed_cause); + } PyErr_SetObject(type, value); - if (tb) { - PyThreadState *tstate = PyThreadState_GET(); +#if CYTHON_COMPILING_IN_PYPY + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); + Py_INCREF(tb); + PyErr_Restore(tmp_type, tmp_value, tb); + Py_XDECREF(tmp_tb); +#else + PyThreadState *tstate = __Pyx_PyThreadState_Current; PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { Py_INCREF(tb); tstate->curexc_traceback = tb; Py_XDECREF(tmp_tb); } +#endif } - bad: + Py_XDECREF(owned_instance); return; } #endif -static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is unsubscriptable"); +/* DictGetItem */ +#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { + PyObject *value; + value = PyDict_GetItemWithError(d, key); + if (unlikely(!value)) { + if (!PyErr_Occurred()) { + if (unlikely(PyTuple_Check(key))) { + PyObject* args = PyTuple_Pack(1, key); + if (likely(args)) { + PyErr_SetObject(PyExc_KeyError, args); + Py_DECREF(args); + } + } else { + PyErr_SetObject(PyExc_KeyError, key); + } + } + return NULL; + } + Py_INCREF(value); + return value; +} +#endif + +/* UnpackUnboundCMethod */ +static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) { + PyObject *method; + method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name); + if (unlikely(!method)) + return -1; + target->method = method; +#if CYTHON_COMPILING_IN_CPYTHON + #if PY_MAJOR_VERSION >= 3 + if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type))) + #endif + { + PyMethodDescrObject *descr = (PyMethodDescrObject*) method; + target->func = descr->d_method->ml_meth; + target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_STACKLESS); + } +#endif + return 0; } -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - #if PY_VERSION_HEX < 0x02050000 - "need more than %d value%s to unpack", (int)index, - #else - "need more than %zd value%s to unpack", index, - #endif - (index == 1) ? "" : "s"); +/* CallUnboundCMethod1 */ +#if CYTHON_COMPILING_IN_CPYTHON +static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg) { + if (likely(cfunc->func)) { + int flag = cfunc->flag; + if (flag == METH_O) { + return (*(cfunc->func))(self, arg); + } else if (PY_VERSION_HEX >= 0x030600B1 && flag == METH_FASTCALL) { + if (PY_VERSION_HEX >= 0x030700A0) { + return (*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)cfunc->func)(self, &arg, 1); + } else { + return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, &arg, 1, NULL); + } + } else if (PY_VERSION_HEX >= 0x030700A0 && flag == (METH_FASTCALL | METH_KEYWORDS)) { + return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, &arg, 1, NULL); + } + } + return __Pyx__CallUnboundCMethod1(cfunc, self, arg); +} +#endif +static PyObject* __Pyx__CallUnboundCMethod1(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg){ + PyObject *args, *result = NULL; + if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; +#if CYTHON_COMPILING_IN_CPYTHON + if (cfunc->func && (cfunc->flag & METH_VARARGS)) { + args = PyTuple_New(1); + if (unlikely(!args)) goto bad; + Py_INCREF(arg); + PyTuple_SET_ITEM(args, 0, arg); + if (cfunc->flag & METH_KEYWORDS) + result = (*(PyCFunctionWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, NULL); + else + result = (*cfunc->func)(self, args); + } else { + args = PyTuple_New(2); + if (unlikely(!args)) goto bad; + Py_INCREF(self); + PyTuple_SET_ITEM(args, 0, self); + Py_INCREF(arg); + PyTuple_SET_ITEM(args, 1, arg); + result = __Pyx_PyObject_Call(cfunc->method, args, NULL); + } +#else + args = PyTuple_Pack(2, self, arg); + if (unlikely(!args)) goto bad; + result = __Pyx_PyObject_Call(cfunc->method, args, NULL); +#endif +bad: + Py_XDECREF(args); + return result; } -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - #if PY_VERSION_HEX < 0x02050000 - "too many values to unpack (expected %d)", (int)expected); - #else - "too many values to unpack (expected %zd)", expected); +/* CallUnboundCMethod2 */ +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030600B1 +static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) { + if (likely(cfunc->func)) { + PyObject *args[2] = {arg1, arg2}; + if (cfunc->flag == METH_FASTCALL) { + #if PY_VERSION_HEX >= 0x030700A0 + return (*(__Pyx_PyCFunctionFast)(void*)(PyCFunction)cfunc->func)(self, args, 2); + #else + return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, 2, NULL); + #endif + } + #if PY_VERSION_HEX >= 0x030700A0 + if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS)) + return (*(__Pyx_PyCFunctionFastWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, 2, NULL); #endif + } + return __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2); +} +#endif +static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){ + PyObject *args, *result = NULL; + if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0)) return NULL; +#if CYTHON_COMPILING_IN_CPYTHON + if (cfunc->func && (cfunc->flag & METH_VARARGS)) { + args = PyTuple_New(2); + if (unlikely(!args)) goto bad; + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 0, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 1, arg2); + if (cfunc->flag & METH_KEYWORDS) + result = (*(PyCFunctionWithKeywords)(void*)(PyCFunction)cfunc->func)(self, args, NULL); + else + result = (*cfunc->func)(self, args); + } else { + args = PyTuple_New(3); + if (unlikely(!args)) goto bad; + Py_INCREF(self); + PyTuple_SET_ITEM(args, 0, self); + Py_INCREF(arg1); + PyTuple_SET_ITEM(args, 1, arg1); + Py_INCREF(arg2); + PyTuple_SET_ITEM(args, 2, arg2); + result = __Pyx_PyObject_Call(cfunc->method, args, NULL); + } +#else + args = PyTuple_Pack(3, self, arg1, arg2); + if (unlikely(!args)) goto bad; + result = __Pyx_PyObject_Call(cfunc->method, args, NULL); +#endif +bad: + Py_XDECREF(args); + return result; +} + +/* dict_getitem_default */ +static PyObject* __Pyx_PyDict_GetItemDefault(PyObject* d, PyObject* key, PyObject* default_value) { + PyObject* value; +#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY + value = PyDict_GetItemWithError(d, key); + if (unlikely(!value)) { + if (unlikely(PyErr_Occurred())) + return NULL; + value = default_value; + } + Py_INCREF(value); + if ((1)); +#else + if (PyString_CheckExact(key) || PyUnicode_CheckExact(key) || PyInt_CheckExact(key)) { + value = PyDict_GetItem(d, key); + if (unlikely(!value)) { + value = default_value; + } + Py_INCREF(value); + } +#endif + else { + if (default_value == Py_None) + value = __Pyx_CallUnboundCMethod1(&__pyx_umethod_PyDict_Type_get, d, key); + else + value = __Pyx_CallUnboundCMethod2(&__pyx_umethod_PyDict_Type_get, d, key, default_value); + } + return value; } -static PyObject *__Pyx_UnpackItem(PyObject *iter, Py_ssize_t index) { - PyObject *item; - if (!(item = PyIter_Next(iter))) { - if (!PyErr_Occurred()) { - __Pyx_RaiseNeedMoreValuesError(index); +/* decode_c_string */ +static CYTHON_INLINE PyObject* __Pyx_decode_c_string( + const char* cstring, Py_ssize_t start, Py_ssize_t stop, + const char* encoding, const char* errors, + PyObject* (*decode_func)(const char *s, Py_ssize_t size, const char *errors)) { + Py_ssize_t length; + if (unlikely((start < 0) | (stop < 0))) { + size_t slen = strlen(cstring); + if (unlikely(slen > (size_t) PY_SSIZE_T_MAX)) { + PyErr_SetString(PyExc_OverflowError, + "c-string too long to convert to Python"); + return NULL; + } + length = (Py_ssize_t) slen; + if (start < 0) { + start += length; + if (start < 0) + start = 0; } + if (stop < 0) + stop += length; + } + if (unlikely(stop <= start)) + return __Pyx_NewRef(__pyx_empty_unicode); + length = stop - start; + cstring += start; + if (decode_func) { + return decode_func(cstring, length, errors); + } else { + return PyUnicode_Decode(cstring, length, encoding, errors); } - return item; } -static int __Pyx_EndUnpack(PyObject *iter, Py_ssize_t expected) { - PyObject *item; - if ((item = PyIter_Next(iter))) { - Py_DECREF(item); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } - else if (!PyErr_Occurred()) - return 0; - else - return -1; +/* PyObjectSetAttrStr */ +#if CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) { + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_setattro)) + return tp->tp_setattro(obj, attr_name, value); +#if PY_MAJOR_VERSION < 3 + if (likely(tp->tp_setattr)) + return tp->tp_setattr(obj, PyString_AS_STRING(attr_name), value); +#endif + return PyObject_SetAttr(obj, attr_name, value); } +#endif +/* RaiseDoubleKeywords */ static void __Pyx_RaiseDoubleKeywordsError( const char* func_name, PyObject* kw_name) @@ -36957,10 +51801,11 @@ static void __Pyx_RaiseDoubleKeywordsError( "%s() got multiple values for keyword argument '%U'", func_name, kw_name); #else "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); + PyString_AsString(kw_name)); #endif } +/* ParseKeywords */ static int __Pyx_ParseOptionalKeywords( PyObject *kwds, PyObject **argnames[], @@ -36973,64 +51818,86 @@ static int __Pyx_ParseOptionalKeywords( Py_ssize_t pos = 0; PyObject*** name; PyObject*** first_kw_arg = argnames + num_pos_args; - while (PyDict_Next(kwds, &pos, &key, &value)) { name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { + continue; + } + name = first_kw_arg; + #if PY_MAJOR_VERSION < 3 + if (likely(PyString_Check(key))) { + while (*name) { + if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) + && _PyString_Eq(**name, key)) { values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; + break; + } + name++; + } + if (*name) continue; + else { + PyObject*** argname = argnames; + while (argname != first_kw_arg) { + if ((**argname == key) || ( + (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) + && _PyString_Eq(**argname, key))) { + goto arg_passed_twice; } + argname++; + } + } + } else + #endif + if (likely(PyUnicode_Check(key))) { + while (*name) { + int cmp = (**name == key) ? 0 : + #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 + (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : + #endif + PyUnicode_Compare(**name, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) { + values[name-argnames] = value; + break; + } + name++; + } + if (*name) continue; + else { + PyObject*** argname = argnames; + while (argname != first_kw_arg) { + int cmp = (**argname == key) ? 0 : + #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 + (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : + #endif + PyUnicode_Compare(**argname, key); + if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; + if (cmp == 0) goto arg_passed_twice; + argname++; } } + } else + goto invalid_keyword_type; + if (kwds2) { + if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; + } else { + goto invalid_keyword; } } return 0; arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); + __Pyx_RaiseDoubleKeywordsError(function_name, key); goto bad; invalid_keyword_type: PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); + "%.200s() keywords must be strings", function_name); goto bad; invalid_keyword: PyErr_Format(PyExc_TypeError, #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", + "%.200s() got an unexpected keyword argument '%.200s'", function_name, PyString_AsString(key)); #else "%s() got an unexpected keyword argument '%U'", @@ -37040,531 +51907,1135 @@ static int __Pyx_ParseOptionalKeywords( return -1; } -static int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, - const char *name, int exact) +/* PyDictVersioning */ +#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS +static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) { + PyObject *dict = Py_TYPE(obj)->tp_dict; + return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; +} +static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) { + PyObject **dictptr = NULL; + Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; + if (offset) { +#if CYTHON_COMPILING_IN_CPYTHON + dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); +#else + dictptr = _PyObject_GetDictPtr(obj); +#endif + } + return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; +} +static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) { + PyObject *dict = Py_TYPE(obj)->tp_dict; + if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) + return 0; + return obj_dict_version == __Pyx_get_object_dict_version(obj); +} +#endif + +/* GetModuleGlobalName */ +#if CYTHON_USE_DICT_VERSIONS +static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value) +#else +static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) +#endif +{ + PyObject *result; +#if !CYTHON_AVOID_BORROWED_REFS +#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 + result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); + __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return __Pyx_NewRef(result); + } else if (unlikely(PyErr_Occurred())) { + return NULL; + } +#else + result = PyDict_GetItem(__pyx_d, name); + __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return __Pyx_NewRef(result); + } +#endif +#else + result = PyObject_GetItem(__pyx_d, name); + __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) + if (likely(result)) { + return __Pyx_NewRef(result); + } + PyErr_Clear(); +#endif + return __Pyx_GetBuiltinName(name); +} + +/* ArgTypeTest */ +static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) { - if (!type) { - PyErr_Format(PyExc_SystemError, "Missing type object"); + if (unlikely(!type)) { + PyErr_SetString(PyExc_SystemError, "Missing type object"); return 0; } - if (none_allowed && obj == Py_None) return 1; else if (exact) { - if (Py_TYPE(obj) == type) return 1; + #if PY_MAJOR_VERSION == 2 + if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; + #endif } else { - if (PyObject_TypeCheck(obj, type)) return 1; + if (likely(__Pyx_TypeCheck(obj, type))) return 1; } PyErr_Format(PyExc_TypeError, - "Argument '%s' has incorrect type (expected %s, got %s)", + "Argument '%.200s' has incorrect type (expected %.200s, got %.200s)", name, type->tp_name, Py_TYPE(obj)->tp_name); return 0; } -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; +/* WriteUnraisableException */ +static void __Pyx_WriteUnraisable(const char *name, CYTHON_UNUSED int clineno, + CYTHON_UNUSED int lineno, CYTHON_UNUSED const char *filename, + int full_traceback, CYTHON_UNUSED int nogil) { + PyObject *old_exc, *old_val, *old_tb; + PyObject *ctx; + __Pyx_PyThreadState_declare +#ifdef WITH_THREAD + PyGILState_STATE state; + if (nogil) + state = PyGILState_Ensure(); +#ifdef _MSC_VER + else state = (PyGILState_STATE)-1; +#endif +#endif + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&old_exc, &old_val, &old_tb); + if (full_traceback) { + Py_XINCREF(old_exc); + Py_XINCREF(old_val); + Py_XINCREF(old_tb); + __Pyx_ErrRestore(old_exc, old_val, old_tb); + PyErr_PrintEx(1); } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; + #if PY_MAJOR_VERSION < 3 + ctx = PyString_FromString(name); + #else + ctx = PyUnicode_FromString(name); + #endif + __Pyx_ErrRestore(old_exc, old_val, old_tb); + if (!ctx) { + PyErr_WriteUnraisable(Py_None); + } else { + PyErr_WriteUnraisable(ctx); + Py_DECREF(ctx); } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); +#ifdef WITH_THREAD + if (nogil) + PyGILState_Release(state); +#endif } -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); +/* PyObject_GenericGetAttrNoDict */ +#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 +static PyObject *__Pyx_RaiseGenericGetAttributeError(PyTypeObject *tp, PyObject *attr_name) { + PyErr_Format(PyExc_AttributeError, +#if PY_MAJOR_VERSION >= 3 + "'%.50s' object has no attribute '%U'", + tp->tp_name, attr_name); +#else + "'%.50s' object has no attribute '%.400s'", + tp->tp_name, PyString_AS_STRING(attr_name)); +#endif + return NULL; } - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; +static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name) { + PyObject *descr; + PyTypeObject *tp = Py_TYPE(obj); + if (unlikely(!PyString_Check(attr_name))) { + return PyObject_GenericGetAttr(obj, attr_name); + } + assert(!tp->tp_dictoffset); + descr = _PyType_Lookup(tp, attr_name); + if (unlikely(!descr)) { + return __Pyx_RaiseGenericGetAttributeError(tp, attr_name); + } + Py_INCREF(descr); + #if PY_MAJOR_VERSION < 3 + if (likely(PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_HAVE_CLASS))) + #endif + { + descrgetfunc f = Py_TYPE(descr)->tp_descr_get; + if (unlikely(f)) { + PyObject *res = f(descr, obj, (PyObject *)tp); + Py_DECREF(descr); + return res; } - return (char)val; } - return (char)__Pyx_PyInt_AsLong(x); + return descr; } +#endif -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; +/* PyObject_GenericGetAttr */ +#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 +static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name) { + if (unlikely(Py_TYPE(obj)->tp_dictoffset)) { + return PyObject_GenericGetAttr(obj, attr_name); } - return (short)__Pyx_PyInt_AsLong(x); + return __Pyx_PyObject_GenericGetAttrNoDict(obj, attr_name); } +#endif -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; +/* PyErrExceptionMatches */ +#if CYTHON_FAST_THREAD_STATE +static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(tuple); +#if PY_MAJOR_VERSION >= 3 + for (i=0; icurexc_type; + if (exc_type == err) return 1; + if (unlikely(!exc_type)) return 0; + if (unlikely(PyTuple_Check(err))) + return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); + return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); } +#endif -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; +/* PyObjectGetAttrStrNoError */ +static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) + __Pyx_PyErr_Clear(); +} +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { + PyObject *result; +#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 + PyTypeObject* tp = Py_TYPE(obj); + if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { + return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); } - return (signed char)__Pyx_PyInt_AsSignedLong(x); +#endif + result = __Pyx_PyObject_GetAttrStr(obj, attr_name); + if (unlikely(!result)) { + __Pyx_PyObject_GetAttrStr_ClearAttributeError(); + } + return result; } -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); +/* SetupReduce */ +static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { + int ret; + PyObject *name_attr; + name_attr = __Pyx_PyObject_GetAttrStr(meth, __pyx_n_s_name); + if (likely(name_attr)) { + ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); + } else { + ret = -1; + } + if (unlikely(ret < 0)) { + PyErr_Clear(); + ret = 0; + } + Py_XDECREF(name_attr); + return ret; +} +static int __Pyx_setup_reduce(PyObject* type_obj) { + int ret = 0; + PyObject *object_reduce = NULL; + PyObject *object_reduce_ex = NULL; + PyObject *reduce = NULL; + PyObject *reduce_ex = NULL; + PyObject *reduce_cython = NULL; + PyObject *setstate = NULL; + PyObject *setstate_cython = NULL; +#if CYTHON_USE_PYTYPE_LOOKUP + if (_PyType_Lookup((PyTypeObject*)type_obj, __pyx_n_s_getstate)) goto __PYX_GOOD; +#else + if (PyObject_HasAttr(type_obj, __pyx_n_s_getstate)) goto __PYX_GOOD; +#endif +#if CYTHON_USE_PYTYPE_LOOKUP + object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; +#else + object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; +#endif + reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; + if (reduce_ex == object_reduce_ex) { +#if CYTHON_USE_PYTYPE_LOOKUP + object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; +#else + object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; +#endif + reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce); if (unlikely(!reduce)) goto __PYX_BAD; + if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_n_s_reduce_cython)) { + reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_reduce_cython); + if (likely(reduce_cython)) { + ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + } else if (reduce == object_reduce || PyErr_Occurred()) { + goto __PYX_BAD; + } + setstate = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_setstate); + if (!setstate) PyErr_Clear(); + if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { + setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); + if (likely(setstate_cython)) { + ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; + } else if (!setstate || PyErr_Occurred()) { + goto __PYX_BAD; + } } - return (signed short)-1; + PyType_Modified((PyTypeObject*)type_obj); } - return (signed short)val; } - return (signed short)__Pyx_PyInt_AsSignedLong(x); + goto __PYX_GOOD; +__PYX_BAD: + if (!PyErr_Occurred()) + PyErr_Format(PyExc_RuntimeError, "Unable to initialize pickling for %s", ((PyTypeObject*)type_obj)->tp_name); + ret = -1; +__PYX_GOOD: +#if !CYTHON_USE_PYTYPE_LOOKUP + Py_XDECREF(object_reduce); + Py_XDECREF(object_reduce_ex); +#endif + Py_XDECREF(reduce); + Py_XDECREF(reduce_ex); + Py_XDECREF(reduce_cython); + Py_XDECREF(setstate); + Py_XDECREF(setstate_cython); + return ret; } -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); +/* SetVTable */ +static int __Pyx_SetVtable(PyObject *dict, void *vtable) { +#if PY_VERSION_HEX >= 0x02070000 + PyObject *ob = PyCapsule_New(vtable, 0, 0); +#else + PyObject *ob = PyCObject_FromVoidPtr(vtable, 0); +#endif + if (!ob) + goto bad; + if (PyDict_SetItem(dict, __pyx_n_s_pyx_vtable, ob) < 0) + goto bad; + Py_DECREF(ob); + return 0; +bad: + Py_XDECREF(ob); + return -1; } -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; +/* GetNameInClass */ +static PyObject *__Pyx_GetGlobalNameAfterAttributeLookup(PyObject *name) { + PyObject *result; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + if (unlikely(!__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) + return NULL; + __Pyx_PyErr_Clear(); + __Pyx_GetModuleGlobalNameUncached(result, name); + return result; +} +static PyObject *__Pyx__GetNameInClass(PyObject *nmspace, PyObject *name) { + PyObject *result; + result = __Pyx_PyObject_GetAttrStr(nmspace, name); + if (!result) { + result = __Pyx_GetGlobalNameAfterAttributeLookup(name); } - return (int)__Pyx_PyInt_AsLong(x); + return result; } -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; +/* CLineInTraceback */ +#ifndef CYTHON_CLINE_IN_TRACEBACK +static int __Pyx_CLineForTraceback(CYTHON_NCP_UNUSED PyThreadState *tstate, int c_line) { + PyObject *use_cline; + PyObject *ptype, *pvalue, *ptraceback; +#if CYTHON_COMPILING_IN_CPYTHON + PyObject **cython_runtime_dict; +#endif + if (unlikely(!__pyx_cython_runtime)) { + return c_line; + } + __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); +#if CYTHON_COMPILING_IN_CPYTHON + cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); + if (likely(cython_runtime_dict)) { + __PYX_PY_DICT_LOOKUP_IF_MODIFIED( + use_cline, *cython_runtime_dict, + __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) } else #endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return PyLong_AsUnsignedLong(x); - } else { - return PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; + { + PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); + if (use_cline_obj) { + use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; + Py_DECREF(use_cline_obj); + } else { + PyErr_Clear(); + use_cline = NULL; + } } + if (!use_cline) { + c_line = 0; + PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); + } + else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { + c_line = 0; + } + __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); + return c_line; } - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else #endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return PyLong_AsUnsignedLongLong(x); + +/* CodeObjectCache */ +static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { + int start = 0, mid = 0, end = count - 1; + if (end >= 0 && code_line > entries[end].code_line) { + return count; + } + while (start < end) { + mid = start + (end - start) / 2; + if (code_line < entries[mid].code_line) { + end = mid; + } else if (code_line > entries[mid].code_line) { + start = mid + 1; } else { - return PyLong_AsLongLong(x); + return mid; } + } + if (code_line <= entries[mid].code_line) { + return mid; } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); + return mid + 1; + } +} +static PyCodeObject *__pyx_find_code_object(int code_line) { + PyCodeObject* code_object; + int pos; + if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { + return NULL; + } + pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); + if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { + return NULL; + } + code_object = __pyx_code_cache.entries[pos].code_object; + Py_INCREF(code_object); + return code_object; +} +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { + int pos, i; + __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; + if (unlikely(!code_line)) { + return; + } + if (unlikely(!entries)) { + entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); + if (likely(entries)) { + __pyx_code_cache.entries = entries; + __pyx_code_cache.max_count = 64; + __pyx_code_cache.count = 1; + entries[0].code_line = code_line; + entries[0].code_object = code_object; + Py_INCREF(code_object); + } + return; + } + pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); + if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { + PyCodeObject* tmp = entries[pos].code_object; + entries[pos].code_object = code_object; Py_DECREF(tmp); - return val; + return; + } + if (__pyx_code_cache.count == __pyx_code_cache.max_count) { + int new_max = __pyx_code_cache.max_count + 64; + entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( + __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); + if (unlikely(!entries)) { + return; + } + __pyx_code_cache.entries = entries; + __pyx_code_cache.max_count = new_max; + } + for (i=__pyx_code_cache.count; i>pos; i--) { + entries[i] = entries[i-1]; + } + entries[pos].code_line = code_line; + entries[pos].code_object = code_object; + __pyx_code_cache.count++; + Py_INCREF(code_object); +} + +/* AddTraceback */ +#include "compile.h" +#include "frameobject.h" +#include "traceback.h" +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( + const char *funcname, int c_line, + int py_line, const char *filename) { + PyCodeObject *py_code = 0; + PyObject *py_srcfile = 0; + PyObject *py_funcname = 0; + #if PY_MAJOR_VERSION < 3 + py_srcfile = PyString_FromString(filename); + #else + py_srcfile = PyUnicode_FromString(filename); + #endif + if (!py_srcfile) goto bad; + if (c_line) { + #if PY_MAJOR_VERSION < 3 + py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); + #else + py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); + #endif + } + else { + #if PY_MAJOR_VERSION < 3 + py_funcname = PyString_FromString(funcname); + #else + py_funcname = PyUnicode_FromString(funcname); + #endif + } + if (!py_funcname) goto bad; + py_code = __Pyx_PyCode_New( + 0, + 0, + 0, + 0, + 0, + __pyx_empty_bytes, /*PyObject *code,*/ + __pyx_empty_tuple, /*PyObject *consts,*/ + __pyx_empty_tuple, /*PyObject *names,*/ + __pyx_empty_tuple, /*PyObject *varnames,*/ + __pyx_empty_tuple, /*PyObject *freevars,*/ + __pyx_empty_tuple, /*PyObject *cellvars,*/ + py_srcfile, /*PyObject *filename,*/ + py_funcname, /*PyObject *name,*/ + py_line, + __pyx_empty_bytes /*PyObject *lnotab*/ + ); + Py_DECREF(py_srcfile); + Py_DECREF(py_funcname); + return py_code; +bad: + Py_XDECREF(py_srcfile); + Py_XDECREF(py_funcname); + return NULL; +} +static void __Pyx_AddTraceback(const char *funcname, int c_line, + int py_line, const char *filename) { + PyCodeObject *py_code = 0; + PyFrameObject *py_frame = 0; + PyThreadState *tstate = __Pyx_PyThreadState_Current; + if (c_line) { + c_line = __Pyx_CLineForTraceback(tstate, c_line); } + py_code = __pyx_find_code_object(c_line ? -c_line : py_line); + if (!py_code) { + py_code = __Pyx_CreateCodeObjectForTraceback( + funcname, c_line, py_line, filename); + if (!py_code) goto bad; + __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); + } + py_frame = PyFrame_New( + tstate, /*PyThreadState *tstate,*/ + py_code, /*PyCodeObject *code,*/ + __pyx_d, /*PyObject *globals,*/ + 0 /*PyObject *locals*/ + ); + if (!py_frame) goto bad; + __Pyx_PyFrame_SetLineNumber(py_frame, py_line); + PyTraceBack_Here(py_frame); +bad: + Py_XDECREF(py_code); + Py_XDECREF(py_frame); } -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; +/* CIntFromPyVerify */ +#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) +#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ + __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) +#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ + {\ + func_type value = func_value;\ + if (sizeof(target_type) < sizeof(func_type)) {\ + if (unlikely(value != (func_type) (target_type) value)) {\ + func_type zero = 0;\ + if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ + return (target_type) -1;\ + if (is_unsigned && unlikely(value < zero))\ + goto raise_neg_overflow;\ + else\ + goto raise_overflow;\ + }\ + }\ + return (target_type) value;\ + } + +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { + const int neg_one = (int) ((int) 0 - (int) 1), const_zero = (int) 0; const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else + if (is_unsigned) { + if (sizeof(int) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(int) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return PyLong_AsUnsignedLong(x); - } else { - return PyLong_AsLong(x); } } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; + if (sizeof(int) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(int), + little, !is_unsigned); } } -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; +/* CIntFromPy */ +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { + const int neg_one = (int) ((int) 0 - (int) 1), const_zero = (int) 0; const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 +#if PY_MAJOR_VERSION < 3 if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; + if (sizeof(int) < sizeof(long)) { + __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) + } else { + long val = PyInt_AS_LONG(x); + if (is_unsigned && unlikely(val < 0)) { + goto raise_neg_overflow; + } + return (int) val; } - return (PY_LONG_LONG)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (int) 0; + case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) + case 2: + if (8 * sizeof(int) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) { + return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + case 3: + if (8 * sizeof(int) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) { + return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + case 4: + if (8 * sizeof(int) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) { + return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); + } + } + break; + } +#endif +#if CYTHON_COMPILING_IN_CPYTHON if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; + goto raise_neg_overflow; + } +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (int) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } +#endif + if (sizeof(int) <= sizeof(unsigned long)) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) +#endif } - return PyLong_AsUnsignedLongLong(x); } else { - return PyLong_AsLongLong(x); +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (int) 0; + case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) + case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) + case -2: + if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 2: + if (8 * sizeof(int) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case -3: + if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 3: + if (8 * sizeof(int) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case -4: + if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { + return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + case 4: + if (8 * sizeof(int) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { + return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); + } + } + break; + } +#endif + if (sizeof(int) <= sizeof(long)) { + __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) +#endif + } + } + { +#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) + PyErr_SetString(PyExc_RuntimeError, + "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); +#else + int val; + PyObject *v = __Pyx_PyNumber_IntOrLong(x); + #if PY_MAJOR_VERSION < 3 + if (likely(v) && !PyLong_Check(v)) { + PyObject *tmp = v; + v = PyNumber_Long(tmp); + Py_DECREF(tmp); + } + #endif + if (likely(v)) { + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + int ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); + Py_DECREF(v); + if (likely(!ret)) + return val; + } +#endif + return (int) -1; } } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); + int val; + PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); + if (!tmp) return (int) -1; + val = __Pyx_PyInt_As_int(tmp); Py_DECREF(tmp); return val; } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to int"); + return (int) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to int"); + return (int) -1; +} + +/* CIntFromPy */ +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { + const long neg_one = (long) ((long) 0 - (long) 1), const_zero = (long) 0; const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 +#if PY_MAJOR_VERSION < 3 if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; + if (sizeof(long) < sizeof(long)) { + __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) + } else { + long val = PyInt_AS_LONG(x); + if (is_unsigned && unlikely(val < 0)) { + goto raise_neg_overflow; + } + return (long) val; } - return (signed long)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (long) 0; + case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) + case 2: + if (8 * sizeof(long) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) { + return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + case 3: + if (8 * sizeof(long) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) { + return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + case 4: + if (8 * sizeof(long) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) { + return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); + } + } + break; + } +#endif +#if CYTHON_COMPILING_IN_CPYTHON if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; + goto raise_neg_overflow; + } +#else + { + int result = PyObject_RichCompareBool(x, Py_False, Py_LT); + if (unlikely(result < 0)) + return (long) -1; + if (unlikely(result == 1)) + goto raise_neg_overflow; + } +#endif + if (sizeof(long) <= sizeof(unsigned long)) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) +#endif } - return PyLong_AsUnsignedLong(x); } else { - return PyLong_AsLong(x); +#if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)x)->ob_digit; + switch (Py_SIZE(x)) { + case 0: return (long) 0; + case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) + case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) + case -2: + if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 2: + if (8 * sizeof(long) > 1 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case -3: + if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 3: + if (8 * sizeof(long) > 2 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case -4: + if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) + } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + case 4: + if (8 * sizeof(long) > 3 * PyLong_SHIFT) { + if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { + __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]))) + } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { + return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); + } + } + break; + } +#endif + if (sizeof(long) <= sizeof(long)) { + __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) +#endif + } + } + { +#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) + PyErr_SetString(PyExc_RuntimeError, + "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); +#else + long val; + PyObject *v = __Pyx_PyNumber_IntOrLong(x); + #if PY_MAJOR_VERSION < 3 + if (likely(v) && !PyLong_Check(v)) { + PyObject *tmp = v; + v = PyNumber_Long(tmp); + Py_DECREF(tmp); + } + #endif + if (likely(v)) { + int one = 1; int is_little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&val; + int ret = _PyLong_AsByteArray((PyLongObject *)v, + bytes, sizeof(val), + is_little, !is_unsigned); + Py_DECREF(v); + if (likely(!ret)) + return val; + } +#endif + return (long) -1; } } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); + long val; + PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); + if (!tmp) return (long) -1; + val = __Pyx_PyInt_As_long(tmp); Py_DECREF(tmp); return val; } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; +raise_overflow: + PyErr_SetString(PyExc_OverflowError, + "value too large to convert to long"); + return (long) -1; +raise_neg_overflow: + PyErr_SetString(PyExc_OverflowError, + "can't convert negative value to long"); + return (long) -1; +} + +/* CIntToPy */ +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { + const long neg_one = (long) ((long) 0 - (long) 1), const_zero = (long) 0; const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else + if (is_unsigned) { + if (sizeof(long) < sizeof(long)) { + return PyInt_FromLong((long) value); + } else if (sizeof(long) <= sizeof(unsigned long)) { + return PyLong_FromUnsignedLong((unsigned long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { + return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); #endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return PyLong_AsUnsignedLongLong(x); - } else { - return PyLong_AsLongLong(x); } } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; + if (sizeof(long) <= sizeof(long)) { + return PyInt_FromLong((long) value); +#ifdef HAVE_LONG_LONG + } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { + return PyLong_FromLongLong((PY_LONG_LONG) value); +#endif + } + } + { + int one = 1; int little = (int)*(unsigned char *)&one; + unsigned char *bytes = (unsigned char *)&value; + return _PyLong_FromByteArray(bytes, sizeof(long), + little, !is_unsigned); } } -static void __Pyx_WriteUnraisable(const char *name) { - PyObject *old_exc, *old_val, *old_tb; - PyObject *ctx; - __Pyx_ErrFetch(&old_exc, &old_val, &old_tb); - #if PY_MAJOR_VERSION < 3 - ctx = PyString_FromString(name); - #else - ctx = PyUnicode_FromString(name); - #endif - __Pyx_ErrRestore(old_exc, old_val, old_tb); - if (!ctx) { - PyErr_WriteUnraisable(Py_None); - } else { - PyErr_WriteUnraisable(ctx); - Py_DECREF(ctx); +/* FastTypeChecks */ +#if CYTHON_COMPILING_IN_CPYTHON +static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) { + while (a) { + a = a->tp_base; + if (a == b) + return 1; + } + return b == &PyBaseObject_Type; +} +static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) { + PyObject *mro; + if (a == b) return 1; + mro = a->tp_mro; + if (likely(mro)) { + Py_ssize_t i, n; + n = PyTuple_GET_SIZE(mro); + for (i = 0; i < n; i++) { + if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) + return 1; + } + return 0; + } + return __Pyx_InBases(a, b); +} +#if PY_MAJOR_VERSION == 2 +static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { + PyObject *exception, *value, *tb; + int res; + __Pyx_PyThreadState_declare + __Pyx_PyThreadState_assign + __Pyx_ErrFetch(&exception, &value, &tb); + res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; + if (unlikely(res == -1)) { + PyErr_WriteUnraisable(err); + res = 0; + } + if (!res) { + res = PyObject_IsSubclass(err, exc_type2); + if (unlikely(res == -1)) { + PyErr_WriteUnraisable(err); + res = 0; + } } + __Pyx_ErrRestore(exception, value, tb); + return res; } - -static int __Pyx_SetVtable(PyObject *dict, void *vtable) { -#if PY_VERSION_HEX >= 0x02070000 && !(PY_MAJOR_VERSION==3&&PY_MINOR_VERSION==0) - PyObject *ob = PyCapsule_New(vtable, 0, 0); #else - PyObject *ob = PyCObject_FromVoidPtr(vtable, 0); -#endif - if (!ob) - goto bad; - if (PyDict_SetItemString(dict, "__pyx_vtable__", ob) < 0) - goto bad; - Py_DECREF(ob); - return 0; -bad: - Py_XDECREF(ob); - return -1; +static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { + int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0; + if (!res) { + res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); + } + return res; } - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif +#endif +static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { + Py_ssize_t i, n; + assert(PyExceptionClass_Check(exc_type)); + n = PyTuple_GET_SIZE(tuple); +#if PY_MAJOR_VERSION >= 3 + for (i=0; i= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); + return 0; +} +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) { + if (likely(err == exc_type)) return 1; + if (likely(PyExceptionClass_Check(err))) { + if (likely(PyExceptionClass_Check(exc_type))) { + return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type); + } else if (likely(PyTuple_Check(exc_type))) { + return __Pyx_PyErr_GivenExceptionMatchesTuple(err, exc_type); + } else { + } + } + return PyErr_GivenExceptionMatches(err, exc_type); +} +static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) { + assert(PyExceptionClass_Check(exc_type1)); + assert(PyExceptionClass_Check(exc_type2)); + if (likely(err == exc_type1 || err == exc_type2)) return 1; + if (likely(PyExceptionClass_Check(err))) { + return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2); + } + return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2)); +} +#endif + +/* CheckBinaryVersion */ +static int __Pyx_check_binary_version(void) { + char ctversion[4], rtversion[4]; + PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); + PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); + if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { + char message[200]; + PyOS_snprintf(message, sizeof(message), + "compiletime version %s of module '%.100s' " + "does not match runtime version %s", + ctversion, __Pyx_MODULE_NAME, rtversion); + return PyErr_WarnEx(NULL, message, 1); + } + return 0; } +/* InitStrings */ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { while (t->p) { #if PY_MAJOR_VERSION < 3 @@ -37575,7 +53046,7 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { } else { *t->p = PyString_FromStringAndSize(t->s, t->n - 1); } - #else /* Python 3+ has unicode identifiers */ + #else if (t->is_unicode | t->is_str) { if (t->intern) { *t->p = PyUnicode_InternFromString(t->s); @@ -37590,56 +53061,158 @@ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { #endif if (!*t->p) return -1; + if (PyObject_Hash(*t->p) == -1) + return -1; ++t; } return 0; } -/* Type Conversion Functions */ - +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { + return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); +} +static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { + Py_ssize_t ignore; + return __Pyx_PyObject_AsStringAndSize(o, &ignore); +} +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT +#if !CYTHON_PEP393_ENABLED +static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + char* defenc_c; + PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); + if (!defenc) return NULL; + defenc_c = PyBytes_AS_STRING(defenc); +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + { + char* end = defenc_c + PyBytes_GET_SIZE(defenc); + char* c; + for (c = defenc_c; c < end; c++) { + if ((unsigned char) (*c) >= 128) { + PyUnicode_AsASCIIString(o); + return NULL; + } + } + } +#endif + *length = PyBytes_GET_SIZE(defenc); + return defenc_c; +} +#else +static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { + if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + if (likely(PyUnicode_IS_ASCII(o))) { + *length = PyUnicode_GET_LENGTH(o); + return PyUnicode_AsUTF8(o); + } else { + PyUnicode_AsASCIIString(o); + return NULL; + } +#else + return PyUnicode_AsUTF8AndSize(o, length); +#endif +} +#endif +#endif +static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { +#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT + if ( +#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII + __Pyx_sys_getdefaultencoding_not_ascii && +#endif + PyUnicode_Check(o)) { + return __Pyx_PyUnicode_AsStringAndSize(o, length); + } else +#endif +#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) + if (PyByteArray_Check(o)) { + *length = PyByteArray_GET_SIZE(o); + return PyByteArray_AS_STRING(o); + } else +#endif + { + char* result; + int r = PyBytes_AsStringAndSize(o, &result, length); + if (unlikely(r < 0)) { + return NULL; + } else { + return result; + } + } +} static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { int is_true = x == Py_True; if (is_true | (x == Py_False) | (x == Py_None)) return is_true; else return PyObject_IsTrue(x); } - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { +static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { + int retval; + if (unlikely(!x)) return -1; + retval = __Pyx_PyObject_IsTrue(x); + Py_DECREF(x); + return retval; +} +static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { +#if PY_MAJOR_VERSION >= 3 + if (PyLong_Check(result)) { + if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, + "__int__ returned non-int (type %.200s). " + "The ability to return an instance of a strict subclass of int " + "is deprecated, and may be removed in a future version of Python.", + Py_TYPE(result)->tp_name)) { + Py_DECREF(result); + return NULL; + } + return result; + } +#endif + PyErr_Format(PyExc_TypeError, + "__%.4s__ returned non-%.4s (type %.200s)", + type_name, type_name, Py_TYPE(result)->tp_name); + Py_DECREF(result); + return NULL; +} +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { +#if CYTHON_USE_TYPE_SLOTS PyNumberMethods *m; +#endif const char *name = NULL; PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) +#if PY_MAJOR_VERSION < 3 + if (likely(PyInt_Check(x) || PyLong_Check(x))) #else - if (PyLong_Check(x)) + if (likely(PyLong_Check(x))) #endif - return Py_INCREF(x), x; + return __Pyx_NewRef(x); +#if CYTHON_USE_TYPE_SLOTS m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 + #if PY_MAJOR_VERSION < 3 if (m && m->nb_int) { name = "int"; - res = PyNumber_Int(x); + res = m->nb_int(x); } else if (m && m->nb_long) { name = "long"; - res = PyNumber_Long(x); + res = m->nb_long(x); } -#else - if (m && m->nb_int) { + #else + if (likely(m && m->nb_int)) { name = "int"; - res = PyNumber_Long(x); + res = m->nb_int(x); + } + #endif +#else + if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { + res = PyNumber_Int(x); } #endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { + if (likely(res)) { +#if PY_MAJOR_VERSION < 3 + if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { #else - if (!PyLong_Check(res)) { + if (unlikely(!PyLong_CheckExact(res))) { #endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; + return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); } } else if (!PyErr_Occurred()) { @@ -37648,40 +53221,73 @@ static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { } return res; } - static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); + PyObject *x; +#if PY_MAJOR_VERSION < 3 + if (likely(PyInt_CheckExact(b))) { + if (sizeof(Py_ssize_t) >= sizeof(long)) + return PyInt_AS_LONG(b); + else + return PyInt_AsSsize_t(b); + } +#endif + if (likely(PyLong_CheckExact(b))) { + #if CYTHON_USE_PYLONG_INTERNALS + const digit* digits = ((PyLongObject*)b)->ob_digit; + const Py_ssize_t size = Py_SIZE(b); + if (likely(__Pyx_sst_abs(size) <= 1)) { + ival = likely(size) ? digits[0] : 0; + if (size == -1) ival = -ival; + return ival; + } else { + switch (size) { + case 2: + if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { + return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -2: + if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case 3: + if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { + return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case -3: + if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { + return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); + } + break; + case 4: + if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { + return (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])); + } + break; + case -4: + if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { + return -(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])); + } + break; + } + } + #endif + return PyLong_AsSsize_t(b); + } + x = PyNumber_Index(b); if (!x) return -1; ival = PyInt_AsSsize_t(x); Py_DECREF(x); return ival; } - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif +static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { + return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); } - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { + return PyInt_FromSize_t(ival); }