[petsc-users] Bug in VecNorm, 3.20.3

michael at paraffinalia.co.uk michael at paraffinalia.co.uk
Tue Jan 23 10:39:46 CST 2024


Hello,

I have used the GMRES solver in PETSc successfully up to now, but on 
installing the most recent release, 3.20.3, the solver fails by exiting 
early. Output from the code is:

lt-nbi-solve-laplace: starting PETSc solver [23.0537]
   0 KSP Residual norm < 1.e-11
Linear solve converged due to CONVERGED_ATOL iterations 0
lt-nbi-solve-laplace: 0 iterations [23.0542] (22.9678)

and tracing execution shows the norm returned by VecNorm to be 0.

If I modify the function by commenting out line 217 of

   src/vec/vec/interface/rvector.c

   /* if (flg) PetscFunctionReturn(PETSC_SUCCESS); */

the code executes correctly:

lt-nbi-solve-laplace: starting PETSc solver [22.9392]
   0 KSP Residual norm 1.10836
   1 KSP Residual norm 0.0778301
   2 KSP Residual norm 0.0125121
   3 KSP Residual norm 0.00165836
   4 KSP Residual norm 0.000164066
   5 KSP Residual norm 2.12824e-05
   6 KSP Residual norm 4.50696e-06
   7 KSP Residual norm 5.85082e-07
Linear solve converged due to CONVERGED_RTOL iterations 7

My compile options are:

  PETSC_ARCH=linux-gnu-real ./configure --with-mpi=0 
--with-scalar-type=real --with-threadsafety --with-debugging=0 
--with-log=0 --with-openmp

uname -a returns:

5.15.80 #1 SMP PREEMPT Sun Nov 27 13:28:05 CST 2022 x86_64 Intel(R) 
Core(TM) i5-6200U CPU @ 2.30GHz GenuineIntel GNU/Linux



More information about the petsc-users mailing list