| /petsc/src/ksp/pc/impls/hypre/ |
| H A D | hypre.c | 155 PC_HYPRE *jac = (PC_HYPRE *)pc->data; in PCGetCoarseOperators_BoomerAMG() local 162 PetscCall(PetscStrcmp(jac->hypre_type, "boomeramg", &same)); in PCGetCoarseOperators_BoomerAMG() 164 num_levels = hypre_ParAMGDataNumLevels((hypre_ParAMGData *)jac->hsolver); in PCGetCoarseOperators_BoomerAMG() 166 A_array = hypre_ParAMGDataAArray((hypre_ParAMGData *)jac->hsolver); in PCGetCoarseOperators_BoomerAMG() 184 PC_HYPRE *jac = (PC_HYPRE *)pc->data; in PCGetInterpolations_BoomerAMG() local 191 PetscCall(PetscStrcmp(jac->hypre_type, "boomeramg", &same)); in PCGetInterpolations_BoomerAMG() 193 num_levels = hypre_ParAMGDataNumLevels((hypre_ParAMGData *)jac->hsolver); in PCGetInterpolations_BoomerAMG() 195 P_array = hypre_ParAMGDataPArray((hypre_ParAMGData *)jac->hsolver); in PCGetInterpolations_BoomerAMG() 211 PC_HYPRE *jac = (PC_HYPRE *)pc->data; in PCHYPREGetCFMarkers_BoomerAMG() local 219 PetscCall(PetscStrcmp(jac->hypre_type, "boomeramg", &same)); in PCHYPREGetCFMarkers_BoomerAMG() [all …]
|
| /petsc/src/ksp/pc/impls/svd/ |
| H A D | svd.c | 40 PC_SVD *jac = (PC_SVD *)pc->data; in PCSetUp_SVD() local 47 PetscCall(MatDestroy(&jac->A)); in PCSetUp_SVD() 53 PetscCall(MatConvert(redmat, MATSEQDENSE, MAT_INITIAL_MATRIX, &jac->A)); in PCSetUp_SVD() 56 PetscCall(MatConvert(pc->pmat, MATSEQDENSE, MAT_INITIAL_MATRIX, &jac->A)); in PCSetUp_SVD() 58 if (!jac->diag) { /* assume square matrices */ in PCSetUp_SVD() 59 PetscCall(MatCreateVecs(jac->A, &jac->diag, &jac->work)); in PCSetUp_SVD() 61 if (!jac->U) { in PCSetUp_SVD() 62 PetscCall(MatDuplicate(jac->A, MAT_DO_NOT_COPY_VALUES, &jac->U)); in PCSetUp_SVD() 63 PetscCall(MatDuplicate(jac->A, MAT_DO_NOT_COPY_VALUES, &jac->Vt)); in PCSetUp_SVD() 65 PetscCall(MatGetSize(jac->A, &n, NULL)); in PCSetUp_SVD() [all …]
|
| /petsc/src/ksp/pc/impls/galerkin/ |
| H A D | galerkin.c | 17 PC_Galerkin *jac = (PC_Galerkin *)pc->data; in PCApply_Galerkin() local 20 if (jac->R) { in PCApply_Galerkin() 21 PetscCall(MatRestrict(jac->R, x, jac->b)); in PCApply_Galerkin() 23 PetscCall(MatRestrict(jac->P, x, jac->b)); in PCApply_Galerkin() 25 PetscCall(KSPSolve(jac->ksp, jac->b, jac->x)); in PCApply_Galerkin() 26 PetscCall(KSPCheckSolve(jac->ksp, pc, jac->x)); in PCApply_Galerkin() 27 if (jac->P) { in PCApply_Galerkin() 28 PetscCall(MatInterpolate(jac->P, jac->x, y)); in PCApply_Galerkin() 30 PetscCall(MatInterpolate(jac->R, jac->x, y)); in PCApply_Galerkin() 37 PC_Galerkin *jac = (PC_Galerkin *)pc->data; in PCSetUp_Galerkin() local [all …]
|
| /petsc/src/snes/impls/composite/ |
| H A D | snescomposite.c | 49 SNES_Composite *jac = (SNES_Composite *)snes->data; in SNESCompositeApply_Multiplicative() local 50 SNES_CompositeLink next = jac->head; in SNESCompositeApply_Multiplicative() 60 jac->innerFailures++; in SNESCompositeApply_Multiplicative() 61 if (jac->innerFailures >= snes->maxFailures) { in SNESCompositeApply_Multiplicative() 79 jac->innerFailures++; in SNESCompositeApply_Multiplicative() 80 if (jac->innerFailures >= snes->maxFailures) { in SNESCompositeApply_Multiplicative() 113 SNES_Composite *jac = (SNES_Composite *)snes->data; in SNESCompositeApply_Additive() local 114 SNES_CompositeLink next = jac->head; in SNESCompositeApply_Additive() 120 if (!jac->Xorig) PetscCall(VecDuplicate(X, &jac->Xorig)); in SNESCompositeApply_Additive() 121 Xorig = jac->Xorig; in SNESCompositeApply_Additive() [all …]
|
| /petsc/src/ksp/pc/impls/bjacobi/ |
| H A D | bjacobi.c | 13 PC_BJacobi *jac = (PC_BJacobi *)pc->data; in PCSetUp_BJacobi() local 26 if (jac->n > 0 && jac->n < size) { in PCSetUp_BJacobi() 33 if (jac->n_local > 0 && jac->n < 0) { in PCSetUp_BJacobi() 34 …PetscCallMPI(MPIU_Allreduce(&jac->n_local, &jac->n, 1, MPIU_INT, MPI_SUM, PetscObjectComm((PetscOb… in PCSetUp_BJacobi() 35 if (jac->l_lens) { /* check that user set these correctly */ in PCSetUp_BJacobi() 37 for (i = 0; i < jac->n_local; i++) { in PCSetUp_BJacobi() 38 …PetscCheck(jac->l_lens[i] / bs * bs == jac->l_lens[i], PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Mat bl… in PCSetUp_BJacobi() 39 sum += jac->l_lens[i]; in PCSetUp_BJacobi() 43 PetscCall(PetscMalloc1(jac->n_local, &jac->l_lens)); in PCSetUp_BJacobi() 44 …for (i = 0; i < jac->n_local; i++) jac->l_lens[i] = bs * ((M / bs) / jac->n_local + (((M / bs) % j… in PCSetUp_BJacobi() [all …]
|
| /petsc/src/ksp/pc/impls/ksp/ |
| H A D | pcksp.c | 13 PC_KSP *jac = (PC_KSP *)pc->data; in PCKSPCreateKSP_KSP() local 17 PetscCall(KSPCreate(PetscObjectComm((PetscObject)pc), &jac->ksp)); in PCKSPCreateKSP_KSP() 18 PetscCall(KSPSetNestLevel(jac->ksp, pc->kspnestlevel)); in PCKSPCreateKSP_KSP() 19 PetscCall(KSPSetErrorIfNotConverged(jac->ksp, pc->erroriffailure)); in PCKSPCreateKSP_KSP() 20 PetscCall(PetscObjectIncrementTabLevel((PetscObject)jac->ksp, (PetscObject)pc, 1)); in PCKSPCreateKSP_KSP() 22 PetscCall(KSPSetOptionsPrefix(jac->ksp, prefix)); in PCKSPCreateKSP_KSP() 23 PetscCall(KSPAppendOptionsPrefix(jac->ksp, "ksp_")); in PCKSPCreateKSP_KSP() 26 PetscCall(KSPSetDM(jac->ksp, dm)); in PCKSPCreateKSP_KSP() 27 PetscCall(KSPSetDMActive(jac->ksp, KSP_DMACTIVE_ALL, PETSC_FALSE)); in PCKSPCreateKSP_KSP() 35 PC_KSP *jac = (PC_KSP *)pc->data; in PCApply_KSP() local [all …]
|
| /petsc/src/ksp/pc/impls/fieldsplit/ |
| H A D | fieldsplit.c | 91 static Mat FieldSplitSchurPre(PC_FieldSplit *jac) in FieldSplitSchurPre() argument 93 switch (jac->schurpre) { in FieldSplitSchurPre() 95 return jac->schur; in FieldSplitSchurPre() 97 return jac->schurp; in FieldSplitSchurPre() 99 return jac->pmat[1]; in FieldSplitSchurPre() 103 return jac->schur_user ? jac->schur_user : jac->pmat[1]; in FieldSplitSchurPre() 110 PC_FieldSplit *jac = (PC_FieldSplit *)pc->data; in PCView_FieldSplit() local 113 PC_FieldSplitLink ilink = jac->head; in PCView_FieldSplit() 119 if (jac->bs > 0) { in PCView_FieldSplit() 120 …cInt_FMT ", blocksize = %" PetscInt_FMT "\n", PCCompositeTypes[jac->type], jac->nsplits, jac->bs)); in PCView_FieldSplit() [all …]
|
| /petsc/src/ksp/pc/impls/composite/ |
| H A D | composite.c | 25 PC_Composite *jac = (PC_Composite *)pc->data; in PCApply_Composite_Multiplicative() local 26 PC_CompositeLink next = jac->head; in PCApply_Composite_Multiplicative() 37 next = jac->head; in PCApply_Composite_Multiplicative() 39 if (next->next && !jac->work2) { /* allocate second work vector */ in PCApply_Composite_Multiplicative() 40 PetscCall(VecDuplicate(jac->work1, &jac->work2)); in PCApply_Composite_Multiplicative() 46 PetscCall(MatMult(mat, y, jac->work1)); /* work1 <- A y */ in PCApply_Composite_Multiplicative() 47 PetscCall(VecWAXPY(jac->work2, -1.0, jac->work1, x)); /* work2 <- x - work1 */ in PCApply_Composite_Multiplicative() 48 PetscCall(PCApply(next->pc, jac->work2, jac->work1)); /* work1 <- C work2 */ in PCApply_Composite_Multiplicative() 49 …PetscCall(VecAXPY(y, 1.0, jac->work1)); /* y <- y + work1 = B x + C (x - A B x) = (B… in PCApply_Composite_Multiplicative() 51 if (jac->type == PC_COMPOSITE_SYMMETRIC_MULTIPLICATIVE) { in PCApply_Composite_Multiplicative() [all …]
|
| /petsc/src/ksp/pc/impls/sor/ |
| H A D | sor.c | 29 PC_SOR *jac = (PC_SOR *)pc->data; in PCApply_SOR() local 30 PetscInt flag = jac->sym | SOR_ZERO_INITIAL_GUESS; in PCApply_SOR() 33 PetscCall(MatSOR(pc->pmat, x, jac->omega, (MatSORType)flag, jac->fshift, jac->its, jac->lits, y)); in PCApply_SOR() 40 PC_SOR *jac = (PC_SOR *)pc->data; in PCApplyTranspose_SOR() local 41 PetscInt flag = jac->sym | SOR_ZERO_INITIAL_GUESS; in PCApplyTranspose_SOR() 46 …PetscCheck(set && sym && (jac->sym == SOR_SYMMETRIC_SWEEP || jac->sym == SOR_LOCAL_SYMMETRIC_SWEEP… in PCApplyTranspose_SOR() 47 PetscCall(MatSOR(pc->pmat, x, jac->omega, (MatSORType)flag, jac->fshift, jac->its, jac->lits, y)); in PCApplyTranspose_SOR() 54 PC_SOR *jac = (PC_SOR *)pc->data; in PCApplyRichardson_SOR() local 55 MatSORType stype = jac->sym; in PCApplyRichardson_SOR() 59 PetscCall(MatSOR(pc->pmat, b, jac->omega, stype, jac->fshift, its * jac->its, jac->lits, y)); in PCApplyRichardson_SOR() [all …]
|
| /petsc/src/ksp/pc/impls/bjacobi/bjkokkos/ |
| H A D | bjkokkos.kokkos.cxx | 20 PC_PCBJKOKKOS *jac = (PC_PCBJKOKKOS *)pc->data; in PCBJKOKKOSCreateKSP_BJKOKKOS() local 24 PetscCall(KSPCreate(PetscObjectComm((PetscObject)pc), &jac->ksp)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 25 PetscCall(KSPSetNestLevel(jac->ksp, pc->kspnestlevel)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 26 PetscCall(KSPSetErrorIfNotConverged(jac->ksp, pc->erroriffailure)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 27 PetscCall(PetscObjectIncrementTabLevel((PetscObject)jac->ksp, (PetscObject)pc, 1)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 29 PetscCall(KSPSetOptionsPrefix(jac->ksp, prefix)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 30 PetscCall(KSPAppendOptionsPrefix(jac->ksp, "pc_bjkokkos_")); in PCBJKOKKOSCreateKSP_BJKOKKOS() 33 PetscCall(KSPSetDM(jac->ksp, dm)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 34 PetscCall(KSPSetDMActive(jac->ksp, KSP_DMACTIVE_ALL, PETSC_FALSE)); in PCBJKOKKOSCreateKSP_BJKOKKOS() 36 jac->reason = PETSC_FALSE; in PCBJKOKKOSCreateKSP_BJKOKKOS() [all …]
|
| H A D | bjkokkoskernels.kokkos.cxx | 157 PC_PCBJKOKKOS *jac = (PC_PCBJKOKKOS *)pc->data; in PCApply_BJKOKKOSKERNELS() local 159 const PetscInt maxit = jac->ksp->max_it, nBlk = jac->nBlocks; in PCApply_BJKOKKOSKERNELS() 161 int Nsolves_team = jac->nsolves_team, fill_idx = 0; in PCApply_BJKOKKOSKERNELS() 162 int Nloc = jac->const_block_size; // same grids in PCApply_BJKOKKOSKERNELS() 164 PetscReal rtol = jac->ksp->rtol; in PCApply_BJKOKKOSKERNELS() 165 const PetscScalar *glb_idiag = jac->d_idiag_k->data(); in PCApply_BJKOKKOSKERNELS() 166 const PetscInt *d_bid_eqOffset = jac->d_bid_eqOffset_k->data(); in PCApply_BJKOKKOSKERNELS() 167 const PetscInt *d_isicol = jac->d_isicol_k->data(), *d_isrow = jac->d_isrow_k->data(); in PCApply_BJKOKKOSKERNELS() 171 …PetscCheck(jac->const_block_size, PetscObjectComm((PetscObject)pc), PETSC_ERR_ARG_WRONG, "Kokkos (… in PCApply_BJKOKKOSKERNELS() 178 if (!jac->rowOffsets) { in PCApply_BJKOKKOSKERNELS() [all …]
|
| /petsc/src/ksp/pc/impls/jacobi/ |
| H A D | jacobi.c | 174 PC_Jacobi *jac = (PC_Jacobi *)pc->data; in PCSetUp_Jacobi() local 200 diag = jac->diag; in PCSetUp_Jacobi() 201 diagsqrt = jac->diagsqrt; in PCSetUp_Jacobi() 207 switch (jac->type) { in PCSetUp_Jacobi() 218 if (jac->fixdiag && (!isset || !isspd)) { in PCSetUp_Jacobi() 235 …PetscCheck(!jac->useabs || !negflag, PetscObjectComm((PetscObject)pc), PETSC_ERR_ARG_INCOMP, "Jaco… in PCSetUp_Jacobi() 238 if (jac->scale != 1.0) { in PCSetUp_Jacobi() 243 PetscCall(VecScale(diag, jac->scale)); // scale off-diag in PCSetUp_Jacobi() 253 if (jac->useabs) PetscCall(VecAbs(diag)); in PCSetUp_Jacobi() 255 if (jac->fixdiag && (!isset || !isspd)) { in PCSetUp_Jacobi() [all …]
|
| /petsc/src/ksp/ksp/tests/ |
| H A D | ex10.c | 402 PetscReal det_jac, jac[3][3], inv_jac[3][3]; in paulintegrate20() local 417 jac[i][j] = 0; in paulintegrate20() 418 for (k = 0; k < 20; k++) jac[i][j] += part_N[i][k][step] * xyz[k][j]; in paulintegrate20() 421 …jac[0][0] * (jac[1][1] * jac[2][2] - jac[1][2] * jac[2][1]) + jac[0][1] * (jac[1][2] * jac[2][0] -… in paulintegrate20() 422 inv_jac[0][0] = (jac[1][1] * jac[2][2] - jac[1][2] * jac[2][1]) / det_jac; in paulintegrate20() 423 inv_jac[0][1] = (jac[0][2] * jac[2][1] - jac[0][1] * jac[2][2]) / det_jac; in paulintegrate20() 424 inv_jac[0][2] = (jac[0][1] * jac[1][2] - jac[1][1] * jac[0][2]) / det_jac; in paulintegrate20() 425 inv_jac[1][0] = (jac[1][2] * jac[2][0] - jac[1][0] * jac[2][2]) / det_jac; in paulintegrate20() 426 inv_jac[1][1] = (jac[0][0] * jac[2][2] - jac[2][0] * jac[0][2]) / det_jac; in paulintegrate20() 427 inv_jac[1][2] = (jac[0][2] * jac[1][0] - jac[0][0] * jac[1][2]) / det_jac; in paulintegrate20() [all …]
|
| /petsc/src/ksp/pc/impls/pbjacobi/kokkos/ |
| H A D | pbjacobi_kok.kokkos.cxx | 33 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCApplyOrTranspose_PBJacobi_Kokkos() local 34 PC_PBJacobi_Kokkos *pckok = static_cast<PC_PBJacobi_Kokkos *>(jac->spptr); in PCApplyOrTranspose_PBJacobi_Kokkos() 38 const PetscInt bs = jac->bs, mbs = jac->mbs, bs2 = bs * bs; in PCApplyOrTranspose_PBJacobi_Kokkos() 74 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCDestroy_PBJacobi_Kokkos() local 77 PetscCallCXX(delete static_cast<PC_PBJacobi_Kokkos *>(jac->spptr)); in PCDestroy_PBJacobi_Kokkos() 84 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCSetUp_PBJacobi_Kokkos() local 89 len = jac->bs * jac->bs * jac->mbs; in PCSetUp_PBJacobi_Kokkos() 90 if (!jac->spptr) { in PCSetUp_PBJacobi_Kokkos() 91 PetscCallCXX(jac->spptr = new PC_PBJacobi_Kokkos(len, const_cast<PetscScalar *>(jac->diag))); in PCSetUp_PBJacobi_Kokkos() 93 PC_PBJacobi_Kokkos *pckok = static_cast<PC_PBJacobi_Kokkos *>(jac->spptr); in PCSetUp_PBJacobi_Kokkos() [all …]
|
| /petsc/src/ksp/pc/impls/kaczmarz/ |
| H A D | kaczmarz.c | 17 PC_Kaczmarz *jac = (PC_Kaczmarz *)pc->data; in PCApply_Kaczmarz() local 24 PetscReal lambda = jac->lambda; in PCApply_Kaczmarz() 48 if (jac->symmetric) { in PCApply_Kaczmarz() 72 PC_Kaczmarz *jac = (PC_Kaczmarz *)pc->data; in PCSetFromOptions_Kaczmarz() local 76 …nsReal("-pc_kaczmarz_lambda", "relaxation factor (0 < lambda)", "", jac->lambda, &jac->lambda, NUL… in PCSetFromOptions_Kaczmarz() 77 …c_kaczmarz_symmetric", "apply row projections symmetrically", "", jac->symmetric, &jac->symmetric,… in PCSetFromOptions_Kaczmarz() 84 PC_Kaczmarz *jac = (PC_Kaczmarz *)pc->data; in PCView_Kaczmarz() local 89 if (isascii) PetscCall(PetscViewerASCIIPrintf(viewer, " lambda = %g\n", (double)jac->lambda)); in PCView_Kaczmarz() 110 PC_Kaczmarz *jac; in PCCreate_Kaczmarz() local 113 PetscCall(PetscNew(&jac)); in PCCreate_Kaczmarz() [all …]
|
| /petsc/src/ksp/pc/impls/pbjacobi/cuda/ |
| H A D | pbjacobi_cuda.cu | 38 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCApplyOrTranspose_PBJacobi_CUDA() local 39 const PetscScalar *A = (const PetscScalar *)jac->spptr; in PCApplyOrTranspose_PBJacobi_CUDA() 40 const PetscInt bs = jac->bs, mbs = jac->mbs; in PCApplyOrTranspose_PBJacobi_CUDA() 79 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCDestroy_PBJacobi_CUDA() local 82 PetscCallCUDA(cudaFree(jac->spptr)); in PCDestroy_PBJacobi_CUDA() 89 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCSetUp_PBJacobi_CUDA() local 94 size = sizeof(PetscScalar) * jac->bs * jac->bs * jac->mbs; in PCSetUp_PBJacobi_CUDA() 97 if (!jac->spptr) PetscCallCUDAVoid(cudaMalloc(&jac->spptr, size)); in PCSetUp_PBJacobi_CUDA() 98 PetscCallCUDAVoid(cudaMemcpy(jac->spptr, jac->diag, size, cudaMemcpyHostToDevice)); in PCSetUp_PBJacobi_CUDA()
|
| /petsc/src/snes/impls/multiblock/ |
| H A D | multiblock.c | 230 ilink = jac->head; in SNESSetUp_Multiblock() 231 if (!jac->pmat) { in SNESSetUp_Multiblock() 232 PetscCall(PetscMalloc1(nsplit,&jac->pmat)); in SNESSetUp_Multiblock() 234 PetscCall(MatCreateSubMatrix(pc->pmat,ilink->is,ilink->is,MAT_INITIAL_MATRIX,&jac->pmat[i])); in SNESSetUp_Multiblock() 239 PetscCall(MatCreateSubMatrix(pc->pmat,ilink->is,ilink->is,MAT_REUSE_MATRIX,&jac->pmat[i])); in SNESSetUp_Multiblock() 243 if (jac->realdiagonal) { in SNESSetUp_Multiblock() 244 ilink = jac->head; in SNESSetUp_Multiblock() 245 if (!jac->mat) { in SNESSetUp_Multiblock() 246 PetscCall(PetscMalloc1(nsplit,&jac->mat)); in SNESSetUp_Multiblock() 248 PetscCall(MatCreateSubMatrix(pc->mat,ilink->is,ilink->is,MAT_INITIAL_MATRIX,&jac->mat[i])); in SNESSetUp_Multiblock() [all …]
|
| /petsc/src/ksp/pc/impls/vpbjacobi/kokkos/ |
| H A D | vpbjacobi_kok.kokkos.cxx | 73 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCApplyOrTranspose_VPBJacobi_Kokkos() local 74 PC_VPBJacobi_Kokkos *pckok = static_cast<PC_VPBJacobi_Kokkos *>(jac->spptr); in PCApplyOrTranspose_VPBJacobi_Kokkos() 91 …label, Kokkos::TeamPolicy<>(PetscGetKokkosExecutionSpace(), jac->nblocks, Kokkos::AUTO()), KOKKOS_… in PCApplyOrTranspose_VPBJacobi_Kokkos() 136 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCDestroy_VPBJacobi_Kokkos() local 139 PetscCallCXX(delete static_cast<PC_VPBJacobi_Kokkos *>(jac->spptr)); in PCDestroy_VPBJacobi_Kokkos() 146 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCSetUp_VPBJacobi_Kokkos() local 147 PC_VPBJacobi_Kokkos *pckok = static_cast<PC_VPBJacobi_Kokkos *>(jac->spptr); in PCSetUp_VPBJacobi_Kokkos() 158 if (!jac->diag) { in PCSetUp_VPBJacobi_Kokkos() 165 jac->nblocks = nblocks; in PCSetUp_VPBJacobi_Kokkos() 166 jac->min_bs = min_bs; in PCSetUp_VPBJacobi_Kokkos() [all …]
|
| /petsc/src/ksp/ksp/tutorials/ |
| H A D | ex67.c | 167 PetscErrorCode FormMatrix(Mat jac, PetscCtx ctx) in FormMatrix() argument 183 PetscCall(MatZeroEntries(jac)); in FormMatrix() 194 PetscCall(MatSetValuesStencil(jac, 1, &row, 3, cols, A, ADD_VALUES)); in FormMatrix() 201 PetscCall(MatSetOption(jac, MAT_NEW_NONZERO_LOCATION_ERR, PETSC_FALSE)); in FormMatrix() 209 PetscCall(MatSetValuesStencil(jac, 1, &row, M, acols, avals, ADD_VALUES)); in FormMatrix() 218 PetscCall(MatSetValuesStencil(jac, 1, &row, 3, cols, A, ADD_VALUES)); in FormMatrix() 226 PetscCall(MatSetValuesStencil(jac, 1, &row, 3, cols, A, ADD_VALUES)); in FormMatrix() 234 PetscCall(MatSetValuesStencil(jac, 1, &row, 3, cols, A, ADD_VALUES)); in FormMatrix() 236 PetscCall(MatAssemblyBegin(jac, MAT_FINAL_ASSEMBLY)); in FormMatrix() 237 PetscCall(MatAssemblyEnd(jac, MAT_FINAL_ASSEMBLY)); in FormMatrix()
|
| H A D | ex29.c | 153 PetscErrorCode ComputeMatrix(KSP ksp, Mat J, Mat jac, PetscCtx ctx) in ComputeMatrix() argument 181 PetscCall(MatSetValuesStencil(jac, 1, &row, 1, &row, v, INSERT_VALUES)); in ComputeMatrix() 216 PetscCall(MatSetValuesStencil(jac, 1, &row, num, col, v, INSERT_VALUES)); in ComputeMatrix() 234 PetscCall(MatSetValuesStencil(jac, 1, &row, 5, col, v, INSERT_VALUES)); in ComputeMatrix() 238 PetscCall(MatAssemblyBegin(jac, MAT_FINAL_ASSEMBLY)); in ComputeMatrix() 239 PetscCall(MatAssemblyEnd(jac, MAT_FINAL_ASSEMBLY)); in ComputeMatrix() 240 PetscCall(MatViewFromOptions(jac, NULL, "-view_mat")); in ComputeMatrix() 248 PetscCall(MatGetType(jac, &jtype)); in ComputeMatrix() 249 PetscCall(MatConvert(jac, MATIS, MAT_INITIAL_MATRIX, &J2)); in ComputeMatrix() 252 PetscCall(MatGetOperation(jac, MATOP_VIEW, &f)); in ComputeMatrix() [all …]
|
| /petsc/src/ksp/pc/impls/vpbjacobi/ |
| H A D | vpbjacobi.c | 6 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCApply_VPBJacobi() local 8 const MatScalar *diag = jac->diag; in PCApply_VPBJacobi() 108 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCApplyTranspose_VPBJacobi() local 110 const MatScalar *diag = jac->diag; in PCApplyTranspose_VPBJacobi() 210 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCSetUp_VPBJacobi_Host() local 221 if (!jac->diag) { in PCSetUp_VPBJacobi_Host() 228 PetscCall(PetscMalloc1(nsize, &jac->diag)); in PCSetUp_VPBJacobi_Host() 229 jac->nblocks = nblocks; in PCSetUp_VPBJacobi_Host() 230 jac->min_bs = min_bs; in PCSetUp_VPBJacobi_Host() 231 jac->max_bs = max_bs; in PCSetUp_VPBJacobi_Host() [all …]
|
| /petsc/src/snes/tutorials/ |
| H A D | ex1.c | 201 PetscErrorCode FormJacobian1(SNES snes, Vec x, Mat jac, Mat B, void *dummy) in FormJacobian1() argument 234 if (jac != B) { in FormJacobian1() 235 PetscCall(MatAssemblyBegin(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian1() 236 PetscCall(MatAssemblyEnd(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian1() 272 PetscErrorCode FormJacobian2(SNES snes, Vec x, Mat jac, Mat B, void *dummy) in FormJacobian2() argument 305 if (jac != B) { in FormJacobian2() 306 PetscCall(MatAssemblyBegin(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian2() 307 PetscCall(MatAssemblyEnd(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian2()
|
| /petsc/src/ksp/pc/impls/pbjacobi/ |
| H A D | pbjacobi.c | 6 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCApply_PBJacobi() local 8 const PetscInt m = jac->mbs; in PCApply_PBJacobi() 9 const PetscInt bs = jac->bs; in PCApply_PBJacobi() 10 const MatScalar *diag = jac->diag; in PCApply_PBJacobi() 128 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCApplyTranspose_PBJacobi() local 130 const PetscInt m = jac->mbs; in PCApplyTranspose_PBJacobi() 131 const PetscInt bs = jac->bs; in PCApplyTranspose_PBJacobi() 132 const MatScalar *diag = jac->diag; in PCApplyTranspose_PBJacobi() 250 PC_PBJacobi *jac = (PC_PBJacobi *)pc->data; in PCSetUp_PBJacobi_Host() local 256 PetscCall(MatInvertBlockDiagonal(A, &jac->diag)); in PCSetUp_PBJacobi_Host() [all …]
|
| /petsc/src/ksp/pc/impls/vpbjacobi/cuda/ |
| H A D | vpbjacobi_cuda.cu | 106 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCApplyOrTranspose_VPBJacobi_CUDA() local 107 PC_VPBJacobi_CUDA *pcuda = static_cast<PC_VPBJacobi_CUDA *>(jac->spptr); in PCApplyOrTranspose_VPBJacobi_CUDA() 152 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCDestroy_VPBJacobi_CUDA() local 155 PetscCallCXX(delete static_cast<PC_VPBJacobi_CUDA *>(jac->spptr)); in PCDestroy_VPBJacobi_CUDA() 162 PC_VPBJacobi *jac = (PC_VPBJacobi *)pc->data; in PCSetUp_VPBJacobi_CUDA() local 163 PC_VPBJacobi_CUDA *pcuda = static_cast<PC_VPBJacobi_CUDA *>(jac->spptr); in PCSetUp_VPBJacobi_CUDA() 180 PetscCallCXX(jac->spptr = new PC_VPBJacobi_CUDA(n, nblocks, nsize, bsizes, jac->diag)); in PCSetUp_VPBJacobi_CUDA() 182 PetscCall(pcuda->UpdateOffsetsOnDevice(bsizes, jac->diag)); in PCSetUp_VPBJacobi_CUDA()
|
| /petsc/src/snes/tests/ |
| H A D | ex17.c | 223 static PetscErrorCode FormJacobian1(SNES snes, Vec x, Mat jac, Mat B, void *dummy) in FormJacobian1() argument 244 PetscCall(MatSetValues(jac, 2, idx, 2, idx, A, INSERT_VALUES)); in FormJacobian1() 254 PetscCall(MatAssemblyBegin(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian1() 255 PetscCall(MatAssemblyEnd(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian1() 289 static PetscErrorCode FormJacobian2(SNES snes, Vec x, Mat jac, Mat B, void *dummy) in FormJacobian2() argument 310 PetscCall(MatSetValues(jac, 2, idx, 2, idx, A, INSERT_VALUES)); in FormJacobian2() 320 PetscCall(MatAssemblyBegin(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian2() 321 PetscCall(MatAssemblyEnd(jac, MAT_FINAL_ASSEMBLY)); in FormJacobian2() 544 static PetscErrorCode FormJacobian1_block(SNES snes, Vec x, Mat jac, Mat B, void *dummy) in FormJacobian1_block() argument 565 PetscCall(MatNestGetSubMats(jac, NULL, NULL, &mats)); in FormJacobian1_block() [all …]
|