Lines Matching refs:neP
58 SNES_NEWTONTR *neP = (SNES_NEWTONTR *)snes->data; in SNESTR_KSPConverged_Private() local
65 PetscCall(VecNorm(x, neP->norm, &nrm)); in SNESTR_KSPConverged_Private()
66 if (nrm >= neP->delta) { in SNESTR_KSPConverged_Private()
67 …eration early due to exiting trust region, delta=%g, length=%g\n", (double)neP->delta, (double)nrm… in SNESTR_KSPConverged_Private()
88 SNES_NEWTONTR *neP = (SNES_NEWTONTR *)snes->data; in SNESTR_Converged_Private() local
92 if (neP->delta < neP->deltam) { in SNESTR_Converged_Private()
93 …nes, "Diverged due to too small a trust region %g<%g\n", (double)neP->delta, (double)neP->deltam)); in SNESTR_Converged_Private()
487 SNES_NEWTONTR *neP = (SNES_NEWTONTR *)snes->data; in SNESSolve_NEWTONTR() local
550 delta = neP->delta0; in SNESSolve_NEWTONTR()
551 neP->delta = delta; in SNESSolve_NEWTONTR()
569 if (neP->kmdc) PetscCall(KSPSetComputeEigenvalues(snes->ksp, PETSC_TRUE)); in SNESSolve_NEWTONTR()
597 if (!neP->qnB) { in SNESSolve_NEWTONTR()
603 PetscCall(SNESComputeJacobian_MATLMVM(snes, X, neP->qnB, neP->qnB_pre, NULL)); in SNESSolve_NEWTONTR()
604 J = neP->qnB; in SNESSolve_NEWTONTR()
605 Jp = neP->qnB_pre; in SNESSolve_NEWTONTR()
623 PetscCall(VecNorm(GradF, neP->norm, &gfnorm_k)); in SNESSolve_NEWTONTR()
648 objmin = -neP->kmdc * gnorm * PetscMin(gnorm / beta_k, delta); in SNESSolve_NEWTONTR()
652 …PetscCall(KSPCGSetRadius(snes->ksp, neP->fallback == SNES_TR_FALLBACK_NEWTON && neP->norm == NORM_… in SNESSolve_NEWTONTR()
660 if (neP->kmdc) { /* update estimated Hessian largest eigenvalue */ in SNESSolve_NEWTONTR()
670 PetscCall(VecNorm(Y, neP->norm, &ynorm)); in SNESSolve_NEWTONTR()
674 SNESNewtonTRFallbackType fallback = ynorm > 0.0 ? neP->fallback : SNES_TR_FALLBACK_CAUCHY; in SNESSolve_NEWTONTR()
676 …PetscCheck(neP->norm == NORM_2 || fallback != SNES_TR_FALLBACK_DOGLEG, PetscObjectComm((PetscObjec… in SNESSolve_NEWTONTR()
741 if (PetscIsInfOrNanReal(fkp1)) rho = neP->eta1; in SNESSolve_NEWTONTR()
744 …else rho = neP->eta1; /* no reduction in quadratic model, step must be … in SNESSolve_NEWTONTR()
747 PetscCall(VecNorm(Y, neP->norm, &ynorm)); in SNESSolve_NEWTONTR()
751 if (rho < neP->eta2) delta *= neP->t1; /* shrink the region */ in SNESSolve_NEWTONTR()
752 else if (rho > neP->eta3 && on_boundary) delta *= neP->t2; /* expand the region */ in SNESSolve_NEWTONTR()
753 delta = PetscMin(delta, neP->deltaM); /* but not greater than deltaM */ in SNESSolve_NEWTONTR()
759 neP->delta = delta; in SNESSolve_NEWTONTR()
760 if (rho > neP->eta1) { in SNESSolve_NEWTONTR()
1123 SNES_NEWTONTR *neP; in SNESCreate_NEWTONTR() local
1142 PetscCall(PetscNew(&neP)); in SNESCreate_NEWTONTR()
1143 snes->data = (void *)neP; in SNESCreate_NEWTONTR()
1145 PetscObjectParameterSetDefault(neP, eta1, 0.001); in SNESCreate_NEWTONTR()
1146 PetscObjectParameterSetDefault(neP, eta2, 0.25); in SNESCreate_NEWTONTR()
1147 PetscObjectParameterSetDefault(neP, eta3, 0.75); in SNESCreate_NEWTONTR()
1148 PetscObjectParameterSetDefault(neP, t1, 0.25); in SNESCreate_NEWTONTR()
1149 PetscObjectParameterSetDefault(neP, t2, 2.0); in SNESCreate_NEWTONTR()
1150 PetscObjectParameterSetDefault(neP, deltam, PetscDefined(USE_REAL_SINGLE) ? 1.e-6 : 1.e-12); in SNESCreate_NEWTONTR()
1151 PetscObjectParameterSetDefault(neP, delta0, 0.2); in SNESCreate_NEWTONTR()
1152 PetscObjectParameterSetDefault(neP, deltaM, 1.e10); in SNESCreate_NEWTONTR()
1154 neP->norm = NORM_2; in SNESCreate_NEWTONTR()
1155 neP->fallback = SNES_TR_FALLBACK_NEWTON; in SNESCreate_NEWTONTR()
1156 neP->kmdc = 0.0; /* by default do not use sufficient decrease */ in SNESCreate_NEWTONTR()