diff --git a/src/ksp/ksp/interface/itcreate.c b/src/ksp/ksp/interface/itcreate.c index de70b14..bdc4301 100644 --- a/src/ksp/ksp/interface/itcreate.c +++ b/src/ksp/ksp/interface/itcreate.c @@ -271,6 +271,11 @@ PetscErrorCode KSPSetNormType(KSP ksp,KSPNormType normtype) ierr = PetscInfo(ksp,"Warning: setting KSPNormType to skip computing the norm\n\ KSP convergence test is implicitly set to KSPConvergedSkip\n");CHKERRQ(ierr); } + if (ksp->normtype != KSP_NORM_NONE && ksp->converged == KSPConvergedSkip) { + void *ctx; + ierr = KSPConvergedDefaultCreate(&ctx);CHKERRQ(ierr); + ierr = KSPSetConvergenceTest(ksp,KSPConvergedDefault,ctx,KSPConvergedDefaultDestroy);CHKERRQ(ierr); + } PetscFunctionReturn(0); }