anchor.diff:       ! Preconditioned conjugate gradient
        !call pcg(A, b, xl, M, solinf=resStat, resvects_in=.true.)
        t1 = MPI_WTIME()
  -     if (sctls%levels>=1) then
  +     if (sctls%levels>1.or.(numprocs==1.and.sctls%levels==1)) then
          call pcg_weigs(A=A,b=b,x=xl,Msh=M,it=it,cond_num=cond_num, &
             CoarseMtx_=AC,Restrict=Restrict,refactor_=.true.)
        else
  
positive.code:          write (stream,*) 'Not a Cartesian Mesh!!!'
           M=Mesh_New()
           M%ngf=A%nrows
           M%nlf=A%nrows
         else
           call Mesh_BuildSquare(M,n)
         endif
       else ! numprocs>1
         M=Mesh_New()
  
negative.code: 
  !xchk=1.0_rk
  
    call SpMtx_pmvm(b,A,xchk,M)
    !call add_whole_ol(xchk,M)
    !!call Print_Glob_Vect(xchk,M,'global xchk===',rows=.true.)
    !!call Print_Glob_Vect(b,M,'global b===')
    !call MPI_BARRIER(MPI_COMM_WORLD,i)
    !call DOUG_abort('[DOUG main] : testing Ax', -1)
    ! call Print_Glob_Vect(xchk,M,'global xchk===')
  !b=1.0_rk
    nrm=Vect_dot_product(b,b)
    b=b/dsqrt(nrm)
    xchk=xchk/dsqrt(nrm)
  
    select case(sctls%solver)
    case (DCTL_SOLVE_CG)
  