Home
last modified time | relevance | path

Searched refs:max_k (Results 1 – 18 of 18) sorted by relevance

/petsc/src/ksp/ksp/impls/gmres/
H A Dgmres.c38 PetscInt max_k, k; in KSPSetUp_GMRES() local
42 max_k = gmres->max_k; /* restart size */ in KSPSetUp_GMRES()
43 hh = (max_k + 2) * (max_k + 1); in KSPSetUp_GMRES()
44 hes = (max_k + 1) * (max_k + 1); in KSPSetUp_GMRES()
45 rs = (max_k + 2); in KSPSetUp_GMRES()
46 cc = (max_k + 1); in KSPSetUp_GMRES()
52 PetscCall(PetscMalloc1((max_k + 3) * (max_k + 9), &gmres->Rsvd)); in KSPSetUp_GMRES()
53 PetscCall(PetscMalloc1(6 * (max_k + 2), &gmres->Dsvd)); in KSPSetUp_GMRES()
58 gmres->vecs_allocated = VEC_OFFSET + 2 + max_k + gmres->nextra_vecs; in KSPSetUp_GMRES()
60 PetscCall(PetscMalloc1(VEC_OFFSET + 2 + max_k, &gmres->user_work)); in KSPSetUp_GMRES()
[all …]
H A Dgmreig.c7 PetscInt n = gmres->it + 1, i, N = gmres->max_k + 2; in KSPComputeExtremeSingularValues_GMRES()
22 PetscCall(PetscArraycpy(R, gmres->hh_origin, (gmres->max_k + 2) * (gmres->max_k + 1))); in KSPComputeExtremeSingularValues_GMRES()
46 PetscInt n = gmres->it + 1, N = gmres->max_k + 1, i, *perm; in KSPComputeEigenvalues_GMRES()
79 PetscInt n = gmres->it + 1, N = gmres->max_k + 1, i, *perm; in KSPComputeEigenvalues_GMRES()
129 …PetscCall(PetscBLASIntCast(gmres->fullcycle ? gmres->max_k : gmres->it + 1, &bn)); /* size of the … in KSPComputeRitz_GMRES()
130 …PetscCall(PetscBLASIntCast(gmres->max_k + 1, &bN)); /* LDA of the H… in KSPComputeRitz_GMRES()
131 PetscCall(PetscBLASIntCast(gmres->max_k + 1, &idummy)); in KSPComputeRitz_GMRES()
132 PetscCall(PetscBLASIntCast(5 * (gmres->max_k + 1) * (gmres->max_k + 1), &lwork)); in KSPComputeRitz_GMRES()
H A Dgmresimpl.h26 PetscInt max_k; /* number of vectors in Krylov space, restart size */ \
78 #define HH(a, b) (gmres->hh_origin + (b) * (gmres->max_k + 2) + (a))
79 #define HES(a, b) (gmres->hes_origin + (b) * (gmres->max_k + 1) + (a))
H A Dborthog2.c45 if (!gmres->orthogwork) PetscCall(PetscMalloc1(gmres->max_k + 2, &gmres->orthogwork)); in KSPGMRESClassicalGramSchmidtOrthogonalization()
/petsc/src/ksp/ksp/impls/gmres/agmres/
H A Dagmres.c29 const PetscInt max_k = agmres->max_k; in KSPSetUp_AGMRES() local
39 agmres->max_k = N; /* Set the augmented size to be allocated in KSPSetup_GMRES */ in KSPSetUp_AGMRES()
41 agmres->max_k = max_k; in KSPSetUp_AGMRES()
45 …PetscCall(PetscCalloc4(max_k, &agmres->Rshift, max_k, &agmres->Ishift, hes, &agmres->Rloc, (N + 1)… in KSPSetUp_AGMRES()
103 PetscInt max_k = agmres->max_k; /* size of the (non augmented) Krylov subspace */ in KSPComputeShifts_DGMRES() local
113 ksp->max_it = max_k; /* set this to have DGMRES performing only one cycle */ in KSPComputeShifts_DGMRES()
125 Neig = max_k; in KSPComputeShifts_DGMRES()
133 PetscCall(KSPAGMRESLejaOrdering(agmres->wr, agmres->wi, agmres->Rshift, agmres->Ishift, max_k)); in KSPComputeShifts_DGMRES()
137 PetscCall(PetscMalloc4(2 * max_k, &wr, 2 * max_k, &wi, 2 * max_k, &Rshift, 2 * max_k, &Ishift)); in KSPComputeShifts_DGMRES()
138 for (i = 0; i < max_k; i++) { in KSPComputeShifts_DGMRES()
[all …]
H A Dagmresimpl.h46 #define MAXKSPSIZE (agmres->DeflPrecond ? agmres->max_k : (agmres->max_k + agmres->max_neig))
47 #define KSPSIZE (agmres->DeflPrecond ? agmres->max_k : (agmres->max_k + agmres->r))
H A Dagmresdeflation.c95 PetscInt max_k = agmres->max_k; in KSPAGMRESSchurForm() local
170 …mres->DeflPrecond) PetscCall(KSPAGMRESLejaOrdering(wr, wi, agmres->Rshift, agmres->Ishift, max_k)); in KSPAGMRESSchurForm()
189 PetscInt max_k = agmres->max_k; /* size of the non - augmented subspace */ in KSPAGMRESComputeDeflationData() local
215 for (j = 0; j < max_k; j++) PetscCall(VecMDot(VEC_V(j), KspSize, TmpU, &MatEigR[j * N])); in KSPAGMRESComputeDeflationData()
216 …for (j = max_k; j < KspSize; j++) PetscCall(VecMDot(U[j - max_k], KspSize, TmpU, &MatEigR[j * N])); in KSPAGMRESComputeDeflationData()
241 PetscCall(VecMAXPBY(U[j], max_k, &Sr[j * (N + 1)], 0, &VEC_V(0))); in KSPAGMRESComputeDeflationData()
242 PetscCall(VecMAXPY(U[j], PrevNeig, &Sr[j * (N + 1) + max_k], TmpU)); in KSPAGMRESComputeDeflationData()
/petsc/src/ksp/ksp/impls/gmres/fgmres/
H A Dfgmres.c22 PetscInt max_k, k; in KSPSetUp_FGMRES() local
26 max_k = fgmres->max_k; in KSPSetUp_FGMRES()
30 PetscCall(PetscMalloc1(max_k + 2, &fgmres->prevecs)); in KSPSetUp_FGMRES()
31 PetscCall(PetscMalloc1(max_k + 2, &fgmres->prevecs_user_work)); in KSPSetUp_FGMRES()
63 PetscInt max_k = fgmres->max_k; /* max # of directions Krylov space */ in KSPFGMRESCycle() local
102 while (!ksp->reason && loc_it < max_k && ksp->its < ksp->max_it) { in KSPFGMRESCycle()
413 PetscCall(PetscMalloc1(fgmres->max_k, &fgmres->nrs)); in KSPBuildSolution_FGMRES()
465 static PetscErrorCode KSPGMRESSetRestart_FGMRES(KSP ksp, PetscInt max_k) in KSPGMRESSetRestart_FGMRES() argument
470 …PetscCheck(max_k >= 1, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OUTOFRANGE, "Restart must … in KSPGMRESSetRestart_FGMRES()
472 gmres->max_k = max_k; in KSPGMRESSetRestart_FGMRES()
[all …]
H A Dfgmresimpl.h23 #define HH(a, b) (fgmres->hh_origin + (b) * (fgmres->max_k + 2) + (a))
26 #define HES(a, b) (fgmres->hes_origin + (b) * (fgmres->max_k + 1) + (a))
/petsc/src/ksp/ksp/impls/gmres/pipefgmres/
H A Dpipefgmres.c26 const PetscInt max_k = pipefgmres->max_k; in KSPSetUp_PIPEFGMRES() local
31 PetscCall(PetscMalloc1(VEC_OFFSET + max_k, &pipefgmres->prevecs)); in KSPSetUp_PIPEFGMRES()
32 PetscCall(PetscMalloc1(VEC_OFFSET + max_k, &pipefgmres->prevecs_user_work)); in KSPSetUp_PIPEFGMRES()
37 PetscCall(PetscMalloc1(VEC_OFFSET + max_k, &pipefgmres->zvecs)); in KSPSetUp_PIPEFGMRES()
38 PetscCall(PetscMalloc1(VEC_OFFSET + max_k, &pipefgmres->zvecs_user_work)); in KSPSetUp_PIPEFGMRES()
40 PetscCall(PetscMalloc1(VEC_OFFSET + max_k, &pipefgmres->redux)); in KSPSetUp_PIPEFGMRES()
55 PetscInt max_k = pipefgmres->max_k; /* max # of directions Krylov space */ in KSPPIPEFGMRESCycle() local
70 …if (!pipefgmres->orthogwork) PetscCall(PetscMalloc1(pipefgmres->max_k + 2, &pipefgmres->orthogwork… in KSPPIPEFGMRESCycle()
116 while (!ksp->reason && loc_it < max_k && ksp->its < ksp->max_it) { in KSPPIPEFGMRESCycle()
459 PetscCall(PetscMalloc1(pipefgmres->max_k, &pipefgmres->nrs)); in KSPBuildSolution_PIPEFGMRES()
[all …]
H A Dpipefgmresimpl.h26 #define HH(a, b) (pipefgmres->hh_origin + (b) * (pipefgmres->max_k + 2) + (a))
28 #define HES(a, b) (pipefgmres->hes_origin + (b) * (pipefgmres->max_k + 1) + (a))
/petsc/src/ksp/ksp/impls/gmres/pgmres/
H A Dpgmresimpl.h10 #define HH(a, b) (pgmres->hh_origin + (b) * (pgmres->max_k + 2) + (a))
12 #define HES(a, b) (pgmres->hes_origin + (b) * (pgmres->max_k + 1) + (a))
H A Dpgmres.c54 …if (it < pgmres->max_k + 1 && ksp->its + 1 < PetscMax(2, ksp->max_it)) { /* We don't know whether … in KSPPGMRESCycle()
78 …if (it < pgmres->max_k + 1) { /* Monitor if we are not done or still iterating, but not before a r… in KSPPGMRESCycle()
89 if (!(it < pgmres->max_k + 1 && ksp->its < ksp->max_it)) break; in KSPPGMRESCycle()
105 if (!pgmres->orthogwork) PetscCall(PetscMalloc1(pgmres->max_k + 2, &pgmres->orthogwork)); in KSPPGMRESCycle()
317 PetscCall(PetscMalloc1(pgmres->max_k, &pgmres->nrs)); in KSPBuildSolution_PGMRES()
408 pgmres->max_k = PGMRES_DEFAULT_MAXK; in KSPCreate_PGMRES()
/petsc/src/ksp/ksp/impls/gmres/lgmres/
H A Dlgmres.c61 PetscInt max_k, k, aug_dim; in KSPSetUp_LGMRES() local
65 max_k = lgmres->max_k; in KSPSetUp_LGMRES()
83 PetscCall(PetscMalloc1(max_k + 1, &lgmres->hwork)); in KSPSetUp_LGMRES()
96 PetscInt max_k = lgmres->max_k; /* max approx space size */ in KSPLGMRESCycle() local
117 if (lgmres->approx_constant) it_arnoldi = max_k - lgmres->aug_ct; in KSPLGMRESCycle()
118 else it_arnoldi = max_k - aug_dim; in KSPLGMRESCycle()
376 it_arnoldi = lgmres->max_k - lgmres->aug_ct; in KSPLGMRESBuildSoln()
378 it_arnoldi = lgmres->max_k - lgmres->aug_dim; in KSPLGMRESBuildSoln()
549 PetscCall(PetscMalloc1(lgmres->max_k, &lgmres->nrs)); in KSPBuildSolution_LGMRES()
605 …PetscCheck(aug_dim <= (lgmres->max_k - 1), PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OUTOFR… in KSPLGMRESSetAugDim_LGMRES()
[all …]
H A Dlgmresimpl.h35 #define HH(a, b) (lgmres->hh_origin + (b) * (lgmres->max_k + 2) + (a))
38 #define HES(a, b) (lgmres->hes_origin + (b) * (lgmres->max_k + 1) + (a))
/petsc/src/ksp/ksp/impls/gmres/dgmres/
H A Ddgmresimpl.h53 #define HH(a, b) (dgmres->hh_origin + (b) * (dgmres->max_k + 2) + (a))
54 #define HES(a, b) (dgmres->hes_origin + (b) * (dgmres->max_k + 1) + (a))
85 #define MAX_K dgmres->max_k
H A Ddgmres.c55 PetscInt max_k = dgmres->max_k + 1; in KSPSetUp_DGMRES() local
62 PetscCall(PetscMalloc1(neig * max_k, &SR)); in KSPSetUp_DGMRES()
109 PetscInt max_k = dgmres->max_k; in KSPDGMRESCycle() local
138 while (!ksp->reason && it < max_k && ksp->its < ksp->max_it) { in KSPDGMRESCycle()
215 test = max_k * PetscLogReal(ksp->rtol / res) / PetscLogReal(res / res_old); in KSPDGMRESCycle()
450 PetscCall(PetscMalloc1(dgmres->max_k, &dgmres->nrs)); in KSPBuildSolution_DGMRES()
486 …PetscCheck(neig >= 0 && neig <= dgmres->max_k, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OU… in KSPDGMRESSetEigen_DGMRES()
496 …PetscCheck(max_neig >= 0 && max_neig <= dgmres->max_k, PetscObjectComm((PetscObject)ksp), PETSC_ER… in KSPDGMRESSetMaxEigen_DGMRES()
550 PetscInt N = dgmres->max_k + 1; in KSPDGMRESComputeDeflationData_DGMRES()
649 PetscInt N = dgmres->max_k + 1, n = dgmres->it + 1; in KSPDGMRESComputeSchurForm_DGMRES()
[all …]
/petsc/src/ksp/ksp/impls/lcd/
H A Dlcd.c30 PetscInt it, j, max_k; in KSPSolve_LCD() local
47 max_k = lcd->restart; in KSPSolve_LCD()
80 while (!ksp->reason && it < max_k && ksp->its < ksp->max_it) { in KSPSolve_LCD()