/* Generated by Cython 0.29.36 */ #ifndef __PYX_HAVE__petsc4py__PETSc #define __PYX_HAVE__petsc4py__PETSc #include "Python.h" struct PyPetscCommObject; struct PyPetscObjectObject; struct PyPetscViewerObject; struct PyPetscRandomObject; struct PyPetscDeviceObject; struct PyPetscDeviceContextObject; struct PyPetscISObject; struct PyPetscLGMapObject; struct PyPetscSFObject; struct PyPetscVecObject; struct PyPetscSpaceObject; struct PyPetscDualSpaceObject; struct PyPetscFEObject; struct PyPetscQuadObject; struct PyPetscScatterObject; struct PyPetscSectionObject; struct PyPetscMatObject; struct PyPetscMatPartitioningObject; struct PyPetscNullSpaceObject; struct PyPetscPCObject; struct PyPetscKSPObject; struct PyPetscSNESObject; struct PyPetscTSObject; struct PyPetscTAOObject; struct PyPetscAOObject; struct PyPetscDMObject; struct PyPetscDMPlexTransformObject; struct PyPetscDSObject; struct PyPetscPartitionerObject; struct PyPetscDMLabelObject; /* "petsc4py/PETSc.pxd":112 * # -------------------------------------------------------------------- * * ctypedef public api class Comm [ # <<<<<<<<<<<<<< * type PyPetscComm_Type, * object PyPetscCommObject, */ struct PyPetscCommObject { PyObject_HEAD MPI_Comm comm; int isdup; PyObject *base; }; typedef struct PyPetscCommObject PyPetscCommObject; /* "petsc4py/PETSc.pxd":120 * cdef object base * * ctypedef public api class Object [ # <<<<<<<<<<<<<< * type PyPetscObject_Type, * object PyPetscObjectObject, */ struct PyPetscObjectObject { PyObject_HEAD struct __pyx_vtabstruct_8petsc4py_5PETSc_Object *__pyx_vtab; PyObject *__weakref__; PyObject *__pyx___dummy__; PetscObject oval; PetscObject *obj; }; typedef struct PyPetscObjectObject PyPetscObjectObject; /* "petsc4py/PETSc.pxd":132 * cdef object get_dict(self) * * ctypedef public api class Viewer(Object) [ # <<<<<<<<<<<<<< * type PyPetscViewer_Type, * object PyPetscViewerObject, */ struct PyPetscViewerObject { struct PyPetscObjectObject __pyx_base; PetscViewer vwr; }; typedef struct PyPetscViewerObject PyPetscViewerObject; /* "petsc4py/PETSc.pxd":138 * cdef PetscViewer vwr * * ctypedef public api class Random(Object) [ # <<<<<<<<<<<<<< * type PyPetscRandom_Type, * object PyPetscRandomObject, */ struct PyPetscRandomObject { struct PyPetscObjectObject __pyx_base; PetscRandom rnd; }; typedef struct PyPetscRandomObject PyPetscRandomObject; /* "petsc4py/PETSc.pxd":144 * cdef PetscRandom rnd * * ctypedef public api class Device [ # <<<<<<<<<<<<<< * type PyPetscDevice_Type, * object PyPetscDeviceObject, */ struct PyPetscDeviceObject { PyObject_HEAD PetscDevice device; PyObject *__weakref__; }; typedef struct PyPetscDeviceObject PyPetscDeviceObject; /* "petsc4py/PETSc.pxd":151 * cdef object __weakref__ * * ctypedef public api class DeviceContext(Object) [ # <<<<<<<<<<<<<< * type PyPetscDeviceContext_Type, * object PyPetscDeviceContextObject, */ struct PyPetscDeviceContextObject { struct PyPetscObjectObject __pyx_base; PetscDeviceContext dctx; }; typedef struct PyPetscDeviceContextObject PyPetscDeviceContextObject; /* "petsc4py/PETSc.pxd":157 * cdef PetscDeviceContext dctx * * ctypedef public api class IS(Object) [ # <<<<<<<<<<<<<< * type PyPetscIS_Type, * object PyPetscISObject, */ struct PyPetscISObject { struct PyPetscObjectObject __pyx_base; IS iset; }; typedef struct PyPetscISObject PyPetscISObject; /* "petsc4py/PETSc.pxd":163 * cdef PetscIS iset * * ctypedef public api class LGMap(Object) [ # <<<<<<<<<<<<<< * type PyPetscLGMap_Type, * object PyPetscLGMapObject, */ struct PyPetscLGMapObject { struct PyPetscObjectObject __pyx_base; ISLocalToGlobalMapping lgm; }; typedef struct PyPetscLGMapObject PyPetscLGMapObject; /* "petsc4py/PETSc.pxd":169 * cdef PetscLGMap lgm * * ctypedef public api class SF(Object) [ # <<<<<<<<<<<<<< * type PyPetscSF_Type, * object PyPetscSFObject, */ struct PyPetscSFObject { struct PyPetscObjectObject __pyx_base; PetscSF sf; }; typedef struct PyPetscSFObject PyPetscSFObject; /* "petsc4py/PETSc.pxd":175 * cdef PetscSF sf * * ctypedef public api class Vec(Object) [ # <<<<<<<<<<<<<< * type PyPetscVec_Type, * object PyPetscVecObject, */ struct PyPetscVecObject { struct PyPetscObjectObject __pyx_base; Vec vec; }; typedef struct PyPetscVecObject PyPetscVecObject; /* "petsc4py/PETSc.pxd":181 * cdef PetscVec vec * * ctypedef public api class Space(Object) [ # <<<<<<<<<<<<<< * type PyPetscSpace_Type, * object PyPetscSpaceObject, */ struct PyPetscSpaceObject { struct PyPetscObjectObject __pyx_base; PetscSpace space; }; typedef struct PyPetscSpaceObject PyPetscSpaceObject; /* "petsc4py/PETSc.pxd":187 * cdef PetscSpace space * * ctypedef public api class DualSpace(Object) [ # <<<<<<<<<<<<<< * type PyPetscDualSpace_Type, * object PyPetscDualSpaceObject, */ struct PyPetscDualSpaceObject { struct PyPetscObjectObject __pyx_base; PetscDualSpace dualspace; }; typedef struct PyPetscDualSpaceObject PyPetscDualSpaceObject; /* "petsc4py/PETSc.pxd":193 * cdef PetscDualSpace dualspace * * ctypedef public api class FE(Object) [ # <<<<<<<<<<<<<< * type PyPetscFE_Type, * object PyPetscFEObject, */ struct PyPetscFEObject { struct PyPetscObjectObject __pyx_base; PetscFE fe; }; typedef struct PyPetscFEObject PyPetscFEObject; /* "petsc4py/PETSc.pxd":199 * cdef PetscFE fe * * ctypedef public api class Quad(Object) [ # <<<<<<<<<<<<<< * type PyPetscQuad_Type, * object PyPetscQuadObject, */ struct PyPetscQuadObject { struct PyPetscObjectObject __pyx_base; PetscQuadrature quad; }; typedef struct PyPetscQuadObject PyPetscQuadObject; /* "petsc4py/PETSc.pxd":205 * cdef PetscQuadrature quad * * ctypedef public api class Scatter(Object) [ # <<<<<<<<<<<<<< * type PyPetscScatter_Type, * object PyPetscScatterObject, */ struct PyPetscScatterObject { struct PyPetscObjectObject __pyx_base; VecScatter sct; }; typedef struct PyPetscScatterObject PyPetscScatterObject; /* "petsc4py/PETSc.pxd":211 * cdef PetscScatter sct * * ctypedef public api class Section(Object) [ # <<<<<<<<<<<<<< * type PyPetscSection_Type, * object PyPetscSectionObject, */ struct PyPetscSectionObject { struct PyPetscObjectObject __pyx_base; PetscSection sec; }; typedef struct PyPetscSectionObject PyPetscSectionObject; /* "petsc4py/PETSc.pxd":217 * cdef PetscSection sec * * ctypedef public api class Mat(Object) [ # <<<<<<<<<<<<<< * type PyPetscMat_Type, * object PyPetscMatObject, */ struct PyPetscMatObject { struct PyPetscObjectObject __pyx_base; Mat mat; }; typedef struct PyPetscMatObject PyPetscMatObject; /* "petsc4py/PETSc.pxd":223 * cdef PetscMat mat * * ctypedef public api class MatPartitioning(Object) [ # <<<<<<<<<<<<<< * type PyPetscMatPartitioning_Type, * object PyPetscMatPartitioningObject, */ struct PyPetscMatPartitioningObject { struct PyPetscObjectObject __pyx_base; MatPartitioning part; }; typedef struct PyPetscMatPartitioningObject PyPetscMatPartitioningObject; /* "petsc4py/PETSc.pxd":229 * cdef PetscMatPartitioning part * * ctypedef public api class NullSpace(Object) [ # <<<<<<<<<<<<<< * type PyPetscNullSpace_Type, * object PyPetscNullSpaceObject, */ struct PyPetscNullSpaceObject { struct PyPetscObjectObject __pyx_base; MatNullSpace nsp; }; typedef struct PyPetscNullSpaceObject PyPetscNullSpaceObject; /* "petsc4py/PETSc.pxd":235 * cdef PetscNullSpace nsp * * ctypedef public api class PC(Object) [ # <<<<<<<<<<<<<< * type PyPetscPC_Type, * object PyPetscPCObject, */ struct PyPetscPCObject { struct PyPetscObjectObject __pyx_base; PC pc; }; typedef struct PyPetscPCObject PyPetscPCObject; /* "petsc4py/PETSc.pxd":241 * cdef PetscPC pc * * ctypedef public api class KSP(Object) [ # <<<<<<<<<<<<<< * type PyPetscKSP_Type, * object PyPetscKSPObject, */ struct PyPetscKSPObject { struct PyPetscObjectObject __pyx_base; KSP ksp; }; typedef struct PyPetscKSPObject PyPetscKSPObject; /* "petsc4py/PETSc.pxd":247 * cdef PetscKSP ksp * * ctypedef public api class SNES(Object) [ # <<<<<<<<<<<<<< * type PyPetscSNES_Type, * object PyPetscSNESObject, */ struct PyPetscSNESObject { struct PyPetscObjectObject __pyx_base; SNES snes; }; typedef struct PyPetscSNESObject PyPetscSNESObject; /* "petsc4py/PETSc.pxd":253 * cdef PetscSNES snes * * ctypedef public api class TS(Object) [ # <<<<<<<<<<<<<< * type PyPetscTS_Type, * object PyPetscTSObject, */ struct PyPetscTSObject { struct PyPetscObjectObject __pyx_base; TS ts; }; typedef struct PyPetscTSObject PyPetscTSObject; /* "petsc4py/PETSc.pxd":259 * cdef PetscTS ts * * ctypedef public api class TAO(Object) [ # <<<<<<<<<<<<<< * type PyPetscTAO_Type, * object PyPetscTAOObject, */ struct PyPetscTAOObject { struct PyPetscObjectObject __pyx_base; Tao tao; }; typedef struct PyPetscTAOObject PyPetscTAOObject; /* "petsc4py/PETSc.pxd":265 * cdef PetscTAO tao * * ctypedef public api class AO(Object) [ # <<<<<<<<<<<<<< * type PyPetscAO_Type, * object PyPetscAOObject, */ struct PyPetscAOObject { struct PyPetscObjectObject __pyx_base; AO ao; }; typedef struct PyPetscAOObject PyPetscAOObject; /* "petsc4py/PETSc.pxd":271 * cdef PetscAO ao * * ctypedef public api class DM(Object) [ # <<<<<<<<<<<<<< * type PyPetscDM_Type, * object PyPetscDMObject, */ struct PyPetscDMObject { struct PyPetscObjectObject __pyx_base; DM dm; }; typedef struct PyPetscDMObject PyPetscDMObject; /* "petsc4py/PETSc.pxd":277 * cdef PetscDM dm * * ctypedef public api class DMPlexTransform(Object) [ # <<<<<<<<<<<<<< * type PyPetscDMPlexTransform_Type, * object PyPetscDMPlexTransformObject, */ struct PyPetscDMPlexTransformObject { struct PyPetscObjectObject __pyx_base; DMPlexTransform tr; }; typedef struct PyPetscDMPlexTransformObject PyPetscDMPlexTransformObject; /* "petsc4py/PETSc.pxd":283 * cdef PetscDMPlexTransform tr * * ctypedef public api class DS(Object) [ # <<<<<<<<<<<<<< * type PyPetscDS_Type, * object PyPetscDSObject, */ struct PyPetscDSObject { struct PyPetscObjectObject __pyx_base; PetscDS ds; }; typedef struct PyPetscDSObject PyPetscDSObject; /* "petsc4py/PETSc.pxd":289 * cdef PetscDS ds * * ctypedef public api class Partitioner(Object) [ # <<<<<<<<<<<<<< * type PyPetscPartitioner_Type, * object PyPetscPartitionerObject, */ struct PyPetscPartitionerObject { struct PyPetscObjectObject __pyx_base; PetscPartitioner part; }; typedef struct PyPetscPartitionerObject PyPetscPartitionerObject; /* "petsc4py/PETSc.pxd":295 * cdef PetscPartitioner part * * ctypedef public api class DMLabel(Object) [ # <<<<<<<<<<<<<< * type PyPetscDMLabel_Type, * object PyPetscDMLabelObject, */ struct PyPetscDMLabelObject { struct PyPetscObjectObject __pyx_base; DMLabel dmlabel; }; typedef struct PyPetscDMLabelObject PyPetscDMLabelObject; #ifndef __PYX_HAVE_API__petsc4py__PETSc #ifndef __PYX_EXTERN_C #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" #else #define __PYX_EXTERN_C extern #endif #endif #ifndef DL_IMPORT #define DL_IMPORT(_T) _T #endif __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscComm_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscObject_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscViewer_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscRandom_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDevice_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDeviceContext_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscIS_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscLGMap_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscSF_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscVec_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscSpace_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDualSpace_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscFE_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscQuad_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscScatter_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscSection_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscMat_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscMatPartitioning_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscNullSpace_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscPC_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscKSP_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscSNES_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscTS_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscTAO_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscAO_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDM_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDMPlexTransform_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDS_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscPartitioner_Type; __PYX_EXTERN_C DL_IMPORT(PyTypeObject) PyPetscDMLabel_Type; __PYX_EXTERN_C PetscErrorCode MatPythonGetContext(Mat, void **); __PYX_EXTERN_C PetscErrorCode MatPythonSetContext(Mat, void *); __PYX_EXTERN_C PetscErrorCode PCPythonGetContext(PC, void **); __PYX_EXTERN_C PetscErrorCode PCPythonSetContext(PC, void *); __PYX_EXTERN_C PetscErrorCode KSPPythonGetContext(KSP, void **); __PYX_EXTERN_C PetscErrorCode KSPPythonSetContext(KSP, void *); __PYX_EXTERN_C PetscErrorCode SNESPythonGetContext(SNES, void **); __PYX_EXTERN_C PetscErrorCode SNESPythonSetContext(SNES, void *); __PYX_EXTERN_C PetscErrorCode TSPythonGetContext(TS, void **); __PYX_EXTERN_C PetscErrorCode TSPythonSetContext(TS, void *); __PYX_EXTERN_C PetscErrorCode TaoPythonGetContext(Tao, void **); __PYX_EXTERN_C PetscErrorCode TaoPythonSetContext(Tao, void *); __PYX_EXTERN_C PetscErrorCode PetscPythonRegisterAll(void); #endif /* !__PYX_HAVE_API__petsc4py__PETSc */ /* WARNING: the interface of the module init function changed in CPython 3.5. */ /* It now returns a PyModuleDef instance instead of a PyModule instance. */ #if PY_MAJOR_VERSION < 3 PyMODINIT_FUNC initPETSc(void); #else PyMODINIT_FUNC PyInit_PETSc(void); #endif #endif /* !__PYX_HAVE__petsc4py__PETSc */