Lines Matching refs:ptap
47 MatISPtAP ptap = *(MatISPtAP *)ptr; in MatISContainerDestroyPtAP_Private() local
50 PetscCall(MatDestroySubMatrices(ptap->ris1 ? 2 : 1, &ptap->lP)); in MatISContainerDestroyPtAP_Private()
51 PetscCall(ISDestroy(&ptap->cis0)); in MatISContainerDestroyPtAP_Private()
52 PetscCall(ISDestroy(&ptap->cis1)); in MatISContainerDestroyPtAP_Private()
53 PetscCall(ISDestroy(&ptap->ris0)); in MatISContainerDestroyPtAP_Private()
54 PetscCall(ISDestroy(&ptap->ris1)); in MatISContainerDestroyPtAP_Private()
55 PetscCall(PetscFree(ptap)); in MatISContainerDestroyPtAP_Private()
61 MatISPtAP ptap; in MatPtAPNumeric_IS_XAIJ() local
72 PetscCall(PetscContainerGetPointer(c, &ptap)); in MatPtAPNumeric_IS_XAIJ()
73 ris[0] = ptap->ris0; in MatPtAPNumeric_IS_XAIJ()
74 ris[1] = ptap->ris1; in MatPtAPNumeric_IS_XAIJ()
75 cis[0] = ptap->cis0; in MatPtAPNumeric_IS_XAIJ()
76 cis[1] = ptap->cis1; in MatPtAPNumeric_IS_XAIJ()
77 n = ptap->ris1 ? 2 : 1; in MatPtAPNumeric_IS_XAIJ()
78 reuse = ptap->lP ? MAT_REUSE_MATRIX : MAT_INITIAL_MATRIX; in MatPtAPNumeric_IS_XAIJ()
79 PetscCall(MatCreateSubMatrices(P, n, ris, cis, reuse, &ptap->lP)); in MatPtAPNumeric_IS_XAIJ()
83 if (ptap->ris1) { /* unsymmetric A mapping */ in MatPtAPNumeric_IS_XAIJ()
86 PetscCall(MatTranspose(ptap->lP[1], MAT_INITIAL_MATRIX, &lPt)); in MatPtAPNumeric_IS_XAIJ()
87 PetscCall(MatMatMatMult(lPt, lA, ptap->lP[0], reuse, ptap->fill, &lC)); in MatPtAPNumeric_IS_XAIJ()
91 PetscCall(MatPtAP(lA, ptap->lP[0], reuse, ptap->fill, &lC)); in MatPtAPNumeric_IS_XAIJ()
92 …orel2l) PetscCall(PetscObjectCompose((PetscObject)C, "_MatIS_PtAP_l2l", (PetscObject)ptap->lP[0])); in MatPtAPNumeric_IS_XAIJ()
184 MatISPtAP ptap; in MatPtAPSymbolic_IS_XAIJ() local
206 PetscCall(PetscNew(&ptap)); in MatPtAPSymbolic_IS_XAIJ()
208 PetscCall(PetscContainerSetPointer(c, ptap)); in MatPtAPSymbolic_IS_XAIJ()
212 ptap->fill = fill; in MatPtAPSymbolic_IS_XAIJ()
219 PetscCall(ISCreateBlock(comm, ibs, N / ibs, garray, PETSC_COPY_VALUES, &ptap->ris0)); in MatPtAPSymbolic_IS_XAIJ()
222 PetscCall(MatCreateSubMatrix(P, ptap->ris0, NULL, MAT_INITIAL_MATRIX, &PT)); in MatPtAPSymbolic_IS_XAIJ()
223 PetscCall(MatGetNonzeroColumnsLocal_Private(PT, &ptap->cis0)); in MatPtAPSymbolic_IS_XAIJ()
224 PetscCall(ISLocalToGlobalMappingCreateIS(ptap->cis0, &Ccl2g)); in MatPtAPSymbolic_IS_XAIJ()
235 PetscCall(ISCreateBlock(comm, ibs, N1 / ibs, garray, PETSC_COPY_VALUES, &ptap->ris1)); in MatPtAPSymbolic_IS_XAIJ()
240 PetscCall(ISBlockGetIndices(ptap->ris0, &i1)); in MatPtAPSymbolic_IS_XAIJ()
241 PetscCall(ISBlockGetIndices(ptap->ris1, &i2)); in MatPtAPSymbolic_IS_XAIJ()
246 PetscCall(ISDestroy(&ptap->ris1)); in MatPtAPSymbolic_IS_XAIJ()
248 PetscCall(MatCreateSubMatrix(P, ptap->ris1, NULL, MAT_INITIAL_MATRIX, &PT)); in MatPtAPSymbolic_IS_XAIJ()
249 PetscCall(MatGetNonzeroColumnsLocal_Private(PT, &ptap->cis1)); in MatPtAPSymbolic_IS_XAIJ()
250 PetscCall(ISLocalToGlobalMappingCreateIS(ptap->cis1, &Crl2g)); in MatPtAPSymbolic_IS_XAIJ()