Lines Matching refs:aijperm
64 Mat_SeqAIJPERM *aijperm = (Mat_SeqAIJPERM *)A->spptr; in MatConvert_SeqAIJPERM_SeqAIJ() local
69 aijperm = (Mat_SeqAIJPERM *)B->spptr; in MatConvert_SeqAIJPERM_SeqAIJ()
82 PetscCall(PetscFree(aijperm->xgroup)); in MatConvert_SeqAIJPERM_SeqAIJ()
83 PetscCall(PetscFree(aijperm->nzgroup)); in MatConvert_SeqAIJPERM_SeqAIJ()
84 PetscCall(PetscFree(aijperm->iperm)); in MatConvert_SeqAIJPERM_SeqAIJ()
96 Mat_SeqAIJPERM *aijperm = (Mat_SeqAIJPERM *)A->spptr; in MatDestroy_SeqAIJPERM() local
99 if (aijperm) { in MatDestroy_SeqAIJPERM()
101 PetscCall(PetscFree(aijperm->xgroup)); in MatDestroy_SeqAIJPERM()
102 PetscCall(PetscFree(aijperm->nzgroup)); in MatDestroy_SeqAIJPERM()
103 PetscCall(PetscFree(aijperm->iperm)); in MatDestroy_SeqAIJPERM()
119 Mat_SeqAIJPERM *aijperm = (Mat_SeqAIJPERM *)A->spptr; in MatDuplicate_SeqAIJPERM() local
137 PetscCall(PetscArraycpy(aijperm_dest, aijperm, 1)); in MatDuplicate_SeqAIJPERM()
145 PetscCall(PetscMalloc1(aijperm->ngroup + 1, &aijperm_dest->xgroup)); in MatDuplicate_SeqAIJPERM()
146 PetscCall(PetscMalloc1(aijperm->ngroup, &aijperm_dest->nzgroup)); in MatDuplicate_SeqAIJPERM()
147 PetscCall(PetscArraycpy(aijperm_dest->iperm, aijperm->iperm, A->rmap->n)); in MatDuplicate_SeqAIJPERM()
148 PetscCall(PetscArraycpy(aijperm_dest->xgroup, aijperm->xgroup, aijperm->ngroup + 1)); in MatDuplicate_SeqAIJPERM()
149 PetscCall(PetscArraycpy(aijperm_dest->nzgroup, aijperm->nzgroup, aijperm->ngroup)); in MatDuplicate_SeqAIJPERM()
156 Mat_SeqAIJPERM *aijperm = (Mat_SeqAIJPERM *)A->spptr; in MatSeqAIJPERM_create_perm() local
172 …if (aijperm->nonzerostate == A->nonzerostate) PetscFunctionReturn(PETSC_SUCCESS); /* permutation e… in MatSeqAIJPERM_create_perm()
173 aijperm->nonzerostate = A->nonzerostate; in MatSeqAIJPERM_create_perm()
175 PetscCall(PetscFree(aijperm->xgroup)); in MatSeqAIJPERM_create_perm()
176 PetscCall(PetscFree(aijperm->nzgroup)); in MatSeqAIJPERM_create_perm()
177 PetscCall(PetscFree(aijperm->iperm)); in MatSeqAIJPERM_create_perm()
183 PetscCall(PetscMalloc1(m, &aijperm->iperm)); in MatSeqAIJPERM_create_perm()
216 PetscCall(PetscMalloc1(maxnz + 2, &aijperm->xgroup)); in MatSeqAIJPERM_create_perm()
217 PetscCall(PetscMalloc1(maxnz + 1, &aijperm->nzgroup)); in MatSeqAIJPERM_create_perm()
225 aijperm->nzgroup[ngroup] = i; in MatSeqAIJPERM_create_perm()
226 aijperm->xgroup[ngroup] = istart; in MatSeqAIJPERM_create_perm()
232 aijperm->xgroup[ngroup] = istart; in MatSeqAIJPERM_create_perm()
233 aijperm->ngroup = ngroup; in MatSeqAIJPERM_create_perm()
242 aijperm->iperm[ipos] = i; in MatSeqAIJPERM_create_perm()
291 Mat_SeqAIJPERM *aijperm = (Mat_SeqAIJPERM *)A->spptr; in MatMult_SeqAIJPERM() local
321 iperm = aijperm->iperm; in MatMult_SeqAIJPERM()
322 ngroup = aijperm->ngroup; in MatMult_SeqAIJPERM()
323 xgroup = aijperm->xgroup; in MatMult_SeqAIJPERM()
324 nzgroup = aijperm->nzgroup; in MatMult_SeqAIJPERM()
468 Mat_SeqAIJPERM *aijperm; in MatMultAdd_SeqAIJPERM() local
501 aijperm = (Mat_SeqAIJPERM *)A->spptr; in MatMultAdd_SeqAIJPERM()
502 iperm = aijperm->iperm; in MatMultAdd_SeqAIJPERM()
503 ngroup = aijperm->ngroup; in MatMultAdd_SeqAIJPERM()
504 xgroup = aijperm->xgroup; in MatMultAdd_SeqAIJPERM()
505 nzgroup = aijperm->nzgroup; in MatMultAdd_SeqAIJPERM()
602 Mat_SeqAIJPERM *aijperm; in MatConvert_SeqAIJ_SeqAIJPERM() local
610 PetscCall(PetscNew(&aijperm)); in MatConvert_SeqAIJ_SeqAIJPERM()
611 B->spptr = (void *)aijperm; in MatConvert_SeqAIJ_SeqAIJPERM()
620 …aijperm->nonzerostate = -1; /* this will trigger the generation of the permutation information the… in MatConvert_SeqAIJ_SeqAIJPERM()