xref: /petsc/src/mat/impls/aij/seq/crl/crl.h (revision 5a11e1b2b5531745063fa49d13371cfa0d0b861d)
1805d1734SBarry Smith 
27c4f633dSBarry Smith #include "../src/mat/impls/aij/seq/aij.h"
3805d1734SBarry Smith 
4805d1734SBarry Smith typedef struct {
5805d1734SBarry Smith   PetscInt    nz;
6805d1734SBarry Smith   PetscInt    m;        /* number of rows */
7805d1734SBarry Smith   PetscInt    rmax;     /* maximum number of columns in a row */
8805d1734SBarry Smith   PetscInt    ncols;    /* number of columns in each row */
9805d1734SBarry Smith   PetscInt    *icols;   /* columns of nonzeros, stored one column at a time */
10805d1734SBarry Smith   PetscScalar *acols;   /* values of nonzeros, stored as icols */
11805d1734SBarry Smith 
12805d1734SBarry Smith   /* these are only needed for the parallel case */
13805d1734SBarry Smith   Vec         xwork,fwork;
14805d1734SBarry Smith   VecScatter  xscat;  /* gathers the locally needed part of global vector */
159222b4acSBarry Smith   PetscScalar *array; /* array used to create xwork */
16*5a11e1b2SBarry Smith } Mat_AIJCRL;
17