Actual source code: crl.h

      1: #pragma once

      3: #include <../src/mat/impls/aij/seq/aij.h>

      5: typedef struct {
      6:   PetscInt     nz;
      7:   PetscInt     m;     /* number of rows */
      8:   PetscInt     rmax;  /* maximum number of columns in a row */
      9:   PetscInt     ncols; /* number of columns in each row */
     10:   PetscInt    *icols; /* columns of nonzeros, stored one column at a time */
     11:   PetscScalar *acols; /* values of nonzeros, stored as icols */
     12:   /* these are only needed for the parallel case */
     13:   Vec          xwork, fwork;
     14:   VecScatter   xscat; /* gathers the locally needed part of global vector */
     15:   PetscScalar *array; /* array used to create xwork */
     16: } Mat_AIJCRL;