Lines Matching refs:icols
68 PetscCall(PetscMalloc1(nrows, &result->icols)); in spbas_allocate_pattern()
110 result->icols[0] = result->alloc_icol; in spbas_allocate_data()
111 for (i = 1; i < nrows; i++) result->icols[i] = result->icols[i - 1] + result->row_nnz[i - 1]; in spbas_allocate_data()
125 PetscCall(PetscMalloc1(r_nnz, &result->icols[i])); in spbas_allocate_data()
256 PetscInt *icols; in spbas_compress_pattern() local
313 B->icols[i] = &B->alloc_icol[ptr]; in spbas_compress_pattern()
314 icols = &icol_in[irow_in[i]]; in spbas_compress_pattern()
317 for (j = 0; j < row_nnz; j++) B->icols[i][j] = icols[j]; in spbas_compress_pattern()
319 for (j = 0; j < row_nnz; j++) B->icols[i][j] = icols[j] - i; in spbas_compress_pattern()
321 for (j = 0; j < row_nnz; j++) B->icols[i][j] = icols[j] - icols[0]; in spbas_compress_pattern()
328 for (i = 0; i < nrows; i++) B->icols[i] = B->icols[ipoint[i]]; in spbas_compress_pattern()
359 for (i = 0; i < matrix.nrows; i++) PetscCall(PetscFree(matrix.icols[i])); in spbas_delete()
360 PetscCall(PetscFree(matrix.icols)); in spbas_delete()
367 PetscCall(PetscFree(matrix.icols)); in spbas_delete()
407 icol_A = matrix_A.icols[i]; in spbas_matrix_to_crs()
461 irow = in_matrix.icols[i]; in spbas_transpose()
482 irow = in_matrix.icols[i]; in spbas_transpose()
490 result->icols[k][result->row_nnz[k]] = i; in spbas_transpose()
498 irow = in_matrix.icols[i]; in spbas_transpose()
506 result->icols[k][result->row_nnz[k]] = i; in spbas_transpose()
635 PetscInt **icols; in spbas_apply_reordering_rows() local
644 PetscCall(PetscMalloc1(nrows, &icols)); in spbas_apply_reordering_rows()
649 icols[i] = matrix_A->icols[ip]; in spbas_apply_reordering_rows()
651 for (j = 0; j < row_nnz[i]; j++) icols[i][j] += ip - i; in spbas_apply_reordering_rows()
655 PetscCall(PetscFree(matrix_A->icols)); in spbas_apply_reordering_rows()
659 matrix_A->icols = icols; in spbas_apply_reordering_rows()
673 PetscInt *icols; in spbas_apply_reordering_cols() local
681 icols = matrix_A->icols[i]; in spbas_apply_reordering_cols()
685 for (j = 0; j < row_nnz; j++) icols[j] = permutation[i + icols[j]] - i; in spbas_apply_reordering_cols()
686 PetscCall(spbas_mergesort(row_nnz, icols, vals)); in spbas_apply_reordering_cols()
726 for (j = 0; j < r_nnz; j++) retval.icols[i][j] = aj[i0 + j] - i; in spbas_pattern_only()
752 j = row + in_matrix->icols[row][i]; in spbas_mark_row_power()
754 …PetscCall(spbas_mark_row_power(iwork, row + in_matrix->icols[row][i], in_matrix, marker / 2, minmr… in spbas_mark_row_power()
761 j = row + in_matrix->icols[row][i]; in spbas_mark_row_power()
813 kend = i + in_matrix.icols[i][nnz - 1]; in spbas_power()
823 PetscCall(PetscMalloc1(nnz, &retval.icols[i])); in spbas_power()
829 retval.icols[i][inz] = j - i; in spbas_power()
853 …for (jstart = 0; (jstart < inout_matrix->row_nnz[i]) && (inout_matrix->icols[i][jstart] < 0); jsta… in spbas_keep_upper()
855 …; j < inout_matrix->row_nnz[i] - jstart; j++) inout_matrix->icols[i][j] = inout_matrix->icols[i][j… in spbas_keep_upper()
863 …inout_matrix->icols[i] = (PetscInt *)realloc((void *)inout_matrix->icols[i], inout_matrix->row_nnz… in spbas_keep_upper()