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