Lines Matching refs:fnorm
47 … PetscErrorCode SNESCompositeApply_Multiplicative(SNES snes, Vec X, Vec B, Vec F, PetscReal *fnorm) in SNESCompositeApply_Multiplicative() argument
89 if (fnorm) { in SNESCompositeApply_Multiplicative()
91 PetscCall(SNESVIComputeInactiveSetFnorm(snes, F, X, fnorm)); in SNESCompositeApply_Multiplicative()
93 PetscCall(VecNorm(F, NORM_2, fnorm)); in SNESCompositeApply_Multiplicative()
95 SNESCheckFunctionDomainError(snes, *fnorm); in SNESCompositeApply_Multiplicative()
99 if (fnorm) { in SNESCompositeApply_Multiplicative()
101 PetscCall(SNESVIComputeInactiveSetFnorm(snes, F, X, fnorm)); in SNESCompositeApply_Multiplicative()
103 PetscCall(VecNorm(F, NORM_2, fnorm)); in SNESCompositeApply_Multiplicative()
105 SNESCheckFunctionDomainError(snes, *fnorm); in SNESCompositeApply_Multiplicative()
111 static PetscErrorCode SNESCompositeApply_Additive(SNES snes, Vec X, Vec B, Vec F, PetscReal *fnorm) in SNESCompositeApply_Additive() argument
161 if (fnorm) { in SNESCompositeApply_Additive()
163 PetscCall(SNESVIComputeInactiveSetFnorm(snes, F, X, fnorm)); in SNESCompositeApply_Additive()
165 PetscCall(VecNorm(F, NORM_2, fnorm)); in SNESCompositeApply_Additive()
167 SNESCheckFunctionDomainError(snes, *fnorm); in SNESCompositeApply_Additive()
184 …PetscErrorCode SNESCompositeApply_AdditiveOptimal(SNES snes, Vec X, Vec B, Vec F, PetscReal *fnorm) in SNESCompositeApply_AdditiveOptimal() argument
248 ftf = (*fnorm) * (*fnorm); in SNESCompositeApply_AdditiveOptimal()
283 PetscCall(SNESVIComputeInactiveSetFnorm(snes, F, X, fnorm)); in SNESCompositeApply_AdditiveOptimal()
285 PetscCall(VecNorm(F, NORM_2, fnorm)); in SNESCompositeApply_AdditiveOptimal()
287 SNESCheckFunctionDomainError(snes, *fnorm); in SNESCompositeApply_AdditiveOptimal()
300 if (PetscRealPart(total) < jac->stol || min_fnorm * jac->rtol < *fnorm) { in SNESCompositeApply_AdditiveOptimal()
303 *fnorm = min_fnorm; in SNESCompositeApply_AdditiveOptimal()
692 PetscReal fnorm = 0.0, xnorm = 0.0, snorm = 0.0; in SNESSolve_Composite() local
714 PetscCall(SNESVIComputeInactiveSetFnorm(snes, F, X, &fnorm)); in SNESSolve_Composite()
716 PetscCall(VecNorm(F, NORM_2, &fnorm)); /* fnorm <- ||F|| */ in SNESSolve_Composite()
718 SNESCheckFunctionDomainError(snes, fnorm); in SNESSolve_Composite()
721 snes->norm = fnorm; in SNESSolve_Composite()
726 PetscCall(SNESConverged(snes, 0, 0.0, 0.0, fnorm)); in SNESSolve_Composite()
744 PetscCall(SNESCompositeApply_Additive(snes, X, B, F, &fnorm)); in SNESSolve_Composite()
746 PetscCall(SNESCompositeApply_Multiplicative(snes, X, B, F, &fnorm)); in SNESSolve_Composite()
748 PetscCall(SNESCompositeApply_AdditiveOptimal(snes, X, B, F, &fnorm)); in SNESSolve_Composite()
761 PetscCall(SNESVIComputeInactiveSetFnorm(snes, F, X, &fnorm)); in SNESSolve_Composite()
765 PetscCall(VecNormBegin(F, NORM_2, &fnorm)); in SNESSolve_Composite()
769 PetscCall(VecNormEnd(F, NORM_2, &fnorm)); in SNESSolve_Composite()
773 SNESCheckFunctionDomainError(snes, fnorm); in SNESSolve_Composite()
783 snes->norm = fnorm; in SNESSolve_Composite()
789 PetscCall(SNESConverged(snes, snes->iter, xnorm, snorm, fnorm)); in SNESSolve_Composite()