xref: /petsc/src/mat/impls/aij/mpi/mpiaij.h (revision 350bdbd6fda4d6ed9e692e6de7b6f1a3e53edf35)
1 
2 #include "aij.h"
3 #include <math.h>
4 
5 typedef  struct {int nmax, n, *idx, *idy; Scalar *array;} Stash;
6 
7 typedef struct {
8   int           *rowners,*cowners;  /* ranges owned by each processor */
9   int           m,n,M,N;            /* local rows, cols, global rows, cols */
10   int           rstart,rend,cstart,cend;
11   Mat           A,B;
12   int           numtids,mytid;
13 /*  Used in Matrix assembly */
14   int           assembled;          /* MatAssemble has been called */
15   InsertMode    insertmode;
16   Stash         stash;
17   MPI_Request   *send_waits,*recv_waits;
18   int           nsends,nrecvs;
19   Scalar        *svalues,*rvalues;
20   int           rmax;
21   int           *colmap;    /* indicates local col number of off proc column*/
22   int           *garray;
23 /*  Used in Matrix-vector product */
24   Vec           lvec;
25   VecScatterCtx Mvctx;
26 } Mat_MPIAIJ;
27 
28 
29