Lines Matching refs:mat_ceed

64 static PetscErrorCode MatCeedAssemblePointBlockDiagonalCOO(Mat mat_ceed, Mat mat_coo) {  in MatCeedAssemblePointBlockDiagonalCOO()  argument
68 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedAssemblePointBlockDiagonalCOO()
89 PetscCall(PetscLogEventBegin(MATCEED_SETUP_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
90 PetscCall(PetscLogEventBegin(MATCEED_SETUP_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
92 PetscCall(PetscLogEventEnd(MATCEED_SETUP_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
101 PetscCall(PetscLogEventEnd(MATCEED_SETUP_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
107 PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
120 … PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
122 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
125 PetscCall(MatIsSPDKnown(mat_ceed, &is_spd_known, &is_spd)); in MatCeedAssemblePointBlockDiagonalCOO()
130 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
145 static PetscErrorCode MatCeedAssembleInnerBlockDiagonalMat(Mat mat_ceed, PetscBool use_ceed_pbd, Ma… in MatCeedAssembleInnerBlockDiagonalMat() argument
149 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedAssembleInnerBlockDiagonalMat()
152 …if (!ctx->mat_assembled_pbd_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled_… in MatCeedAssembleInnerBlockDiagonalMat()
155 PetscCall(MatCeedAssemblePointBlockDiagonalCOO(mat_ceed, ctx->mat_assembled_pbd_internal)); in MatCeedAssembleInnerBlockDiagonalMat()
159 …if (!ctx->mat_assembled_full_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled… in MatCeedAssembleInnerBlockDiagonalMat()
162 PetscCall(MatCeedAssembleCOO(mat_ceed, ctx->mat_assembled_full_internal)); in MatCeedAssembleInnerBlockDiagonalMat()
178 static PetscErrorCode MatGetVariableBlockDiagonal_Ceed(Mat mat_ceed, Mat *mat_vblock) { in MatGetVariableBlockDiagonal_Ceed() argument
182 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatGetVariableBlockDiagonal_Ceed()
185 PetscCall(MatCeedAssembleInnerBlockDiagonalMat(mat_ceed, ctx->is_ceed_vpbd_valid, mat_vblock)); in MatGetVariableBlockDiagonal_Ceed()
200 static PetscErrorCode MatGetBlockDiagonal_Ceed(Mat mat_ceed, Mat *mat_block) { in MatGetBlockDiagonal_Ceed() argument
204 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatGetBlockDiagonal_Ceed()
207 PetscCall(MatCeedAssembleInnerBlockDiagonalMat(mat_ceed, ctx->is_ceed_pbd_valid, mat_block)); in MatGetBlockDiagonal_Ceed()
225 static PetscErrorCode MatGetDiagonalBlock_Ceed(Mat mat_ceed, Mat *mat_block) { in MatGetDiagonalBlock_Ceed() argument
229 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatGetDiagonalBlock_Ceed()
232 …if (!ctx->mat_assembled_full_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled… in MatGetDiagonalBlock_Ceed()
235 PetscCall(MatCeedAssembleCOO(mat_ceed, ctx->mat_assembled_full_internal)); in MatGetDiagonalBlock_Ceed()
252 static PetscErrorCode MatView_Ceed(Mat mat_ceed, PetscViewer viewer) { in MatView_Ceed() argument
260 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatView_Ceed()
261 …if (!viewer) PetscCall(PetscViewerASCIIGetStdout(PetscObjectComm((PetscObject)mat_ceed), &viewer)); in MatView_Ceed()
264 PetscCallMPI(MPI_Comm_size(PetscObjectComm((PetscObject)mat_ceed), &size)); in MatView_Ceed()
267 PetscCallMPI(MPI_Comm_rank(PetscObjectComm((PetscObject)mat_ceed), &rank)); in MatView_Ceed()
491 PetscErrorCode MatCeedCopy(Mat mat_ceed, Mat mat_other) { in MatCeedCopy() argument
500 PetscCall(MatGetType(mat_ceed, &mat_type_ceed)); in MatCeedCopy()
513 PetscCall(MatGetSize(mat_ceed, &Y_g_ceed_size, &X_g_ceed_size)); in MatCeedCopy()
514 PetscCall(MatGetLocalSize(mat_ceed, &Y_l_ceed_size, &X_l_ceed_size)); in MatCeedCopy()
515 PetscCall(MatGetSize(mat_ceed, &Y_g_other_size, &X_g_other_size)); in MatCeedCopy()
516 PetscCall(MatGetLocalSize(mat_ceed, &Y_l_other_size, &X_l_other_size)); in MatCeedCopy()
532 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedCopy()
546 PetscCall(MatGetBlockSize(mat_ceed, &block_size)); in MatCeedCopy()
553 PetscCall(MatGetVariableBlockSizes(mat_ceed, &num_blocks, &block_sizes)); in MatCeedCopy()
572 PetscErrorCode MatCeedSetAssemblyDataUpdateNeeded(Mat mat_ceed, PetscBool update_needed) { in MatCeedSetAssemblyDataUpdateNeeded() argument
576 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedSetAssemblyDataUpdateNeeded()
582 PetscCall(MatAssemblyBegin(mat_ceed, MAT_FINAL_ASSEMBLY)); in MatCeedSetAssemblyDataUpdateNeeded()
583 PetscCall(MatAssemblyEnd(mat_ceed, MAT_FINAL_ASSEMBLY)); in MatCeedSetAssemblyDataUpdateNeeded()
598 PetscErrorCode MatCeedCreateMatCOO(Mat mat_ceed, Mat *mat_coo) { in MatCeedCreateMatCOO() argument
602 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedCreateMatCOO()
604 …PetscCheck(ctx->dm_x == ctx->dm_y, PetscObjectComm((PetscObject)mat_ceed), PETSC_ERR_SUP, "COO ass… in MatCeedCreateMatCOO()
615 PetscCall(MatGetOptionsPrefix(mat_ceed, &mat_ceed_prefix)); in MatCeedCreateMatCOO()
616 PetscOptionsBegin(PetscObjectComm((PetscObject)mat_ceed), mat_ceed_prefix, "", NULL); in MatCeedCreateMatCOO()
652 PetscErrorCode MatCeedSetPreallocationCOO(Mat mat_ceed, Mat mat_coo) { in MatCeedSetPreallocationCOO() argument
656 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedSetPreallocationCOO()
670 PetscCall(PetscLogEventBegin(MATCEED_SETUP_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
671 PetscCall(PetscLogEventBegin(MATCEED_SETUP_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
673 PetscCall(PetscLogEventEnd(MATCEED_SETUP_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
682 PetscCall(PetscLogEventEnd(MATCEED_SETUP_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
700 PetscErrorCode MatCeedAssembleCOO(Mat mat_ceed, Mat mat_coo) { in MatCeedAssembleCOO() argument
704 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedAssembleCOO()
713 if (index == -1) PetscCall(MatCeedSetPreallocationCOO(mat_ceed, mat_coo)); in MatCeedAssembleCOO()
717 PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()
730 PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()
732 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()
735 PetscCall(MatIsSPDKnown(mat_ceed, &is_spd_known, &is_spd)); in MatCeedAssembleCOO()
740 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()