Lines Matching refs:R

25 PetscErrorCode MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart(Mat A, Mat R, PetscReal fill, Mat C)  in MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart()  argument
38 PetscCall(MatTransposeSymbolic(R, &P)); in MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart()
42 PetscCall(MatSetBlockSizes(C, R->rmap->bs, R->rmap->bs)); in MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart()
94 …t_FMT ")/(m*ncolors)=%g\n", RARt_dense->rmap->n, RARt_dense->cmap->n, R->cmap->n, R->rmap->n, c->n… in MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart()
103 static PetscErrorCode MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense(Mat R, Mat A, Mat B, Mat RAB, Pet… in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense() argument
105 Mat_SeqAIJ *a = (Mat_SeqAIJ *)A->data, *r = (Mat_SeqAIJ *)R->data; in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense()
112 PetscInt *rj, rm = R->rmap->n, dm = RAB->rmap->n, dn = RAB->cmap->n; in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense()
118 …scCheck(am == R->cmap->n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Number columns in R %" PetscInt_FMT… in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense()
119R->rmap->n == RAB->rmap->n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Number rows in RAB %" PetscInt_FM… in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense()
133 PetscCall(MatMatMultNumeric_SeqAIJ_SeqDense(R, AB_den, RAB)); in MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense()
219 PetscErrorCode MatRARtNumeric_SeqAIJ_SeqAIJ_colorrart(Mat A, Mat R, Mat C) in MatRARtNumeric_SeqAIJ_SeqAIJ_colorrart() argument
233 PetscCall(MatTransColoringApplySpToDen(matcoloring, R, Rt)); in MatRARtNumeric_SeqAIJ_SeqAIJ_colorrart()
237 PetscCall(MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqDense(R, A, Rt, RARt, rart->work)); in MatRARtNumeric_SeqAIJ_SeqAIJ_colorrart()
244 PetscErrorCode MatRARtSymbolic_SeqAIJ_SeqAIJ_matmattransposemult(Mat A, Mat R, PetscReal fill, Mat … in MatRARtSymbolic_SeqAIJ_SeqAIJ_matmattransposemult() argument
254 PetscCall(MatProductCreate(A, R, NULL, &ARt)); in MatRARtSymbolic_SeqAIJ_SeqAIJ_matmattransposemult()
265 PetscCall(MatMatMultSymbolic_SeqAIJ_SeqAIJ(R, ARt, fill, C)); in MatRARtSymbolic_SeqAIJ_SeqAIJ_matmattransposemult()
280 PetscErrorCode MatRARtNumeric_SeqAIJ_SeqAIJ_matmattransposemult(Mat A, Mat R, Mat C) in MatRARtNumeric_SeqAIJ_SeqAIJ_matmattransposemult() argument
288 PetscCall(MatMatTransposeMultNumeric_SeqAIJ_SeqAIJ(A, R, rart->ARt)); /* dominate! */ in MatRARtNumeric_SeqAIJ_SeqAIJ_matmattransposemult()
289 PetscCall(MatMatMultNumeric_SeqAIJ_SeqAIJ(R, rart->ARt, C)); in MatRARtNumeric_SeqAIJ_SeqAIJ_matmattransposemult()
293 PetscErrorCode MatRARtSymbolic_SeqAIJ_SeqAIJ(Mat A, Mat R, PetscReal fill, Mat C) in MatRARtSymbolic_SeqAIJ_SeqAIJ() argument
301 PetscCall(MatTranspose(R, MAT_INITIAL_MATRIX, &Rt)); in MatRARtSymbolic_SeqAIJ_SeqAIJ()
302 PetscCall(MatMatMatMultSymbolic_SeqAIJ_SeqAIJ_SeqAIJ(R, A, Rt, fill, C)); in MatRARtSymbolic_SeqAIJ_SeqAIJ()
315 PetscErrorCode MatRARtNumeric_SeqAIJ_SeqAIJ(Mat A, Mat R, Mat C) in MatRARtNumeric_SeqAIJ_SeqAIJ() argument
323 PetscCall(MatTranspose(R, MAT_REUSE_MATRIX, &rart->Rt)); in MatRARtNumeric_SeqAIJ_SeqAIJ()
326 PetscCall(MatMatMatMultNumeric_SeqAIJ_SeqAIJ_SeqAIJ(R, A, rart->Rt, C)); in MatRARtNumeric_SeqAIJ_SeqAIJ()
331 PetscErrorCode MatRARt_SeqAIJ_SeqAIJ(Mat A, Mat R, MatReuse scall, PetscReal fill, Mat *C) in MatRARt_SeqAIJ_SeqAIJ() argument
342 PetscCall(PetscLogEventBegin(MAT_RARtSymbolic, A, R, 0, 0)); in MatRARt_SeqAIJ_SeqAIJ()
347 PetscCall(MatRARtSymbolic_SeqAIJ_SeqAIJ_matmattransposemult(A, R, fill, *C)); in MatRARt_SeqAIJ_SeqAIJ()
351 PetscCall(MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart(A, R, fill, *C)); in MatRARt_SeqAIJ_SeqAIJ()
355 PetscCall(MatRARtSymbolic_SeqAIJ_SeqAIJ(A, R, fill, *C)); in MatRARt_SeqAIJ_SeqAIJ()
358 PetscCall(PetscLogEventEnd(MAT_RARtSymbolic, A, R, 0, 0)); in MatRARt_SeqAIJ_SeqAIJ()
361 PetscCall(PetscLogEventBegin(MAT_RARtNumeric, A, R, 0, 0)); in MatRARt_SeqAIJ_SeqAIJ()
362 PetscCall(((*C)->ops->rartnumeric)(A, R, *C)); in MatRARt_SeqAIJ_SeqAIJ()
363 PetscCall(PetscLogEventEnd(MAT_RARtNumeric, A, R, 0, 0)); in MatRARt_SeqAIJ_SeqAIJ()
370 Mat A = product->A, R = product->B; in MatProductSymbolic_RARt_SeqAIJ_SeqAIJ() local
378 PetscCall(MatRARtSymbolic_SeqAIJ_SeqAIJ(A, R, fill, C)); in MatProductSymbolic_RARt_SeqAIJ_SeqAIJ()
384 PetscCall(MatRARtSymbolic_SeqAIJ_SeqAIJ_matmattransposemult(A, R, fill, C)); in MatProductSymbolic_RARt_SeqAIJ_SeqAIJ()
390 PetscCall(MatRARtSymbolic_SeqAIJ_SeqAIJ_colorrart(A, R, fill, C)); in MatProductSymbolic_RARt_SeqAIJ_SeqAIJ()