diff --git a/spm.h b/spm.h index 8277a83d88c1bb12307abf931b412207fd3c684c..95653c6589c0b9d41f649ad32b5ab32f92b1b863 100644 --- a/spm.h +++ b/spm.h @@ -21,18 +21,23 @@ * @struct pastix_spm_s - Sparse matrix data structure */ struct pastix_spm_s { - int mtxtype; /*< Matrix structure: PastixGeneral, PastixSymmetric or PastixHermitian. */ - int flttype; /*< avals datatype: PastixPattern, PastixFloat, PastixDouble, PastixComplex32 or PastixComplex64 */ - int fmttype; /*< Matrix storage format: PastixCSC, PastixCSR, PastixIJV */ - pastix_int_t gN; /*< Global number of vertices in the compressed graph */ - pastix_int_t n; /*< Local number of vertices in the compressed graph */ - pastix_int_t gnnz; /*< Global number of non zeroes in the compressed graph */ - pastix_int_t nnz; /*< Local number of non zeroes in the compressed graph */ - pastix_int_t dof; /*< Number of degrees of freedom per unknown */ - pastix_int_t *colptr; /*< List of indirections to rows for each vertex */ - pastix_int_t *rowptr; /*< List of edges for each vertex */ - pastix_int_t *loc2glob; /*< Corresponding numbering from local to global */ - void *values; /*< Values stored in the matrix */ + int mtxtype; /*< Matrix structure: PastixGeneral, PastixSymmetric + or PastixHermitian. */ + int flttype; /*< avals datatype: PastixPattern, PastixFloat, PastixDouble, + PastixComplex32 or PastixComplex64 */ + int fmttype; /*< Matrix storage format: PastixCSC, PastixCSR, PastixIJV */ + pastix_int_t gN; /*< Global number of vertices in the compressed graph */ + pastix_int_t n; /*< Local number of vertices in the compressed graph */ + pastix_int_t gnnz; /*< Global number of non zeroes in the compressed graph */ + pastix_int_t nnz; /*< Local number of non zeroes in the compressed graph */ + pastix_int_t dof; /*< Number of degrees of freedom per unknown, + if > 0, constant degree of freedom + otherwise, irregular degree of freedom (refer to dofs) */ + pastix_int_t *dofs; /*< Number of degrees of freedom per unknown (NULL, if dof > 0) */ + pastix_int_t *colptr; /*< List of indirections to rows for each vertex */ + pastix_int_t *rowptr; /*< List of edges for each vertex */ + pastix_int_t *loc2glob; /*< Corresponding numbering from local to global */ + void *values; /*< Values stored in the matrix */ }; int @@ -56,7 +61,6 @@ csc_save( pastix_int_t n, int spmLoad( pastix_spm_t *spm, FILE *infile ); int spmSave( pastix_spm_t *spm, FILE *outfile ); - int spmGenRHS(int type, int nrhs, const pastix_spm_t *spm, void *x, int ldx, void *b, int ldb ); int spmCheckAxb( int nrhs, const pastix_spm_t *spm, void *x0, int ldx0, void *b, int ldb, const void *x, int ldx );