Lines Matching refs:ptap
78 MatProductCtx_APMPI *ptap = *(MatProductCtx_APMPI **)data; in MatProductCtxDestroy_MPIAIJ_MatMatMult() local
81 PetscCall(PetscFree2(ptap->startsj_s, ptap->startsj_r)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
82 PetscCall(PetscFree(ptap->bufa)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
83 PetscCall(MatDestroy(&ptap->P_loc)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
84 PetscCall(MatDestroy(&ptap->P_oth)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
85 PetscCall(MatDestroy(&ptap->Pt)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
86 PetscCall(PetscFree(ptap->api)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
87 PetscCall(PetscFree(ptap->apj)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
88 PetscCall(PetscFree(ptap->apa)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
89 PetscCall(PetscFree(ptap)); in MatProductCtxDestroy_MPIAIJ_MatMatMult()
102 MatProductCtx_APMPI *ptap; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable() local
112 ptap = (MatProductCtx_APMPI *)C->product->data; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
113 …PetscCheck(ptap, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "PtAP cannot be comput… in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
116 …PetscCheck(ptap->P_oth || size <= 1, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "A… in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
127 …tGetBrowsOfAoCols_MPIAIJ(A, P, MAT_REUSE_MATRIX, &ptap->startsj_s, &ptap->startsj_r, &ptap->bufa, … in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
128 PetscCall(MatMPIAIJGetLocalMat(P, MAT_REUSE_MATRIX, &ptap->P_loc)); in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
132 p_loc = (Mat_SeqAIJ *)ptap->P_loc->data; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
134 if (size > 1) p_oth = (Mat_SeqAIJ *)ptap->P_oth->data; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
137 apa = ptap->apa; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
139 api = ptap->api; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
140 apj = ptap->apj; in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
144 PetscCall(MatSeqAIJGetArrayRead(ptap->P_loc, &dummy3)); in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
145 if (ptap->P_oth) PetscCall(MatSeqAIJGetArrayRead(ptap->P_oth, &dummy4)); in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
182 PetscCall(MatSeqAIJRestoreArrayRead(ptap->P_loc, &dummy3)); in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
183 if (ptap->P_oth) PetscCall(MatSeqAIJRestoreArrayRead(ptap->P_oth, &dummy4)); in MatMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
196 MatProductCtx_APMPI *ptap; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable() local
215 PetscCall(PetscNew(&ptap)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
218 …etBrowsOfAoCols_MPIAIJ(A, P, MAT_INITIAL_MATRIX, &ptap->startsj_s, &ptap->startsj_r, &ptap->bufa, … in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
221 PetscCall(MatMPIAIJGetLocalMat(P, MAT_INITIAL_MATRIX, &ptap->P_loc)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
223 p_loc = (Mat_SeqAIJ *)ptap->P_loc->data; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
227 p_oth = (Mat_SeqAIJ *)ptap->P_oth->data; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
238 ptap->api = api; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
293 PetscCall(PetscMalloc1(api[am], &ptap->apj)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
294 apj = ptap->apj; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
295 PetscCall(PetscFreeSpaceContiguous(&free_space, ptap->apj)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
299 PetscCall(PetscCalloc1(pN, &ptap->apa)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
320 C->product->data = ptap; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
665 MatProductCtx_APMPI *ptap; in MatMatMultNumeric_MPIAIJ_MPIAIJ() local
676 ptap = (MatProductCtx_APMPI *)C->product->data; in MatMatMultNumeric_MPIAIJ_MPIAIJ()
677 …PetscCheck(ptap, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "PtAP cannot be comput… in MatMatMultNumeric_MPIAIJ_MPIAIJ()
680 …PetscCheck(ptap->P_oth || size <= 1, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "A… in MatMatMultNumeric_MPIAIJ_MPIAIJ()
688 apa_sparse = ptap->apa; in MatMatMultNumeric_MPIAIJ_MPIAIJ()
692 …tGetBrowsOfAoCols_MPIAIJ(A, P, MAT_REUSE_MATRIX, &ptap->startsj_s, &ptap->startsj_r, &ptap->bufa, … in MatMatMultNumeric_MPIAIJ_MPIAIJ()
693 PetscCall(MatMPIAIJGetLocalMat(P, MAT_REUSE_MATRIX, &ptap->P_loc)); in MatMatMultNumeric_MPIAIJ_MPIAIJ()
697 p_loc = (Mat_SeqAIJ *)ptap->P_loc->data; in MatMatMultNumeric_MPIAIJ_MPIAIJ()
702 p_oth = (Mat_SeqAIJ *)ptap->P_oth->data; in MatMatMultNumeric_MPIAIJ_MPIAIJ()
718 api = ptap->api; in MatMatMultNumeric_MPIAIJ_MPIAIJ()
719 apj = ptap->apj; in MatMatMultNumeric_MPIAIJ_MPIAIJ()
803 MatProductCtx_APMPI *ptap; in MatMatMultSymbolic_MPIAIJ_MPIAIJ() local
821 PetscCall(PetscNew(&ptap)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
824 …etBrowsOfAoCols_MPIAIJ(A, P, MAT_INITIAL_MATRIX, &ptap->startsj_s, &ptap->startsj_r, &ptap->bufa, … in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
827 PetscCall(MatMPIAIJGetLocalMat(P, MAT_INITIAL_MATRIX, &ptap->P_loc)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
829 p_loc = (Mat_SeqAIJ *)ptap->P_loc->data; in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
833 p_oth = (Mat_SeqAIJ *)ptap->P_oth->data; in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
844 ptap->api = api; in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
916 PetscCall(PetscMalloc1(api[am], &ptap->apj)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
917 apj = ptap->apj; in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
918 PetscCall(PetscFreeSpaceContiguous(&free_space, ptap->apj)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
930 PetscCall(PetscCalloc1(apnz_max, &ptap->apa)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
942 C->product->data = ptap; in MatMatMultSymbolic_MPIAIJ_MPIAIJ()
1042 MatProductCtx_APMPI *ptap; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI() local
1069 PetscCall(PetscNew(&ptap)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1072 …etBrowsOfAoCols_MPIAIJ(A, P, MAT_INITIAL_MATRIX, &ptap->startsj_s, &ptap->startsj_r, &ptap->bufa, … in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1075 PetscCall(MatMPIAIJGetLocalMat(P, MAT_INITIAL_MATRIX, &ptap->P_loc)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1077 p_loc = (Mat_SeqAIJ *)ptap->P_loc->data; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1085 ptap->api = api; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1155 PetscCall(MatMatMultSymbolic_SeqAIJ_SeqAIJ(a->B, ptap->P_oth, fill, aopoth)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1163 PetscCall(PetscMalloc1(aopothi[am] + adpoi[am] + adpdi[am], &ptap->apj)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1173 apj = ptap->apj; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1197 PetscCall(PetscCalloc1(pN, &ptap->apa)); in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1217 C->product->data = ptap; in MatMatMultSymbolic_MPIAIJ_MPIAIJ_seqMPI()
1247 MatProductCtx_APMPI *ptap; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_matmatmult() local
1252 ptap = (MatProductCtx_APMPI *)C->product->data; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_matmatmult()
1253 …PetscCheck(ptap, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "PtAP cannot be comput… in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_matmatmult()
1254 …PetscCheck(ptap->Pt, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "PtA cannot be reu… in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_matmatmult()
1256 Pt = ptap->Pt; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_matmatmult()
1266 MatProductCtx_APMPI *ptap; in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable() local
1302 PetscCall(PetscNew(&ptap)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1305 PetscCall(MatTranspose(p->A, MAT_INITIAL_MATRIX, &ptap->Rd)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1306 PetscCall(MatTranspose(p->B, MAT_INITIAL_MATRIX, &ptap->Ro)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1309 PetscCall(MatMPIAIJGetLocalMat(A, MAT_INITIAL_MATRIX, &ptap->A_loc)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1313 PetscCall(MatSetOptionsPrefix(ptap->Ro, prefix)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1314 PetscCall(MatAppendOptionsPrefix(ptap->Ro, "inner_offdiag_")); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1315 PetscCall(MatCreate(PETSC_COMM_SELF, &ptap->C_oth)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1316 PetscCall(MatMatMultSymbolic_SeqAIJ_SeqAIJ(ptap->Ro, ptap->A_loc, fill, ptap->C_oth)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1331 c_oth = (Mat_SeqAIJ *)ptap->C_oth->data; in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1334 con = ptap->C_oth->rmap->n; in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1370 PetscCall(MatSetOptionsPrefix(ptap->Rd, prefix)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1371 PetscCall(MatAppendOptionsPrefix(ptap->Rd, "inner_diag_")); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1372 PetscCall(MatCreate(PETSC_COMM_SELF, &ptap->C_loc)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1373 PetscCall(MatMatMultSymbolic_SeqAIJ_SeqAIJ(ptap->Rd, ptap->A_loc, fill, ptap->C_loc)); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1374 c_loc = (Mat_SeqAIJ *)ptap->C_loc->data; in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1382 a_loc = (Mat_SeqAIJ *)ptap->A_loc->data; in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1386 MatRowMergeMax_SeqAIJ(a_loc, ptap->A_loc->rmap->N, ta); in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1516 C->product->data = ptap; in MatTransposeMatMultSymbolic_MPIAIJ_MPIAIJ_nonscalable()
1525 MatProductCtx_APMPI *ptap; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable() local
1533 ptap = (MatProductCtx_APMPI *)C->product->data; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1534 …PetscCheck(ptap, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "PtAP cannot be comput… in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1535 …PetscCheck(ptap->A_loc, PetscObjectComm((PetscObject)C), PETSC_ERR_ARG_WRONGSTATE, "PtA cannot be … in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1540 PetscCall(MatTransposeSetPrecursor(p->A, ptap->Rd)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1541 PetscCall(MatTranspose(p->A, MAT_REUSE_MATRIX, &ptap->Rd)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1542 PetscCall(MatTransposeSetPrecursor(p->B, ptap->Ro)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1543 PetscCall(MatTranspose(p->B, MAT_REUSE_MATRIX, &ptap->Ro)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1546 PetscCall(MatMPIAIJGetLocalMat(A, MAT_REUSE_MATRIX, &ptap->A_loc)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1549 A_loc = ptap->A_loc; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1550 PetscCall(ptap->C_loc->ops->matmultnumeric(ptap->Rd, A_loc, ptap->C_loc)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1551 PetscCall(ptap->C_oth->ops->matmultnumeric(ptap->Ro, A_loc, ptap->C_oth)); in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1552 C_loc = ptap->C_loc; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
1553 C_oth = ptap->C_oth; in MatTransposeMatMultNumeric_MPIAIJ_MPIAIJ_nonscalable()
2117 MatProductCtx_APMPI *ptap; in MatProductSymbolic_AtB_MPIAIJ_MPIAIJ() local
2121 ptap = (MatProductCtx_APMPI *)C->product->data; in MatProductSymbolic_AtB_MPIAIJ_MPIAIJ()
2122 if (ptap) { in MatProductSymbolic_AtB_MPIAIJ_MPIAIJ()
2123 ptap->Pt = At; in MatProductSymbolic_AtB_MPIAIJ_MPIAIJ()