xref: /petsc/src/mat/impls/aij/seq/aij.h (revision 2d40f77162977aae6a08e06b534bb0d640d99451)
1b8a66259SBarry Smith 
2b8a66259SBarry Smith #include "matimpl.h"
3b8a66259SBarry Smith #include "math.h"
4b8a66259SBarry Smith 
5*2d40f771SBarry Smith #if !defined(__AIJ_H)
6*2d40f771SBarry Smith #define __AIJ_H
7*2d40f771SBarry Smith 
8*2d40f771SBarry Smith /*  The i[] and j[] arrays start at 1 not zero to support Fortran 77 */
9*2d40f771SBarry Smith /*  In Fortran j[i[k]+p-1] is the pth column in row k */
10*2d40f771SBarry Smith 
11*2d40f771SBarry Smith /*
12*2d40f771SBarry Smith     singlemalloc indicates that a, i and j where all obtained with
13*2d40f771SBarry Smith   one big malloc
14*2d40f771SBarry Smith */
15b8a66259SBarry Smith typedef struct {
16*2d40f771SBarry Smith   int    sorted, roworiented, nonew, singlemalloc,outofrange,assembled;
17*2d40f771SBarry Smith   int    m,n,nz,mem,*diag,       /* rows and columns */
18*2d40f771SBarry Smith          *i,*imax, *ilen,        /* j + i[k] - 1  is start of row k */
19b8a66259SBarry Smith          *j;                     /* ilen is actual lenght of row */
20*2d40f771SBarry Smith   Scalar *a;
21b8a66259SBarry Smith } Matiaij;
22b8a66259SBarry Smith 
23*2d40f771SBarry Smith #endif
24