xref: /petsc/src/mat/impls/nest/matnestimpl.h (revision 519f805a543c2a7f195bcba21173bb2cdfadb956)
1d8588912SDave May 
2*519f805aSKarl Rupp #if !defined(MatNest_impl_h)
3d8588912SDave May #define MatNest_impl_h
4d8588912SDave May 
5b45d2f2cSJed Brown #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;
18e7c19651SJed Brown   PetscBool          splitassembly;
19d8588912SDave May } Mat_Nest;
20d8588912SDave May 
21d8588912SDave May #endif
22