Lines Matching refs:mat_ceed
72 static PetscErrorCode MatCeedAssemblePointBlockDiagonalCOO(Mat mat_ceed, Mat mat_coo) { in MatCeedAssemblePointBlockDiagonalCOO() argument
76 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedAssemblePointBlockDiagonalCOO()
97 PetscCall(PetscLogEventBegin(MATCEED_SETUP_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
98 PetscCall(PetscLogEventBegin(MATCEED_SETUP_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
100 PetscCall(PetscLogEventEnd(MATCEED_SETUP_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
109 PetscCall(PetscLogEventEnd(MATCEED_SETUP_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
115 PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
125 … PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
127 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_PBDIAGONAL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
130 PetscCall(MatIsSPDKnown(mat_ceed, &is_spd_known, &is_spd)); in MatCeedAssemblePointBlockDiagonalCOO()
135 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_PBDIAGONAL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssemblePointBlockDiagonalCOO()
150 static PetscErrorCode MatCeedAssembleInnerBlockDiagonalMat(Mat mat_ceed, PetscBool use_ceed_pbd, Ma… in MatCeedAssembleInnerBlockDiagonalMat() argument
154 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedAssembleInnerBlockDiagonalMat()
157 …if (!ctx->mat_assembled_pbd_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled_… in MatCeedAssembleInnerBlockDiagonalMat()
160 PetscCall(MatCeedAssemblePointBlockDiagonalCOO(mat_ceed, ctx->mat_assembled_pbd_internal)); in MatCeedAssembleInnerBlockDiagonalMat()
164 …if (!ctx->mat_assembled_full_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled… in MatCeedAssembleInnerBlockDiagonalMat()
167 PetscCall(MatCeedAssembleCOO(mat_ceed, ctx->mat_assembled_full_internal)); in MatCeedAssembleInnerBlockDiagonalMat()
183 static PetscErrorCode MatGetVariableBlockDiagonal_Ceed(Mat mat_ceed, Mat *mat_vblock) { in MatGetVariableBlockDiagonal_Ceed() argument
187 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatGetVariableBlockDiagonal_Ceed()
190 PetscCall(MatCeedAssembleInnerBlockDiagonalMat(mat_ceed, ctx->is_ceed_vpbd_valid, mat_vblock)); in MatGetVariableBlockDiagonal_Ceed()
205 static PetscErrorCode MatGetBlockDiagonal_Ceed(Mat mat_ceed, Mat *mat_block) { in MatGetBlockDiagonal_Ceed() argument
209 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatGetBlockDiagonal_Ceed()
212 PetscCall(MatCeedAssembleInnerBlockDiagonalMat(mat_ceed, ctx->is_ceed_pbd_valid, mat_block)); in MatGetBlockDiagonal_Ceed()
230 static PetscErrorCode MatGetDiagonalBlock_Ceed(Mat mat_ceed, Mat *mat_block) { in MatGetDiagonalBlock_Ceed() argument
234 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatGetDiagonalBlock_Ceed()
237 …if (!ctx->mat_assembled_full_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled… in MatGetDiagonalBlock_Ceed()
240 PetscCall(MatCeedAssembleCOO(mat_ceed, ctx->mat_assembled_full_internal)); in MatGetDiagonalBlock_Ceed()
257 static PetscErrorCode MatView_Ceed(Mat mat_ceed, PetscViewer viewer) { in MatView_Ceed() argument
265 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatView_Ceed()
266 …if (!viewer) PetscCall(PetscViewerASCIIGetStdout(PetscObjectComm((PetscObject)mat_ceed), &viewer)); in MatView_Ceed()
269 PetscCallMPI(MPI_Comm_size(PetscObjectComm((PetscObject)mat_ceed), &size)); in MatView_Ceed()
272 PetscCallMPI(MPI_Comm_rank(PetscObjectComm((PetscObject)mat_ceed), &rank)); in MatView_Ceed()
328 static PetscErrorCode MatSetFromOptions_Ceed(Mat mat_ceed, PetscOptionItems PetscOptionsObject) { in MatSetFromOptions_Ceed() argument
334 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatSetFromOptions_Ceed()
542 PetscErrorCode MatCeedCopy(Mat mat_ceed, Mat mat_other) { in MatCeedCopy() argument
551 PetscCall(MatGetType(mat_ceed, &mat_type_ceed)); in MatCeedCopy()
564 PetscCall(MatGetSize(mat_ceed, &Y_g_ceed_size, &X_g_ceed_size)); in MatCeedCopy()
565 PetscCall(MatGetLocalSize(mat_ceed, &Y_l_ceed_size, &X_l_ceed_size)); in MatCeedCopy()
566 PetscCall(MatGetSize(mat_ceed, &Y_g_other_size, &X_g_other_size)); in MatCeedCopy()
567 PetscCall(MatGetLocalSize(mat_ceed, &Y_l_other_size, &X_l_other_size)); in MatCeedCopy()
583 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedCopy()
597 PetscCall(MatGetBlockSize(mat_ceed, &block_size)); in MatCeedCopy()
604 PetscCall(MatGetVariableBlockSizes(mat_ceed, &num_blocks, &block_sizes)); in MatCeedCopy()
623 PetscErrorCode MatCeedSetAssemblyDataUpdateNeeded(Mat mat_ceed, PetscBool update_needed) { in MatCeedSetAssemblyDataUpdateNeeded() argument
627 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedSetAssemblyDataUpdateNeeded()
633 PetscCall(MatAssemblyBegin(mat_ceed, MAT_FINAL_ASSEMBLY)); in MatCeedSetAssemblyDataUpdateNeeded()
634 PetscCall(MatAssemblyEnd(mat_ceed, MAT_FINAL_ASSEMBLY)); in MatCeedSetAssemblyDataUpdateNeeded()
649 PetscErrorCode MatCeedCreateMatCOO(Mat mat_ceed, Mat *mat_coo) { in MatCeedCreateMatCOO() argument
653 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedCreateMatCOO()
655 …PetscCheck(ctx->dm_x == ctx->dm_y, PetscObjectComm((PetscObject)mat_ceed), PETSC_ERR_SUP, "COO ass… in MatCeedCreateMatCOO()
682 PetscErrorCode MatCeedSetPreallocationCOO(Mat mat_ceed, Mat mat_coo) { in MatCeedSetPreallocationCOO() argument
686 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedSetPreallocationCOO()
698 PetscCall(PetscLogEventBegin(MATCEED_SETUP_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
706 PetscCall(PetscLogEventBegin(MATCEED_SETUP_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
708 PetscCall(PetscLogEventEnd(MATCEED_SETUP_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
721 PetscCall(PetscLogEventEnd(MATCEED_SETUP_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedSetPreallocationCOO()
739 PetscErrorCode MatCeedAssembleCOO(Mat mat_ceed, Mat mat_coo) { in MatCeedAssembleCOO() argument
743 PetscCall(MatShellGetContext(mat_ceed, &ctx)); in MatCeedAssembleCOO()
752 if (index == -1) PetscCall(MatCeedSetPreallocationCOO(mat_ceed, mat_coo)); in MatCeedAssembleCOO()
756 PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()
765 PetscCall(PetscLogEventBegin(MATCEED_ASSEMBLE_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()
767 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_FULL_CEEDOP, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()
770 PetscCall(MatIsSPDKnown(mat_ceed, &is_spd_known, &is_spd)); in MatCeedAssembleCOO()
776 PetscCall(PetscLogEventEnd(MATCEED_ASSEMBLE_FULL, mat_ceed, mat_coo, NULL, NULL)); in MatCeedAssembleCOO()