Lines Matching refs:D

17 …tscErrorCode MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ(Mat A, Mat B, Mat C, PetscReal fill, Mat D)  in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()  argument
24 MatCheckProduct(D, 5); in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
25 …PetscCheck(!D->product->data, PetscObjectComm((PetscObject)D), PETSC_ERR_PLIB, "Product data not e… in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
29 PetscCall(PetscStrallocpy(D->product->alg, &alg)); in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
30 PetscCall(MatProductSetAlgorithm(D, "sorted")); /* set alg for D = A*BC */ in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
31 PetscCall(MatMatMultSymbolic_SeqAIJ_SeqAIJ(A, BC, fill, D)); in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
32 PetscCall(MatProductSetAlgorithm(D, alg)); /* resume original algorithm */ in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
36 PetscCheck(!D->product->data, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Not yet coded"); in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
39 D->product->data = matmatmatmult; in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
40 D->product->destroy = MatProductCtxDestroy_SeqAIJ_MatMatMatMult; in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
42 D->ops->matmatmultnumeric = MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ; in MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ()
46 PetscErrorCode MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ(Mat A, Mat B, Mat C, Mat D) in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ() argument
52 MatCheckProduct(D, 4); in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ()
53 …PetscCheck(D->product->data, PetscObjectComm((PetscObject)D), PETSC_ERR_PLIB, "Product data empty"… in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ()
54 matmatmatmult = (MatProductCtx_MatMatMatMult *)D->product->data; in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ()
56 PetscCheck(BC, PetscObjectComm((PetscObject)D), PETSC_ERR_PLIB, "Missing BC mat"); in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ()
58 PetscCall((*D->ops->matmultnumeric)(A, BC, D)); in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ()