73 if ( graphA == NULL ) {
79 if ( graphL == NULL ) {
84 if ( graphA->n == 0 ) {
96 for ( j = 0; j < graphA->n; j++ ) {
103 for ( i = 0; i < graphA->n; i++ ) {
118 adj = graphA->rows[h];
119 for ( j = 0; j < graphA->nnz[h]; j++ ) {
121 if ( visited[t] != i ) {
123 if ( ( t < i ) && ( length[h] < level ) ) {
126 length[t] = length[h] + 1;
139 memcpy( graphL->rows[i], ja, k *
sizeof(
pastix_int_t ) );
141 intSort1asc1( graphL->rows[i], graphL->nnz[i] );
152 memFree_null( visited );
153 memFree_null( length );
154 memFree_null( stack );
156 graphL->total_nnz = nnz;
pastix_int_t faxCSRFactILUk(const fax_csr_t *graphA, const pastix_order_t *order, pastix_int_t level, fax_csr_t *graphL)
Compute the non zero pattern of the levelized incomplete factor for a sparse lower triangular matrix ...
void faxCSRCblkCompress(const fax_csr_t *graphA, const pastix_order_t *order, fax_csr_t *graphL, pastix_int_t *work)
Compact a element wise graph of a matrix A, according to the associated partition.
void faxCSRInit(pastix_int_t n, fax_csr_t *csr)
Initialize the data structure by doing the first allocations within the structure and initializing th...