Lines Matching full:if
19 #if PETSC_VERSION_LT(3, 24, 0)
41 if (registered) PetscFunctionReturn(PETSC_SUCCESS); in MatCeedRegisterLogEvents()
78 // Check if COO pattern set in MatCeedAssemblePointBlockDiagonalCOO()
83 if (ctx->mats_assembled_pbd[i] == mat_coo) index = i; in MatCeedAssemblePointBlockDiagonalCOO()
85 if (index == -1) { in MatCeedAssemblePointBlockDiagonalCOO()
91 // -- Assemble sparsity pattern if mat hasn't been assembled before in MatCeedAssemblePointBlockDiagonalCOO()
93 if (stage_amg_setup == -1) { in MatCeedAssemblePointBlockDiagonalCOO()
106 …if (!ctx->coo_values_pbd) PetscCallCeed(ctx->ceed, CeedVectorCreate(ctx->ceed, num_entries, &ctx->… in MatCeedAssemblePointBlockDiagonalCOO()
131 if (is_spd_known) PetscCall(MatSetOption(mat_coo, MAT_SPD, is_spd)); in MatCeedAssemblePointBlockDiagonalCOO()
155 if (use_ceed_pbd) { in MatCeedAssembleInnerBlockDiagonalMat()
156 // Check if COO pattern set in MatCeedAssembleInnerBlockDiagonalMat()
157 …if (!ctx->mat_assembled_pbd_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled_… in MatCeedAssembleInnerBlockDiagonalMat()
161 if (mat_inner) *mat_inner = ctx->mat_assembled_pbd_internal; in MatCeedAssembleInnerBlockDiagonalMat()
163 // Check if COO pattern set in MatCeedAssembleInnerBlockDiagonalMat()
164 …if (!ctx->mat_assembled_full_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled… in MatCeedAssembleInnerBlockDiagonalMat()
168 if (mat_inner) *mat_inner = ctx->mat_assembled_full_internal; in MatCeedAssembleInnerBlockDiagonalMat()
189 // Assemble inner mat if needed in MatGetVariableBlockDiagonal_Ceed()
211 // Assemble inner mat if needed in MatGetBlockDiagonal_Ceed()
236 // Check if COO pattern set in MatGetDiagonalBlock_Ceed()
237 …if (!ctx->mat_assembled_full_internal) PetscCall(MatCeedCreateMatCOO(mat_ceed, &ctx->mat_assembled… in MatGetDiagonalBlock_Ceed()
266 …if (!viewer) PetscCall(PetscViewerASCIIGetStdout(PetscObjectComm((PetscObject)mat_ceed), &viewer)); in MatView_Ceed()
270 if (size == 1 && format == PETSC_VIEWER_LOAD_BALANCE) PetscFunctionReturn(PETSC_SUCCESS); in MatView_Ceed()
273 if (rank != 0) PetscFunctionReturn(PETSC_SUCCESS); in MatView_Ceed()
295 if (is_detailed) PetscCallCeed(ctx->ceed, CeedOperatorView(ctx->op_mult, file)); in MatView_Ceed()
299 if (ctx->op_mult_transpose) { in MatView_Ceed()
305 if (is_detailed) PetscCallCeed(ctx->ceed, CeedOperatorView(ctx->op_mult_transpose, file)); in MatView_Ceed()
340 if (is_coo_mat_type_cl) { in MatSetFromOptions_Ceed()
346 …"Flag to allow the MatCeed to reuse existing COO preallocations, even if not set by this MatCeed",… in MatSetFromOptions_Ceed()
387 if (dm_y) { in MatCreateCeed()
406 if (op_mult_transpose) { in MatCreateCeed()
420 if (dm_x == dm_y) { in MatCreateCeed()
447 if (block_size > 1) PetscCall(MatSetBlockSize(*mat, block_size)); in MatCreateCeed()
448 … if (num_blocks) PetscCall(MatSetVariableBlockSizes(*mat, num_blocks, (PetscInt *)vblock_sizes)); in MatCreateCeed()
457 if (is_composite) { in MatCreateCeed()
471 if (num_bases > 1) { in MatCreateCeed()
475 if (num_comp != block_size) ctx->is_ceed_pbd_valid = PETSC_FALSE; in MatCreateCeed()
476 if (num_comp < max_vblock_size) ctx->is_ceed_vpbd_valid = PETSC_FALSE; in MatCreateCeed()
487 if (num_bases > 1) { in MatCreateCeed()
491 if (num_comp != block_size) ctx->is_ceed_pbd_valid = PETSC_FALSE; in MatCreateCeed()
492 if (num_comp < max_vblock_size) ctx->is_ceed_vpbd_valid = PETSC_FALSE; in MatCreateCeed()
522 …if (op_mult_transpose) PetscCall(MatShellSetOperation(*mat, MATOP_MULT_TRANSPOSE, (MatSetOpFn)MatM… in MatCreateCeed()
589 …if (ctx->op_mult_transpose) PetscCall(MatShellSetOperation(mat_other, MATOP_MULT_TRANSPOSE, (MatSe… in MatCeedCopy()
598 if (block_size > 1) PetscCall(MatSetBlockSize(mat_other, block_size)); in MatCeedCopy()
605 …if (num_blocks) PetscCall(MatSetVariableBlockSizes(mat_other, num_blocks, (PetscInt *)block_sizes)… in MatCeedCopy()
629 if (ctx->op_mult_transpose) { in MatCeedSetAssemblyDataUpdateNeeded()
632 if (update_needed) { in MatCeedSetAssemblyDataUpdateNeeded()
694 if (stage_amg_setup == -1) { in MatCeedSetPreallocationCOO()
701 if (!ctx->coo_reuse_preallocation || !coo_struct) { in MatCeedSetPreallocationCOO()
705 // -- Assemble sparsity pattern if mat hasn't been assembled before in MatCeedSetPreallocationCOO()
718 …if (!ctx->coo_values_full) PetscCallCeed(ctx->ceed, CeedVectorCreate(ctx->ceed, num_entries, &ctx-… in MatCeedSetPreallocationCOO()
745 // Set COO pattern if needed in MatCeedAssembleCOO()
750 if (ctx->mats_assembled_full[i] == mat_coo) index = i; in MatCeedAssembleCOO()
752 if (index == -1) PetscCall(MatCeedSetPreallocationCOO(mat_ceed, mat_coo)); in MatCeedAssembleCOO()
771 if (is_spd_known) PetscCall(MatSetOption(mat_coo, MAT_SPD, is_spd)); in MatCeedAssembleCOO()
801 if (label) { in MatCeedSetContextDouble()
805 if (set_value != value) { in MatCeedSetContextDouble()
810 if (ctx->op_mult_transpose) { in MatCeedSetContextDouble()
813 if (label) { in MatCeedSetContextDouble()
817 if (set_value != value) { in MatCeedSetContextDouble()
824 if (was_updated) { in MatCeedSetContextDouble()
852 if (!label && ctx->op_mult_transpose) { in MatCeedGetContextDouble()
856 if (label) { in MatCeedGetContextDouble()
933 @param[out] time Current time, or -1.0 if the boundary evaluator has no time field
987 if (shift_a) { in MatCeedSetShifts()
1010 if (ctx) { in MatCeedSetContext()
1035 if (user_ctx) PetscCall(PetscContainerGetPointer(user_ctx, (void **)ctx)); in MatCeedGetContext()
1060 …@brief Set the flag for whether the `MATCEED` should reuse a COO matrix, even if not created by th…
1062 …@note Only set this flag if you are certain that the COO layout is properly set on incoming matric…
1081 …@brief Gets the flag for whether the `MATCEED` should reuse a COO matrix, even if not created by t…
1114 // Check if same in MatCeedSetCOOMatType()
1121 if (len_old == len_new) PetscCall(PetscStrncmp(ctx->coo_mat_type, type, len_old, &is_same)); in MatCeedSetCOOMatType()
1122 if (is_same) PetscFunctionReturn(PETSC_SUCCESS); in MatCeedSetCOOMatType()
1126 if (ctx->mat_assembled_full_internal) { in MatCeedSetCOOMatType()
1128 if (ctx->mats_assembled_full[i] == ctx->mat_assembled_full_internal) { in MatCeedSetCOOMatType()
1138 if (ctx->mat_assembled_pbd_internal) { in MatCeedSetCOOMatType()
1140 if (ctx->mats_assembled_pbd[i] == ctx->mat_assembled_pbd_internal) { in MatCeedSetCOOMatType()
1191 if (X_loc) { in MatCeedSetLocalVectors()
1200 if (Y_loc_transpose) { in MatCeedSetLocalVectors()
1228 if (X_loc) { in MatCeedGetLocalVectors()
1232 if (Y_loc_transpose) { in MatCeedGetLocalVectors()
1252 if (X_loc) PetscCall(VecDestroy(X_loc)); in MatCeedRestoreLocalVectors()
1253 if (Y_loc_transpose) PetscCall(VecDestroy(Y_loc_transpose)); in MatCeedRestoreLocalVectors()
1273 if (op_mult) { in MatCeedGetCeedOperators()
1277 if (op_mult_transpose) { in MatCeedGetCeedOperators()
1300 if (op_mult) PetscCallCeed(ctx->ceed, CeedOperatorDestroy(op_mult)); in MatCeedRestoreCeedOperators()
1301 if (op_mult_transpose) PetscCallCeed(ctx->ceed, CeedOperatorDestroy(op_mult_transpose)); in MatCeedRestoreCeedOperators()
1321 if (log_event_mult) ctx->log_event_mult = log_event_mult; in MatCeedSetLogEvents()
1322 if (log_event_mult_transpose) ctx->log_event_mult_transpose = log_event_mult_transpose; in MatCeedSetLogEvents()
1342 if (log_event_mult) *log_event_mult = ctx->log_event_mult; in MatCeedGetLogEvents()
1343 if (log_event_mult_transpose) *log_event_mult_transpose = ctx->log_event_mult_transpose; in MatCeedGetLogEvents()
1363 if (log_event_mult) ctx->log_event_ceed_mult = log_event_mult; in MatCeedSetCeedOperatorLogEvents()
1364 if (log_event_mult_transpose) ctx->log_event_ceed_mult_transpose = log_event_mult_transpose; in MatCeedSetCeedOperatorLogEvents()
1384 if (log_event_mult) *log_event_mult = ctx->log_event_ceed_mult; in MatCeedGetCeedOperatorLogEvents()
1385 if (log_event_mult_transpose) *log_event_mult_transpose = ctx->log_event_ceed_mult_transpose; in MatCeedGetCeedOperatorLogEvents()
1431 if (X_loc) PetscCall(VecReferenceCopy(X_loc, &(*ctx)->X_loc)); in MatCeedContextCreate()
1432 if (Y_loc_transpose) PetscCall(VecReferenceCopy(Y_loc_transpose, &(*ctx)->Y_loc_transpose)); in MatCeedContextCreate()
1450 …if (op_mult_transpose) PetscCallCeed((*ctx)->ceed, CeedOperatorReferenceCopy(op_mult_transpose, &(… in MatCeedContextCreate()
1451 if (x_loc_len == -1) x_loc_len = 0; in MatCeedContextCreate()
1453 if (y_loc_len == -1) y_loc_len = 0; in MatCeedContextCreate()
1462 if (op_mult_transpose) { in MatCeedContextCreate()
1469 if (x_loc_len > 0 || y_loc_len > 0) { in MatCeedContextCreate()
1479 if (X_loc) { in MatCeedContextCreate()
1498 if (Y_loc_transpose) { in MatCeedContextCreate()
1524 Note: If `ctx_copy` is non-null, it is assumed to be a valid pointer to a `MatCeedContext`.
1552 if (!ctx || --(*ctx)->ref_count > 0) PetscFunctionReturn(PETSC_SUCCESS); in MatCeedContextDestroy()
1642 if (!ctx->X_loc) PetscCall(DMGetLocalVector(ctx->dm_x, &X_loc)); in MatMult_Ceed()
1658 if (PetscMemTypeDevice(ctx->mem_type)) PetscCall(PetscLogGpuFlops(ctx->flops_mult)); in MatMult_Ceed()
1672 if (!ctx->X_loc) PetscCall(DMRestoreLocalVector(ctx->dm_x, &X_loc)); in MatMult_Ceed()
1703 if (!ctx->Y_loc_transpose) PetscCall(DMGetLocalVector(ctx->dm_y, &Y_loc)); in MatMultTranspose_Ceed()
1719 if (PetscMemTypeDevice(ctx->mem_type)) PetscCall(PetscLogGpuFlops(ctx->flops_mult_transpose)); in MatMultTranspose_Ceed()
1733 if (!ctx->Y_loc_transpose) PetscCall(DMRestoreLocalVector(ctx->dm_y, &Y_loc)); in MatMultTranspose_Ceed()