Home
last modified time | relevance | path

Searched refs:ksp (Results 1 – 25 of 483) sorted by relevance

12345678910>>...20

/petsc/src/ksp/ksp/interface/
H A Ditfunc.c55 PetscErrorCode KSPComputeExtremeSingularValues(KSP ksp, PetscReal *emax, PetscReal *emin) in KSPComputeExtremeSingularValues() argument
58 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPComputeExtremeSingularValues()
61 …PetscCheck(ksp->calc_sings, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_WRONGSTATE, "Singular… in KSPComputeExtremeSingularValues()
63 …if (ksp->ops->computeextremesingularvalues) PetscUseTypeMethod(ksp, computeextremesingularvalues, … in KSPComputeExtremeSingularValues()
114 PetscErrorCode KSPComputeEigenvalues(KSP ksp, PetscInt n, PetscReal r[], PetscReal c[], PetscInt *n… in KSPComputeEigenvalues() argument
117 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPComputeEigenvalues()
120 …PetscCheck(n >= 0, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OUTOFRANGE, "Requested < 0 Eig… in KSPComputeEigenvalues()
122 …PetscCheck(ksp->calc_sings, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_WRONGSTATE, "Eigenval… in KSPComputeEigenvalues()
124 if (n && ksp->ops->computeeigenvalues) PetscUseTypeMethod(ksp, computeeigenvalues, n, r, c, neig); in KSPComputeEigenvalues()
179 PetscErrorCode KSPComputeRitz(KSP ksp, PetscBool ritz, PetscBool small, PetscInt *nrit, Vec S[], Pe… in KSPComputeRitz() argument
[all …]
H A Ditcl.c40 PetscErrorCode KSPSetOptionsPrefix(KSP ksp, const char prefix[]) in KSPSetOptionsPrefix() argument
45 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPSetOptionsPrefix()
46 if (!ksp->pc) PetscCall(KSPGetPC(ksp, &ksp->pc)); in KSPSetOptionsPrefix()
47 PetscCall(PetscObjectTypeCompare((PetscObject)ksp->pc, PCMPI, &ispcmpi)); in KSPSetOptionsPrefix()
57 PetscCall(PCSetOptionsPrefix(ksp->pc, newprefix)); in KSPSetOptionsPrefix()
58 PetscCall(PetscObjectSetOptionsPrefix((PetscObject)ksp, newprefix)); in KSPSetOptionsPrefix()
61 PetscCall(PCSetOptionsPrefix(ksp->pc, prefix)); in KSPSetOptionsPrefix()
62 PetscCall(PetscObjectSetOptionsPrefix((PetscObject)ksp, prefix)); in KSPSetOptionsPrefix()
85 PetscErrorCode KSPAppendOptionsPrefix(KSP ksp, const char prefix[]) in KSPAppendOptionsPrefix() argument
88 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPAppendOptionsPrefix()
[all …]
H A Ditcreate.c106 PetscErrorCode KSPView(KSP ksp, PetscViewer viewer) in KSPView() argument
114 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPView()
115 if (!viewer) PetscCall(PetscViewerASCIIGetStdout(PetscObjectComm((PetscObject)ksp), &viewer)); in KSPView()
117 PetscCheckSameComm(ksp, 1, viewer, 2); in KSPView()
127 PetscCall(PetscObjectPrintClassNamePrefixType((PetscObject)ksp, viewer)); in KSPView()
129 PetscTryTypeMethod(ksp, view, viewer); in KSPView()
131 if (ksp->guess_zero) { in KSPView()
132 …CIIPrintf(viewer, " maximum iterations=%" PetscInt_FMT ", initial guess is zero\n", ksp->max_it)); in KSPView()
134 …CIIPrintf(viewer, " maximum iterations=%" PetscInt_FMT ", nonzero initial guess\n", ksp->max_it)); in KSPView()
136 …if (ksp->min_it) PetscCall(PetscViewerASCIIPrintf(viewer, " minimum iterations=%" PetscInt_FMT "\… in KSPView()
[all …]
/petsc/src/ksp/ksp/impls/rich/
H A Drich.c6 static PetscErrorCode KSPSetUp_Richardson(KSP ksp) in KSPSetUp_Richardson() argument
8 KSP_Richardson *richardsonP = (KSP_Richardson *)ksp->data; in KSPSetUp_Richardson()
12 PetscCall(KSPSetWorkVecs(ksp, 4)); in KSPSetUp_Richardson()
14 PetscCall(KSPSetWorkVecs(ksp, 2)); in KSPSetUp_Richardson()
19 static PetscErrorCode KSPSolve_Richardson(KSP ksp) in KSPSolve_Richardson() argument
27 KSP_Richardson *richardsonP = (KSP_Richardson *)ksp->data; in KSPSolve_Richardson()
32 PetscCall(PCGetDiagonalScale(ksp->pc, &diagonalscale)); in KSPSolve_Richardson()
33 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_Richardson()
35 ksp->its = 0; in KSPSolve_Richardson()
37 PetscCall(PCGetOperators(ksp->pc, &Amat, &Pmat)); in KSPSolve_Richardson()
[all …]
/petsc/src/ksp/ksp/impls/cg/
H A Dcg.c47 static PetscErrorCode KSPCGSetObjectiveTarget_CG(KSP ksp, PetscReal obj_min) in KSPCGSetObjectiveTarget_CG() argument
49 KSP_CG *cg = (KSP_CG *)ksp->data; in KSPCGSetObjectiveTarget_CG()
56 static PetscErrorCode KSPCGSetRadius_CG(KSP ksp, PetscReal radius) in KSPCGSetRadius_CG() argument
58 KSP_CG *cg = (KSP_CG *)ksp->data; in KSPCGSetRadius_CG()
65 static PetscErrorCode KSPCGGetObjFcn_CG(KSP ksp, PetscReal *obj) in KSPCGGetObjFcn_CG() argument
67 KSP_CG *cg = (KSP_CG *)ksp->data; in KSPCGGetObjFcn_CG()
80 static PetscErrorCode KSPSetUp_CG(KSP ksp) in KSPSetUp_CG() argument
82 KSP_CG *cgP = (KSP_CG *)ksp->data; in KSPSetUp_CG()
83 PetscInt maxit = ksp->max_it, nwork = 3; in KSPSetUp_CG()
88 PetscCall(KSPSetWorkVecs(ksp, nwork)); in KSPSetUp_CG()
[all …]
H A Dcgls.c12 static PetscErrorCode KSPSetUp_CGLS(KSP ksp) in KSPSetUp_CGLS() argument
14 KSP_CGLS *cgls = (KSP_CGLS *)ksp->data; in KSPSetUp_CGLS()
22 PetscCall(KSPCreateVecs(ksp, cgls->nwork_n, &cgls->vwork_n, cgls->nwork_m, &cgls->vwork_m)); in KSPSetUp_CGLS()
26 static PetscErrorCode KSPSolve_CGLS(KSP ksp) in KSPSolve_CGLS() argument
28 KSP_CGLS *cgls = (KSP_CGLS *)ksp->data; in KSPSolve_CGLS()
35 PetscCall(KSPGetOperators(ksp, &A, NULL)); /* Matrix of the system */ in KSPSolve_CGLS()
38 x = ksp->vec_sol; /* Solution vector */ in KSPSolve_CGLS()
43 b = ksp->vec_rhs; /* Right-hand side vector */ in KSPSolve_CGLS()
48 ksp->its = 0; in KSPSolve_CGLS()
49 ksp->rnorm = 0; in KSPSolve_CGLS()
[all …]
/petsc/src/ksp/ksp/impls/cheby/
H A Dcheby.c6 static PetscErrorCode KSPReset_Chebyshev(KSP ksp) in KSPReset_Chebyshev() argument
8 KSP_Chebyshev *cheb = (KSP_Chebyshev *)ksp->data; in KSPReset_Chebyshev()
40 static PetscErrorCode KSPChebyshevGetEigenvalues_Chebyshev(KSP ksp, PetscReal *emax, PetscReal *emi… in KSPChebyshevGetEigenvalues_Chebyshev() argument
42 KSP_Chebyshev *cheb = (KSP_Chebyshev *)ksp->data; in KSPChebyshevGetEigenvalues_Chebyshev()
64 static PetscErrorCode KSPChebyshevSetEigenvalues_Chebyshev(KSP ksp, PetscReal emax, PetscReal emin) in KSPChebyshevSetEigenvalues_Chebyshev() argument
66 KSP_Chebyshev *chebyshevP = (KSP_Chebyshev *)ksp->data; in KSPChebyshevSetEigenvalues_Chebyshev()
69 … && emin == 0) || (emax == -1 && emin == -1), PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_INC… in KSPChebyshevSetEigenvalues_Chebyshev()
70 …PetscCheck(emax * emin > 0.0 || (emax == 0 && emin == 0), PetscObjectComm((PetscObject)ksp), PETSC… in KSPChebyshevSetEigenvalues_Chebyshev()
74 PetscCall(KSPChebyshevEstEigSet(ksp, 0., 0., 0., 0.)); /* Destroy any estimation setup */ in KSPChebyshevSetEigenvalues_Chebyshev()
78 static PetscErrorCode KSPChebyshevEstEigSet_Chebyshev(KSP ksp, PetscReal a, PetscReal b, PetscReal … in KSPChebyshevEstEigSet_Chebyshev() argument
[all …]
/petsc/src/ksp/ksp/impls/bcgs/
H A Dbcgs.c3 PetscErrorCode KSPSetFromOptions_BCGS(KSP ksp, PetscOptionItems PetscOptionsObject) in KSPSetFromOptions_BCGS() argument
11 PetscErrorCode KSPSetUp_BCGS(KSP ksp) in KSPSetUp_BCGS() argument
14 PetscCall(KSPSetWorkVecs(ksp, 6)); in KSPSetUp_BCGS()
18 PetscErrorCode KSPSolve_BCGS(KSP ksp) in KSPSolve_BCGS() argument
24 KSP_BCGS *bcgs = (KSP_BCGS *)ksp->data; in KSPSolve_BCGS()
27 X = ksp->vec_sol; in KSPSolve_BCGS()
28 B = ksp->vec_rhs; in KSPSolve_BCGS()
29 R = ksp->work[0]; in KSPSolve_BCGS()
30 RP = ksp->work[1]; in KSPSolve_BCGS()
31 V = ksp->work[2]; in KSPSolve_BCGS()
[all …]
/petsc/src/ksp/ksp/impls/preonly/
H A Dpreonly.c3 static PetscErrorCode KSPSetUp_PREONLY(KSP ksp) in KSPSetUp_PREONLY() argument
9 static PetscErrorCode KSPSolve_PREONLY(KSP ksp) in KSPSolve_PREONLY() argument
16 PetscCall(PCGetDiagonalScale(ksp->pc, &flg)); in KSPSolve_PREONLY()
17 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_PREONLY()
18 if (!ksp->guess_zero) { in KSPSolve_PREONLY()
19 PetscCall(PetscObjectTypeCompareAny((PetscObject)ksp->pc, &flg, PCREDISTRIBUTE, PCMPI, "")); in KSPSolve_PREONLY()
20 …PetscCheck(flg, PetscObjectComm((PetscObject)ksp), PETSC_ERR_USER, "KSP of type preonly (applicati… in KSPSolve_PREONLY()
22 ksp->its = 0; in KSPSolve_PREONLY()
23 if (ksp->numbermonitors) { in KSPSolve_PREONLY()
24 PetscCall(VecNorm(ksp->vec_rhs, NORM_2, &norm)); in KSPSolve_PREONLY()
[all …]
/petsc/src/ksp/ksp/impls/bcgs/fbcgs/
H A Dfbcgs.c6 static PetscErrorCode KSPSetUp_FBCGS(KSP ksp) in KSPSetUp_FBCGS() argument
9 PetscCall(KSPSetWorkVecs(ksp, 8)); in KSPSetUp_FBCGS()
15 static PetscErrorCode KSPSolve_FBCGS(KSP ksp) in KSPSolve_FBCGS() argument
21 KSP_BCGS *bcgs = (KSP_BCGS *)ksp->data; in KSPSolve_FBCGS()
26 X = ksp->vec_sol; in KSPSolve_FBCGS()
27 B = ksp->vec_rhs; in KSPSolve_FBCGS()
28 R = ksp->work[0]; in KSPSolve_FBCGS()
29 RP = ksp->work[1]; in KSPSolve_FBCGS()
30 V = ksp->work[2]; in KSPSolve_FBCGS()
31 T = ksp->work[3]; in KSPSolve_FBCGS()
[all …]
/petsc/src/ksp/ksp/impls/bicg/
H A Dbicg.c3 static PetscErrorCode KSPSetUp_BiCG(KSP ksp) in KSPSetUp_BiCG() argument
6 PetscCall(KSPSetWorkVecs(ksp, 6)); in KSPSetUp_BiCG()
10 static PetscErrorCode KSPSolve_BiCG(KSP ksp) in KSPSolve_BiCG() argument
20 PetscCall(PCGetDiagonalScale(ksp->pc, &diagonalscale)); in KSPSolve_BiCG()
21 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_BiCG()
23 X = ksp->vec_sol; in KSPSolve_BiCG()
24 B = ksp->vec_rhs; in KSPSolve_BiCG()
25 Rl = ksp->work[0]; in KSPSolve_BiCG()
26 Zl = ksp->work[1]; in KSPSolve_BiCG()
27 Pl = ksp->work[2]; in KSPSolve_BiCG()
[all …]
/petsc/src/ksp/ksp/impls/cg/cgne/
H A Dcgne.c10 static PetscErrorCode KSPCGSetType_CGNE(KSP ksp, KSPCGType type) in KSPCGSetType_CGNE() argument
12 KSP_CG *cg = (KSP_CG *)ksp->data; in KSPCGSetType_CGNE()
19 static PetscErrorCode KSPSetUp_CGNE(KSP ksp) in KSPSetUp_CGNE() argument
21 KSP_CG *cgP = (KSP_CG *)ksp->data; in KSPSetUp_CGNE()
22 PetscInt maxit = ksp->max_it; in KSPSetUp_CGNE()
26 PetscCall(KSPSetWorkVecs(ksp, 4)); in KSPSetUp_CGNE()
31 if (ksp->calc_sings) { in KSPSetUp_CGNE()
35 ksp->ops->computeextremesingularvalues = KSPComputeExtremeSingularValues_CG; in KSPSetUp_CGNE()
36 ksp->ops->computeeigenvalues = KSPComputeEigenvalues_CG; in KSPSetUp_CGNE()
41 static PetscErrorCode KSPSolve_CGNE(KSP ksp) in KSPSolve_CGNE() argument
[all …]
/petsc/src/ksp/ksp/impls/bcgs/qmrcgs/
H A Dqmrcgs.c6 static PetscErrorCode KSPSetUp_QMRCGS(KSP ksp) in KSPSetUp_QMRCGS() argument
9 PetscCall(KSPSetWorkVecs(ksp, 14)); in KSPSetUp_QMRCGS()
15 static PetscErrorCode KSPSolve_QMRCGS(KSP ksp) in KSPSolve_QMRCGS() argument
21 KSP_BCGS *bcgs = (KSP_BCGS *)ksp->data; in KSPSolve_QMRCGS()
26 X = ksp->vec_sol; in KSPSolve_QMRCGS()
27 B = ksp->vec_rhs; in KSPSolve_QMRCGS()
28 R = ksp->work[0]; in KSPSolve_QMRCGS()
29 P = ksp->work[1]; in KSPSolve_QMRCGS()
30 PH = ksp->work[2]; in KSPSolve_QMRCGS()
31 V = ksp->work[3]; in KSPSolve_QMRCGS()
[all …]
/petsc/src/ksp/ksp/impls/gcr/
H A Dgcr.c16 static PetscErrorCode KSPSolve_GCR_cycle(KSP ksp) in KSPSolve_GCR_cycle() argument
18 KSP_GCR *ctx = (KSP_GCR *)ksp->data; in KSPSolve_GCR_cycle()
32 PetscCall(KSPGetPC(ksp, &pc)); in KSPSolve_GCR_cycle()
33 PetscCall(KSPGetOperators(ksp, &A, &B)); in KSPSolve_GCR_cycle()
35 x = ksp->vec_sol; in KSPSolve_GCR_cycle()
41 if (ctx->modifypc) PetscCall((*ctx->modifypc)(ksp, ksp->its, k, ksp->rnorm, ctx->modifypc_ctx)); in KSPSolve_GCR_cycle()
43 PetscCall(KSP_PCApply(ksp, r, s)); /* s = B^{-1} r */ in KSPSolve_GCR_cycle()
44 PetscCall(KSP_MatMult(ksp, A, s, v)); /* v = A s */ in KSPSolve_GCR_cycle()
58 if (ksp->its > ksp->chknorm && ksp->normtype != KSP_NORM_NONE) { in KSPSolve_GCR_cycle()
60 KSPCheckNorm(ksp, norm_r); in KSPSolve_GCR_cycle()
[all …]
/petsc/src/ksp/ksp/impls/cr/
H A Dcr.c3 static PetscErrorCode KSPSetUp_CR(KSP ksp) in KSPSetUp_CR() argument
6 PetscCall(KSPSetWorkVecs(ksp, 6)); in KSPSetUp_CR()
10 static PetscErrorCode KSPSolve_CR(KSP ksp) in KSPSolve_CR() argument
20 X = ksp->vec_sol; in KSPSolve_CR()
21 B = ksp->vec_rhs; in KSPSolve_CR()
22 R = ksp->work[0]; in KSPSolve_CR()
23 RT = ksp->work[1]; in KSPSolve_CR()
24 P = ksp->work[2]; in KSPSolve_CR()
25 AP = ksp->work[3]; in KSPSolve_CR()
26 ART = ksp->work[4]; in KSPSolve_CR()
[all …]
/petsc/src/ksp/ksp/impls/tfqmr/
H A Dtfqmr.c3 static PetscErrorCode KSPSetUp_TFQMR(KSP ksp) in KSPSetUp_TFQMR() argument
6 …PetscCheck(ksp->pc_side != PC_SYMMETRIC, PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "no sym… in KSPSetUp_TFQMR()
7 PetscCall(KSPSetWorkVecs(ksp, 9)); in KSPSetUp_TFQMR()
11 static PetscErrorCode KSPSolve_TFQMR(KSP ksp) in KSPSolve_TFQMR() argument
19 X = ksp->vec_sol; in KSPSolve_TFQMR()
20 B = ksp->vec_rhs; in KSPSolve_TFQMR()
21 R = ksp->work[0]; in KSPSolve_TFQMR()
22 RP = ksp->work[1]; in KSPSolve_TFQMR()
23 V = ksp->work[2]; in KSPSolve_TFQMR()
24 T = ksp->work[3]; in KSPSolve_TFQMR()
[all …]
/petsc/src/ksp/ksp/impls/gmres/
H A Dgmres.c35 PetscErrorCode KSPSetUp_GMRES(KSP ksp) in KSPSetUp_GMRES() argument
39 KSP_GMRES *gmres = (KSP_GMRES *)ksp->data; in KSPSetUp_GMRES()
50 if (ksp->calc_sings) { in KSPSetUp_GMRES()
62 …if (gmres->q_preallocate || ksp->normtype == KSP_NORM_NONE) gmres->vv_allocated = VEC_OFFSET + 2 +… in KSPSetUp_GMRES()
63 else gmres->vv_allocated = VEC_OFFSET + 2 + PetscMin(PetscMin(5, max_k), ksp->max_it); in KSPSetUp_GMRES()
64 PetscCall(KSPCreateVecs(ksp, gmres->vv_allocated, &gmres->user_work[0], 0, NULL)); in KSPSetUp_GMRES()
88 static PetscErrorCode KSPGMRESCycle(PetscInt *itcount, KSP ksp) in KSPGMRESCycle() argument
90 KSP_GMRES *gmres = (KSP_GMRES *)ksp->data; in KSPGMRESCycle()
98 KSPCheckNorm(ksp, res); in KSPGMRESCycle()
101 …if ((ksp->rnorm > 0.0) && (PetscAbsReal(res - ksp->rnorm) > gmres->breakdowntol * gmres->rnorm0)) { in KSPGMRESCycle()
[all …]
/petsc/src/ksp/ksp/impls/cgs/
H A Dcgs.c8 static PetscErrorCode KSPSetUp_CGS(KSP ksp) in KSPSetUp_CGS() argument
11 PetscCall(KSPSetWorkVecs(ksp, 7)); in KSPSetUp_CGS()
15 static PetscErrorCode KSPSolve_CGS(KSP ksp) in KSPSolve_CGS() argument
26 PetscCall(PCGetDiagonalScale(ksp->pc, &diagonalscale)); in KSPSolve_CGS()
27 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_CGS()
29 X = ksp->vec_sol; in KSPSolve_CGS()
30 B = ksp->vec_rhs; in KSPSolve_CGS()
31 R = ksp->work[0]; in KSPSolve_CGS()
32 RP = ksp->work[1]; in KSPSolve_CGS()
33 V = ksp->work[2]; in KSPSolve_CGS()
[all …]
/petsc/src/ksp/ksp/impls/lcd/
H A Dlcd.c3 static PetscErrorCode KSPSetUp_LCD(KSP ksp) in KSPSetUp_LCD() argument
5 KSP_LCD *lcd = (KSP_LCD *)ksp->data; in KSPSetUp_LCD()
10 PetscCall(KSPSetWorkVecs(ksp, 2)); in KSPSetUp_LCD()
12 PetscCall(VecDuplicateVecs(ksp->work[0], restart + 1, &lcd->P)); in KSPSetUp_LCD()
13 PetscCall(VecDuplicateVecs(ksp->work[0], restart + 1, &lcd->Q)); in KSPSetUp_LCD()
28 static PetscErrorCode KSPSolve_LCD(KSP ksp) in KSPSolve_LCD() argument
39 PetscCall(PCGetDiagonalScale(ksp->pc, &diagonalscale)); in KSPSolve_LCD()
40 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_LCD()
42 lcd = (KSP_LCD *)ksp->data; in KSPSolve_LCD()
43 X = ksp->vec_sol; in KSPSolve_LCD()
[all …]
/petsc/src/ksp/ksp/impls/gmres/fgmres/
H A Dfgmres.c20 static PetscErrorCode KSPSetUp_FGMRES(KSP ksp) in KSPSetUp_FGMRES() argument
23 KSP_FGMRES *fgmres = (KSP_FGMRES *)ksp->data; in KSPSetUp_FGMRES()
28 PetscCall(KSPSetUp_GMRES(ksp)); in KSPSetUp_FGMRES()
36 …PetscCall(KSPCreateVecs(ksp, fgmres->vv_allocated - VEC_OFFSET, &fgmres->prevecs_user_work[0], 0, … in KSPSetUp_FGMRES()
41 static PetscErrorCode KSPFGMRESResidual(KSP ksp) in KSPFGMRESResidual() argument
43 KSP_FGMRES *fgmres = (KSP_FGMRES *)ksp->data; in KSPFGMRESResidual()
47 PetscCall(PCGetOperators(ksp->pc, &Amat, &Pmat)); in KSPFGMRESResidual()
50 PetscCall(KSP_MatMult(ksp, Amat, ksp->vec_sol, VEC_TEMP)); in KSPFGMRESResidual()
52 PetscCall(VecWAXPY(VEC_VV(0), -1.0, VEC_TEMP, ksp->vec_rhs)); in KSPFGMRESResidual()
56 static PetscErrorCode KSPFGMRESCycle(PetscInt *itcount, KSP ksp) in KSPFGMRESCycle() argument
[all …]
/petsc/src/ksp/ksp/impls/cg/groppcg/
H A Dgroppcg.c9 static PetscErrorCode KSPSetUp_GROPPCG(KSP ksp) in KSPSetUp_GROPPCG() argument
12 PetscCall(KSPSetWorkVecs(ksp, 6)); in KSPSetUp_GROPPCG()
23 static PetscErrorCode KSPSolve_GROPPCG(KSP ksp) in KSPSolve_GROPPCG() argument
33 PetscCall(PCGetDiagonalScale(ksp->pc, &diagonalscale)); in KSPSolve_GROPPCG()
34 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_GROPPCG()
36 x = ksp->vec_sol; in KSPSolve_GROPPCG()
37 b = ksp->vec_rhs; in KSPSolve_GROPPCG()
38 r = ksp->work[0]; in KSPSolve_GROPPCG()
39 p = ksp->work[1]; in KSPSolve_GROPPCG()
40 s = ksp->work[2]; in KSPSolve_GROPPCG()
[all …]
/petsc/src/ksp/ksp/impls/cg/pipecg/
H A Dpipecg.c9 static PetscErrorCode KSPSetUp_PIPECG(KSP ksp) in KSPSetUp_PIPECG() argument
13 PetscCall(KSPSetWorkVecs(ksp, 9)); in KSPSetUp_PIPECG()
20 static PetscErrorCode KSPSolve_PIPECG(KSP ksp) in KSPSolve_PIPECG() argument
30 PetscCall(PCGetDiagonalScale(ksp->pc, &diagonalscale)); in KSPSolve_PIPECG()
31 … PetscObjectComm((PetscObject)ksp), PETSC_ERR_SUP, "Krylov method %s does not support diagonal sca… in KSPSolve_PIPECG()
33 X = ksp->vec_sol; in KSPSolve_PIPECG()
34 B = ksp->vec_rhs; in KSPSolve_PIPECG()
35 R = ksp->work[0]; in KSPSolve_PIPECG()
36 Z = ksp->work[1]; in KSPSolve_PIPECG()
37 P = ksp->work[2]; in KSPSolve_PIPECG()
[all …]
/petsc/src/ksp/ksp/impls/bcgs/pipebcgs/
H A Dpipebcgs.c6 static PetscErrorCode KSPSetUp_PIPEBCGS(KSP ksp) in KSPSetUp_PIPEBCGS() argument
9 PetscCall(KSPSetWorkVecs(ksp, 15)); in KSPSetUp_PIPEBCGS()
15 static PetscErrorCode KSPSolve_PIPEBCGS(KSP ksp) in KSPSolve_PIPEBCGS() argument
21 KSP_BCGS *bcgs = (KSP_BCGS *)ksp->data; in KSPSolve_PIPEBCGS()
25 X = ksp->vec_sol; in KSPSolve_PIPEBCGS()
26 B = ksp->vec_rhs; in KSPSolve_PIPEBCGS()
27 R = ksp->work[0]; in KSPSolve_PIPEBCGS()
28 RP = ksp->work[1]; in KSPSolve_PIPEBCGS()
29 S = ksp->work[2]; in KSPSolve_PIPEBCGS()
30 Y = ksp->work[3]; in KSPSolve_PIPEBCGS()
[all …]
/petsc/src/ksp/ksp/impls/qcg/
H A Dqcg.c59 PetscErrorCode KSPQCGSetTrustRegionRadius(KSP ksp, PetscReal delta) in KSPQCGSetTrustRegionRadius() argument
62 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPQCGSetTrustRegionRadius()
63 …PetscCheck(delta >= 0.0, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OUTOFRANGE, "Tolerance m… in KSPQCGSetTrustRegionRadius()
64 PetscTryMethod(ksp, "KSPQCGSetTrustRegionRadius_C", (KSP, PetscReal), (ksp, delta)); in KSPQCGSetTrustRegionRadius()
84 PetscErrorCode KSPQCGGetTrialStepNorm(KSP ksp, PetscReal *tsnorm) in KSPQCGGetTrialStepNorm() argument
87 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPQCGGetTrialStepNorm()
88 PetscUseMethod(ksp, "KSPQCGGetTrialStepNorm_C", (KSP, PetscReal *), (ksp, tsnorm)); in KSPQCGGetTrialStepNorm()
128 PetscErrorCode KSPQCGGetQuadratic(KSP ksp, PetscReal *quadratic) in KSPQCGGetQuadratic() argument
131 PetscValidHeaderSpecific(ksp, KSP_CLASSID, 1); in KSPQCGGetQuadratic()
132 PetscUseMethod(ksp, "KSPQCGGetQuadratic_C", (KSP, PetscReal *), (ksp, quadratic)); in KSPQCGGetQuadratic()
[all …]
/petsc/src/ksp/ksp/impls/gmres/pgmres/
H A Dpgmres.c10 static PetscErrorCode KSPSetUp_PGMRES(KSP ksp) in KSPSetUp_PGMRES() argument
13 PetscCall(KSPSetUp_GMRES(ksp)); in KSPSetUp_PGMRES()
17 static PetscErrorCode KSPPGMRESCycle(PetscInt *itcount, KSP ksp) in KSPPGMRESCycle() argument
19 KSP_PGMRES *pgmres = (KSP_PGMRES *)ksp->data; in KSPPGMRESCycle()
27 KSPCheckNorm(ksp, res_norm); in KSPPGMRESCycle()
32 PetscCall(PetscObjectSAWsTakeAccess((PetscObject)ksp)); in KSPPGMRESCycle()
33 if (ksp->normtype != KSP_NORM_NONE) ksp->rnorm = res; in KSPPGMRESCycle()
34 else ksp->rnorm = 0; in KSPPGMRESCycle()
35 PetscCall(PetscObjectSAWsGrantAccess((PetscObject)ksp)); in KSPPGMRESCycle()
37 PetscCall(KSPLogResidualHistory(ksp, ksp->rnorm)); in KSPPGMRESCycle()
[all …]

12345678910>>...20