Lines Matching refs:ab
2417 MatProductCtx_MatMultDense *ab = *(MatProductCtx_MatMultDense **)data; in MatProductCtxDestroy_MatMatMult_MPIDense_MPIDense() local
2420 PetscCall(MatDestroy(&ab->Ce)); in MatProductCtxDestroy_MatMatMult_MPIDense_MPIDense()
2421 PetscCall(MatDestroy(&ab->Ae)); in MatProductCtxDestroy_MatMatMult_MPIDense_MPIDense()
2422 PetscCall(MatDestroy(&ab->Be)); in MatProductCtxDestroy_MatMatMult_MPIDense_MPIDense()
2423 PetscCall(PetscFree(ab)); in MatProductCtxDestroy_MatMatMult_MPIDense_MPIDense()
2429 MatProductCtx_MatMultDense *ab; in MatMatMultNumeric_MPIDense_MPIDense() local
2436 ab = (MatProductCtx_MatMultDense *)C->product->data; in MatMatMultNumeric_MPIDense_MPIDense()
2437 if (ab->Ae && ab->Ce) { in MatMatMultNumeric_MPIDense_MPIDense()
2439 PetscCall(MatConvert_MPIDense_Elemental(A, MATELEMENTAL, MAT_REUSE_MATRIX, &ab->Ae)); in MatMatMultNumeric_MPIDense_MPIDense()
2440 PetscCall(MatConvert_MPIDense_Elemental(B, MATELEMENTAL, MAT_REUSE_MATRIX, &ab->Be)); in MatMatMultNumeric_MPIDense_MPIDense()
2441 PetscCall(MatMatMultNumeric_Elemental(ab->Ae, ab->Be, ab->Ce)); in MatMatMultNumeric_MPIDense_MPIDense()
2442 PetscCall(MatConvert(ab->Ce, MATMPIDENSE, MAT_REUSE_MATRIX, &C)); in MatMatMultNumeric_MPIDense_MPIDense()
2463 Mat be_local = ab->Be; in MatMatMultNumeric_MPIDense_MPIDense()
2500 if (be_local != ab->Be) PetscCall(MatCopy(be_local, ab->Be, DIFFERENT_NONZERO_PATTERN)); in MatMatMultNumeric_MPIDense_MPIDense()
2507 PetscCall(MatDenseGetArrayWrite(ab->Be, &write)); in MatMatMultNumeric_MPIDense_MPIDense()
2509 …PetscCall(PetscSFBcastBegin(mdn->Mvctx, MPIU_SCALAR, read + i * lda, write + i * ab->Be->rmap->n, … in MatMatMultNumeric_MPIDense_MPIDense()
2510 …PetscCall(PetscSFBcastEnd(mdn->Mvctx, MPIU_SCALAR, read + i * lda, write + i * ab->Be->rmap->n, MP… in MatMatMultNumeric_MPIDense_MPIDense()
2512 PetscCall(MatDenseRestoreArrayWrite(ab->Be, &write)); in MatMatMultNumeric_MPIDense_MPIDense()
2515 …PetscCall(MatMatMultNumeric_SeqDense_SeqDense(((Mat_MPIDense *)A->data)->A, ab->Be, ((Mat_MPIDense… in MatMatMultNumeric_MPIDense_MPIDense()
2524 MatProductCtx_MatMultDense *ab; in MatMatMultSymbolic_MPIDense_MPIDense() local
2543 PetscCall(PetscNew(&ab)); in MatMatMultSymbolic_MPIDense_MPIDense()
2549 PetscCall(MatCreate(PetscObjectComm((PetscObject)A), &ab->Ae)); in MatMatMultSymbolic_MPIDense_MPIDense()
2550 PetscCall(MatSetSizes(ab->Ae, PETSC_DECIDE, PETSC_DECIDE, A->rmap->N, A->cmap->N)); in MatMatMultSymbolic_MPIDense_MPIDense()
2551 PetscCall(MatSetType(ab->Ae, MATELEMENTAL)); in MatMatMultSymbolic_MPIDense_MPIDense()
2552 PetscCall(MatSetUp(ab->Ae)); in MatMatMultSymbolic_MPIDense_MPIDense()
2553 PetscCall(MatSetOption(ab->Ae, MAT_ROW_ORIENTED, PETSC_FALSE)); in MatMatMultSymbolic_MPIDense_MPIDense()
2555 PetscCall(MatCreate(PetscObjectComm((PetscObject)B), &ab->Be)); in MatMatMultSymbolic_MPIDense_MPIDense()
2556 PetscCall(MatSetSizes(ab->Be, PETSC_DECIDE, PETSC_DECIDE, B->rmap->N, B->cmap->N)); in MatMatMultSymbolic_MPIDense_MPIDense()
2557 PetscCall(MatSetType(ab->Be, MATELEMENTAL)); in MatMatMultSymbolic_MPIDense_MPIDense()
2558 PetscCall(MatSetUp(ab->Be)); in MatMatMultSymbolic_MPIDense_MPIDense()
2559 PetscCall(MatSetOption(ab->Be, MAT_ROW_ORIENTED, PETSC_FALSE)); in MatMatMultSymbolic_MPIDense_MPIDense()
2562 PetscCall(MatCreate(PetscObjectComm((PetscObject)C), &ab->Ce)); in MatMatMultSymbolic_MPIDense_MPIDense()
2563 PetscCall(MatMatMultSymbolic_Elemental(ab->Ae, ab->Be, fill, ab->Ce)); in MatMatMultSymbolic_MPIDense_MPIDense()
2569 ab->Ae = NULL; in MatMatMultSymbolic_MPIDense_MPIDense()
2570 PetscCall(MatCreateSeqDense(PETSC_COMM_SELF, A->cmap->N, B->cmap->N, NULL, &ab->Be)); in MatMatMultSymbolic_MPIDense_MPIDense()
2571 ab->Ce = NULL; in MatMatMultSymbolic_MPIDense_MPIDense()
2575 C->product->data = ab; in MatMatMultSymbolic_MPIDense_MPIDense()