Lines Matching refs:C

24 …TSC_INTERN PetscErrorCode MatTMatTMultSymbolic_SeqAIJ_SeqDense(Mat A, Mat B, PetscReal fill, Mat C)  in MatTMatTMultSymbolic_SeqAIJ_SeqDense()  argument
31 MatCheckProduct(C, 4); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
32 PetscCheck(!C->product->data, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Extra product struct not empty"); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
33 …(C->product->type == MATPRODUCT_ABt || C->product->type == MATPRODUCT_AtB, PETSC_COMM_SELF, PETSC_… in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
36 if (C->product->type == MATPRODUCT_AtB) { in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
37 PetscCall(MatSetSizes(C, A->cmap->n, B->cmap->N, A->cmap->n, B->cmap->N)); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
40 PetscCall(MatSetSizes(C, A->rmap->n, B->rmap->N, A->rmap->n, B->rmap->N)); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
43 PetscCall(PetscObjectTypeCompareAny((PetscObject)C, &cisdense, MATSEQDENSE, MATSEQDENSECUDA, "")); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
44 if (!cisdense) PetscCall(MatSetType(C, ((PetscObject)B)->type_name)); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
45 PetscCall(MatSetUp(C)); in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
51 C->product->data = atb; in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
52 C->product->destroy = MatProductCtxDestroy_SeqDense_MatTransMatMult; in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
54 if (C->product->type == MATPRODUCT_AtB) { in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
55 C->ops->transposematmultnumeric = MatTMatTMultNumeric_SeqAIJ_SeqDense; in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
57 C->ops->mattransposemultnumeric = MatTMatTMultNumeric_SeqAIJ_SeqDense; in MatTMatTMultSymbolic_SeqAIJ_SeqDense()
62 static PetscErrorCode MatTMatTMultNumeric_SeqAIJ_SeqDense(Mat A, Mat B, Mat C) in MatTMatTMultNumeric_SeqAIJ_SeqDense() argument
65 PetscInt mdof = C->cmap->N; in MatTMatTMultNumeric_SeqAIJ_SeqDense()
72 MatCheckProduct(C, 3); in MatTMatTMultNumeric_SeqAIJ_SeqDense()
73 …(C->product->type == MATPRODUCT_ABt || C->product->type == MATPRODUCT_AtB, PETSC_COMM_SELF, PETSC_… in MatTMatTMultNumeric_SeqAIJ_SeqDense()
74 atb = (MatProductCtx_MatTransMatMult *)C->product->data; in MatTMatTMultNumeric_SeqAIJ_SeqDense()
81 PetscCall(MatDenseGetArrayWrite(C, &Carray)); in MatTMatTMultNumeric_SeqAIJ_SeqDense()
82 PetscCall(MatDenseGetLDA(C, &clda)); in MatTMatTMultNumeric_SeqAIJ_SeqDense()
83 …if (C->product->type == MATPRODUCT_AtB) { /* transpose local array of B, then copy it to vector bt… in MatTMatTMultNumeric_SeqAIJ_SeqDense()
128 PetscCall(MatDenseRestoreArray(C, &Carray)); in MatTMatTMultNumeric_SeqAIJ_SeqDense()