1d8588912SDave May 2519f805aSKarl Rupp #if !defined(MatNest_impl_h) 3d8588912SDave May #define MatNest_impl_h 4d8588912SDave May 5af0996ceSBarry Smith #include <petsc/private/matimpl.h> 6d8588912SDave May 7f349c1fdSJed Brown struct MatNestISPair { 8f349c1fdSJed Brown IS *row,*col; 9f349c1fdSJed Brown }; 10f349c1fdSJed Brown 11d8588912SDave May typedef struct { 12d8588912SDave May PetscInt nr,nc; /* nr x nc blocks */ 13d8588912SDave May Mat **m; 14f349c1fdSJed Brown struct MatNestISPair isglobal; 15f349c1fdSJed Brown struct MatNestISPair islocal; 16207556f9SJed Brown Vec *left,*right; 17d8588912SDave May PetscInt *row_len,*col_len; 18*06a1af2fSStefano Zampini PetscObjectState *nnzstate; 19e7c19651SJed Brown PetscBool splitassembly; 20d8588912SDave May } Mat_Nest; 21d8588912SDave May 22d8588912SDave May #endif 23