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