Lines Matching +full:- +full:b

5   Mat          B;  in MatConvert_SeqBAIJ_SeqAIJ()  local
6 Mat_SeqAIJ *b; in MatConvert_SeqBAIJ_SeqAIJ() local
8 Mat_SeqBAIJ *a = (Mat_SeqBAIJ *)A->data; in MatConvert_SeqBAIJ_SeqAIJ()
9 PetscInt bs = A->rmap->bs, *ai = a->i, *aj = a->j, n = A->rmap->N / bs, i, j, k; in MatConvert_SeqBAIJ_SeqAIJ()
11 MatScalar *aa = a->a; in MatConvert_SeqBAIJ_SeqAIJ()
15 B = *newmat; in MatConvert_SeqBAIJ_SeqAIJ()
16 for (i = 0; i < n; i++) maxlen = PetscMax(maxlen, ai[i + 1] - ai[i]); in MatConvert_SeqBAIJ_SeqAIJ()
20 maxlen = PetscMax(maxlen, ai[i + 1] - ai[i]); in MatConvert_SeqBAIJ_SeqAIJ()
21 for (j = 0; j < bs; j++) rowlengths[i * bs + j] = bs * (ai[i + 1] - ai[i]); in MatConvert_SeqBAIJ_SeqAIJ()
23 PetscCall(MatCreate(PetscObjectComm((PetscObject)A), &B)); in MatConvert_SeqBAIJ_SeqAIJ()
24 PetscCall(MatSetType(B, MATSEQAIJ)); in MatConvert_SeqBAIJ_SeqAIJ()
25 PetscCall(MatSetSizes(B, A->rmap->n, A->cmap->n, A->rmap->N, A->cmap->N)); in MatConvert_SeqBAIJ_SeqAIJ()
26 PetscCall(MatSetBlockSizes(B, A->rmap->bs, A->cmap->bs)); in MatConvert_SeqBAIJ_SeqAIJ()
27 PetscCall(MatSeqAIJSetPreallocation(B, 0, rowlengths)); in MatConvert_SeqBAIJ_SeqAIJ()
30 b = (Mat_SeqAIJ *)B->data; in MatConvert_SeqBAIJ_SeqAIJ()
31 roworiented = b->roworiented; in MatConvert_SeqBAIJ_SeqAIJ()
33 PetscCall(MatSetOption(B, MAT_ROW_ORIENTED, PETSC_FALSE)); in MatConvert_SeqBAIJ_SeqAIJ()
38 ncols = ai[i + 1] - ai[i]; in MatConvert_SeqBAIJ_SeqAIJ()
43 PetscCall(MatSetValues(B, bs, rows, bs * ncols, cols, aa, INSERT_VALUES)); in MatConvert_SeqBAIJ_SeqAIJ()
48 PetscCall(MatAssemblyBegin(B, MAT_FINAL_ASSEMBLY)); in MatConvert_SeqBAIJ_SeqAIJ()
49 PetscCall(MatAssemblyEnd(B, MAT_FINAL_ASSEMBLY)); in MatConvert_SeqBAIJ_SeqAIJ()
50 PetscCall(MatSetOption(B, MAT_ROW_ORIENTED, roworiented)); in MatConvert_SeqBAIJ_SeqAIJ()
52 if (reuse == MAT_INPLACE_MATRIX) PetscCall(MatHeaderReplace(A, &B)); in MatConvert_SeqBAIJ_SeqAIJ()
53 else *newmat = B; in MatConvert_SeqBAIJ_SeqAIJ()
61 Mat_SeqAIJ *Aa = (Mat_SeqAIJ *)A->data; in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
62 PetscInt m, n, bs = A->rmap->bs; in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
63 const PetscInt *ai = Aa->i, *aj = Aa->j; in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
70 for (PetscInt i = 0; i < m; i++) (*nnz)[i] = ai[i + 1] - ai[i]; in MatConvert_SeqAIJ_SeqBAIJ_Preallocate()
94 Mat B; in MatConvert_SeqAIJ_SeqBAIJ() local
95 Mat_SeqAIJ *a = (Mat_SeqAIJ *)A->data; in MatConvert_SeqAIJ_SeqBAIJ()
96 Mat_SeqBAIJ *b; in MatConvert_SeqAIJ_SeqBAIJ() local
97 PetscInt m = A->rmap->N, n = A->cmap->N, *rowlengths, bs = A->rmap->bs; in MatConvert_SeqAIJ_SeqBAIJ()
102 PetscCall(MatCreate(PetscObjectComm((PetscObject)A), &B)); in MatConvert_SeqAIJ_SeqBAIJ()
103 PetscCall(MatSetSizes(B, m, n, m, n)); in MatConvert_SeqAIJ_SeqBAIJ()
104 PetscCall(MatSetType(B, MATSEQBAIJ)); in MatConvert_SeqAIJ_SeqBAIJ()
105 PetscCall(MatSeqBAIJSetPreallocation(B, bs, 0, rowlengths)); in MatConvert_SeqAIJ_SeqBAIJ()
107 } else B = *newmat; in MatConvert_SeqAIJ_SeqBAIJ()
110 b = (Mat_SeqBAIJ *)B->data; in MatConvert_SeqAIJ_SeqBAIJ()
112 PetscCall(PetscArraycpy(b->i, a->i, m + 1)); in MatConvert_SeqAIJ_SeqBAIJ()
113 PetscCall(PetscArraycpy(b->ilen, a->ilen, m)); in MatConvert_SeqAIJ_SeqBAIJ()
114 PetscCall(PetscArraycpy(b->j, a->j, a->nz)); in MatConvert_SeqAIJ_SeqBAIJ()
115 PetscCall(PetscArraycpy(b->a, a->a, a->nz)); in MatConvert_SeqAIJ_SeqBAIJ()
117 PetscCall(MatSetOption(B, MAT_ROW_ORIENTED, PETSC_TRUE)); in MatConvert_SeqAIJ_SeqBAIJ()
118 PetscCall(MatAssemblyBegin(B, MAT_FINAL_ASSEMBLY)); in MatConvert_SeqAIJ_SeqBAIJ()
119 PetscCall(MatAssemblyEnd(B, MAT_FINAL_ASSEMBLY)); in MatConvert_SeqAIJ_SeqBAIJ()
124 PetscCall(MatConvert_Basic(A, newtype, MAT_REUSE_MATRIX, &B)); in MatConvert_SeqAIJ_SeqBAIJ()
127 if (reuse == MAT_INPLACE_MATRIX) PetscCall(MatHeaderReplace(A, &B)); in MatConvert_SeqAIJ_SeqBAIJ()
128 else *newmat = B; in MatConvert_SeqAIJ_SeqBAIJ()