xref: /petsc/src/mat/impls/aij/seq/aij.h (revision 1fb19edaf42431f0a3b9356c971c24bf0dff028f)
1b8a66259SBarry Smith 
2b8a66259SBarry Smith #include "matimpl.h"
3b8a66259SBarry Smith #include "math.h"
4b8a66259SBarry Smith 
52d40f771SBarry Smith #if !defined(__AIJ_H)
62d40f771SBarry Smith #define __AIJ_H
72d40f771SBarry Smith 
82d40f771SBarry Smith /*  The i[] and j[] arrays start at 1 not zero to support Fortran 77 */
92d40f771SBarry Smith /*  In Fortran j[i[k]+p-1] is the pth column in row k */
102d40f771SBarry Smith 
112d40f771SBarry Smith /*
122d40f771SBarry Smith     singlemalloc indicates that a, i and j where all obtained with
132d40f771SBarry Smith   one big malloc
142d40f771SBarry Smith */
15b8a66259SBarry Smith typedef struct {
16a0a613f7SBarry Smith   int    sorted, roworiented, nonew, singlemalloc,assembled;
172d40f771SBarry Smith   int    m,n,nz,mem,*diag,       /* rows and columns */
182d40f771SBarry Smith          *i,*imax, *ilen,        /* j + i[k] - 1  is start of row k */
19b8a66259SBarry Smith          *j;                     /* ilen is actual lenght of row */
202d40f771SBarry Smith   Scalar *a;
21*1fb19edaSLois Curfman McInnes } Mat_AIJ;
22b8a66259SBarry Smith 
232d40f771SBarry Smith #endif
24