Thank you for your reply.
I set the relative tolerance of 1e-10, below is the output with
ksp_monitor_true_residual,

step 1 (converged):

0 KSP unpreconditioned resid norm 5.853072011788e-01 true resid norm 5.853072011788e-01 ||r(i)||/||b|| 1.000000000000e+00 1 KSP unpreconditioned resid norm 1.263467051263e-02 true resid norm 1.263467051263e-02 ||r(i)||/||b|| 2.158639170539e-02 2 KSP unpreconditioned resid norm 1.341051880494e-03 true resid norm 1.341051880494e-03 ||r(i)||/||b|| 2.291193202122e-03 3 KSP unpreconditioned resid norm 5.281711107599e-04 true resid norm 5.281711107599e-04 ||r(i)||/||b|| 9.023827311473e-04 4 KSP unpreconditioned resid norm 2.265161267248e-04 true resid norm 2.265161267248e-04 ||r(i)||/||b|| 3.870038268256e-04 5 KSP unpreconditioned resid norm 6.083108409953e-05 true resid norm 6.083108409954e-05 ||r(i)||/||b|| 1.039301822650e-04 6 KSP unpreconditioned resid norm 2.049038801905e-05 true resid norm 2.049038801906e-05 ||r(i)||/||b|| 3.500792058903e-05 7 KSP unpreconditioned resid norm 4.908575378578e-06 true resid norm 4.908575378575e-06 ||r(i)||/||b|| 8.386323231099e-06 8 KSP unpreconditioned resid norm 1.160371295964e-06 true resid norm 1.160371295960e-06 ||r(i)||/||b|| 1.982499606399e-06 9 KSP unpreconditioned resid norm 2.993349323170e-07 true resid norm 2.993349323154e-07 ||r(i)||/||b|| 5.114150854671e-07 10 KSP unpreconditioned resid norm 6.423860393220e-08 true resid norm 6.423860392241e-08 ||r(i)||/||b|| 1.097519452913e-07 11 KSP unpreconditioned resid norm 1.486343352971e-08 true resid norm 1.486343352542e-08 ||r(i)||/||b|| 2.539424339131e-08 12 KSP unpreconditioned resid norm 3.388518888745e-09 true resid norm 3.388518889406e-09 ||r(i)||/||b|| 5.789299845588e-09 13 KSP unpreconditioned resid norm 8.414456498118e-10 true resid norm 8.414456551004e-10 ||r(i)||/||b|| 1.437613706795e-09 14 KSP unpreconditioned resid norm 2.052670281766e-10 true resid norm 2.052670332352e-10 ||r(i)||/||b|| 3.506996545092e-10 15 KSP unpreconditioned resid norm 4.739342260680e-11 true resid norm 4.739342219912e-11 ||r(i)||/||b|| 8.097187614243e-11
Linear solve converged due to CONVERGED_RTOL iterations 15
KSP Object: 1 MPI processes
  type: fgmres
restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement
    happy breakdown tolerance 1e-30
  maximum iterations=10000, nonzero initial guess
  tolerances:  relative=1e-10, absolute=1e-50, divergence=10000.
  right preconditioning
  using UNPRECONDITIONED norm type for convergence test
PC Object: 1 MPI processes
  type: fieldsplit
    FieldSplit with Schur preconditioner, factorization FULL
Preconditioner for the Schur complement formed from Sp, an assembled approximation to S, which uses A00's diagonal's inverse
    Split info:
    Split number 0 Defined by IS
    Split number 1 Defined by IS
    KSP solver for A00 block
      KSP Object: (fieldsplit_0_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using NONE norm type for convergence test
      PC Object: (fieldsplit_0_) 1 MPI processes
        type: hypre
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix = precond matrix:
        Mat Object: (fieldsplit_0_) 1 MPI processes
          type: seqaij
          rows=28578, cols=28578
          total: nonzeros=653916, allocated nonzeros=653916
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
    KSP solver for S = A11 - A10 inv(A00) A01
      KSP Object: (fieldsplit_1_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using NONE norm type for convergence test
      PC Object: (fieldsplit_1_) 1 MPI processes
        type: hypre
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix followed by preconditioner matrix:
        Mat Object: (fieldsplit_1_) 1 MPI processes
          type: schurcomplement
          rows=3874, cols=3874
            Schur complement A11 - A10 inv(A00) A01
            A11
              Mat Object: (fieldsplit_1_) 1 MPI processes
                type: seqaij
                rows=3874, cols=3874
                total: nonzeros=0, allocated nonzeros=0
total number of mallocs used during MatSetValues calls =0 using I-node routines: found 775 nodes, limit used is 5
            A10
              Mat Object: 1 MPI processes
                type: seqaij
                rows=3874, cols=28578
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
            KSP of A00
              KSP Object: (fieldsplit_0_) 1 MPI processes
                type: preonly
                maximum iterations=10000, initial guess is zero
tolerances: relative=1e-05, absolute=1e-50, divergence=10000.
                left preconditioning
                using NONE norm type for convergence test
              PC Object: (fieldsplit_0_) 1 MPI processes
                type: hypre
                  HYPRE BoomerAMG preconditioning
                    Cycle type V
                    Maximum number of levels 25
                    Maximum number of iterations PER hypre call 1
                    Convergence tolerance PER hypre call 0.
                    Threshold for strong coupling 0.25
                    Interpolation truncation factor 0.
                    Interpolation: max elements per row 0
                    Number of levels of aggressive coarsening 0
                    Number of paths for aggressive coarsening 1
                    Maximum row sums 0.9
                    Sweeps down         1
                    Sweeps up           1
                    Sweeps on coarse    1
                    Relax down          symmetric-SOR/Jacobi
                    Relax up            symmetric-SOR/Jacobi
                    Relax on coarse     Gaussian-elimination
                    Relax weight  (all)      1.
                    Outer relax weight (all) 1.
                    Using CF-relaxation
                    Not using more complex smoothers.
                    Measure type        local
                    Coarsen type        Falgout
                    Interpolation type  classical
                linear system matrix = precond matrix:
                Mat Object: (fieldsplit_0_) 1 MPI processes
                  type: seqaij
                  rows=28578, cols=28578
                  total: nonzeros=653916, allocated nonzeros=653916
total number of mallocs used during MatSetValues calls =0
                    not using I-node routines
            A01
              Mat Object: 1 MPI processes
                type: seqaij
                rows=28578, cols=3874
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
        Mat Object: 1 MPI processes
          type: seqaij
          rows=3874, cols=3874
          total: nonzeros=77704, allocated nonzeros=77704
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
  linear system matrix = precond matrix:
  Mat Object: 1 MPI processes
    type: nest
    rows=32452, cols=32452
      Matrix object:
        type=nest, rows=2, cols=2
        MatNest structure:
(0,0) : prefix="fieldsplit_0_", type=seqaij, rows=28578, cols=28578
        (0,1) : type=seqaij, rows=28578, cols=3874
        (1,0) : type=seqaij, rows=3874, cols=28578
(1,1) : prefix="fieldsplit_1_", type=seqaij, rows=3874, cols=3874

step 2 (NOT converged):

Linear solve did not converge due to DIVERGED_NANORINF iterations 0
KSP Object: 1 MPI processes
  type: fgmres
restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement
    happy breakdown tolerance 1e-30
  maximum iterations=10000, nonzero initial guess
  tolerances:  relative=1e-10, absolute=1e-50, divergence=10000.
  right preconditioning
  using UNPRECONDITIONED norm type for convergence test
PC Object: 1 MPI processes
  type: fieldsplit
    FieldSplit with Schur preconditioner, factorization FULL
Preconditioner for the Schur complement formed from Sp, an assembled approximation to S, which uses A00's diagonal's inverse
    Split info:
    Split number 0 Defined by IS
    Split number 1 Defined by IS
    KSP solver for A00 block
      KSP Object: (fieldsplit_0_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using DEFAULT norm type for convergence test
      PC Object: (fieldsplit_0_) 1 MPI processes
        type: hypre
        PC has not been set up so information may be incomplete
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix = precond matrix:
        Mat Object: (fieldsplit_0_) 1 MPI processes
          type: seqaij
          rows=28578, cols=28578
          total: nonzeros=653916, allocated nonzeros=653916
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
    KSP solver for S = A11 - A10 inv(A00) A01
      KSP Object: (fieldsplit_1_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using DEFAULT norm type for convergence test
      PC Object: (fieldsplit_1_) 1 MPI processes
        type: hypre
        PC has not been set up so information may be incomplete
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix followed by preconditioner matrix:
        Mat Object: (fieldsplit_1_) 1 MPI processes
          type: schurcomplement
          rows=3874, cols=3874
            Schur complement A11 - A10 inv(A00) A01
            A11
              Mat Object: (fieldsplit_1_) 1 MPI processes
                type: seqaij
                rows=3874, cols=3874
                total: nonzeros=0, allocated nonzeros=0
total number of mallocs used during MatSetValues calls =0 using I-node routines: found 775 nodes, limit used is 5
            A10
              Mat Object: 1 MPI processes
                type: seqaij
                rows=3874, cols=28578
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
            KSP of A00
              KSP Object: (fieldsplit_0_) 1 MPI processes
                type: preonly
                maximum iterations=10000, initial guess is zero
tolerances: relative=1e-05, absolute=1e-50, divergence=10000.
                left preconditioning
                using DEFAULT norm type for convergence test
              PC Object: (fieldsplit_0_) 1 MPI processes
                type: hypre
                PC has not been set up so information may be incomplete
                  HYPRE BoomerAMG preconditioning
                    Cycle type V
                    Maximum number of levels 25
                    Maximum number of iterations PER hypre call 1
                    Convergence tolerance PER hypre call 0.
                    Threshold for strong coupling 0.25
                    Interpolation truncation factor 0.
                    Interpolation: max elements per row 0
                    Number of levels of aggressive coarsening 0
                    Number of paths for aggressive coarsening 1
                    Maximum row sums 0.9
                    Sweeps down         1
                    Sweeps up           1
                    Sweeps on coarse    1
                    Relax down          symmetric-SOR/Jacobi
                    Relax up            symmetric-SOR/Jacobi
                    Relax on coarse     Gaussian-elimination
                    Relax weight  (all)      1.
                    Outer relax weight (all) 1.
                    Using CF-relaxation
                    Not using more complex smoothers.
                    Measure type        local
                    Coarsen type        Falgout
                    Interpolation type  classical
                linear system matrix = precond matrix:
                Mat Object: (fieldsplit_0_) 1 MPI processes
                  type: seqaij
                  rows=28578, cols=28578
                  total: nonzeros=653916, allocated nonzeros=653916
total number of mallocs used during MatSetValues calls =0
                    not using I-node routines
            A01
              Mat Object: 1 MPI processes
                type: seqaij
                rows=28578, cols=3874
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
        Mat Object: 1 MPI processes
          type: seqaij
          rows=3874, cols=3874
          total: nonzeros=77704, allocated nonzeros=77704
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
  linear system matrix = precond matrix:
  Mat Object: 1 MPI processes
    type: nest
    rows=32452, cols=32452
      Matrix object:
        type=nest, rows=2, cols=2
        MatNest structure:
(0,0) : prefix="fieldsplit_0_", type=seqaij, rows=28578, cols=28578
        (0,1) : type=seqaij, rows=28578, cols=3874
        (1,0) : type=seqaij, rows=3874, cols=28578
(1,1) : prefix="fieldsplit_1_", type=seqaij, rows=3874, cols=3874

HOWEVER, if I do not use -ksp_monitor_true_residual, both two
steps converge.

step 1:
Linear solve converged due to CONVERGED_RTOL iterations 15
KSP Object: 1 MPI processes
  type: fgmres
restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement
    happy breakdown tolerance 1e-30
  maximum iterations=10000, nonzero initial guess
  tolerances:  relative=1e-10, absolute=1e-50, divergence=10000.
  right preconditioning
  using UNPRECONDITIONED norm type for convergence test
PC Object: 1 MPI processes
  type: fieldsplit
    FieldSplit with Schur preconditioner, factorization FULL
Preconditioner for the Schur complement formed from Sp, an assembled approximation to S, which uses A00's diagonal's inverse
    Split info:
    Split number 0 Defined by IS
    Split number 1 Defined by IS
    KSP solver for A00 block
      KSP Object: (fieldsplit_0_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using NONE norm type for convergence test
      PC Object: (fieldsplit_0_) 1 MPI processes
        type: hypre
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix = precond matrix:
        Mat Object: (fieldsplit_0_) 1 MPI processes
          type: seqaij
          rows=28578, cols=28578
          total: nonzeros=653916, allocated nonzeros=653916
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
    KSP solver for S = A11 - A10 inv(A00) A01
      KSP Object: (fieldsplit_1_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using NONE norm type for convergence test
      PC Object: (fieldsplit_1_) 1 MPI processes
        type: hypre
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix followed by preconditioner matrix:
        Mat Object: (fieldsplit_1_) 1 MPI processes
          type: schurcomplement
          rows=3874, cols=3874
            Schur complement A11 - A10 inv(A00) A01
            A11
              Mat Object: (fieldsplit_1_) 1 MPI processes
                type: seqaij
                rows=3874, cols=3874
                total: nonzeros=0, allocated nonzeros=0
total number of mallocs used during MatSetValues calls =0 using I-node routines: found 775 nodes, limit used is 5
            A10
              Mat Object: 1 MPI processes
                type: seqaij
                rows=3874, cols=28578
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
            KSP of A00
              KSP Object: (fieldsplit_0_) 1 MPI processes
                type: preonly
                maximum iterations=10000, initial guess is zero
tolerances: relative=1e-05, absolute=1e-50, divergence=10000.
                left preconditioning
                using NONE norm type for convergence test
              PC Object: (fieldsplit_0_) 1 MPI processes
                type: hypre
                  HYPRE BoomerAMG preconditioning
                    Cycle type V
                    Maximum number of levels 25
                    Maximum number of iterations PER hypre call 1
                    Convergence tolerance PER hypre call 0.
                    Threshold for strong coupling 0.25
                    Interpolation truncation factor 0.
                    Interpolation: max elements per row 0
                    Number of levels of aggressive coarsening 0
                    Number of paths for aggressive coarsening 1
                    Maximum row sums 0.9
                    Sweeps down         1
                    Sweeps up           1
                    Sweeps on coarse    1
                    Relax down          symmetric-SOR/Jacobi
                    Relax up            symmetric-SOR/Jacobi
                    Relax on coarse     Gaussian-elimination
                    Relax weight  (all)      1.
                    Outer relax weight (all) 1.
                    Using CF-relaxation
                    Not using more complex smoothers.
                    Measure type        local
                    Coarsen type        Falgout
                    Interpolation type  classical
                linear system matrix = precond matrix:
                Mat Object: (fieldsplit_0_) 1 MPI processes
                  type: seqaij
                  rows=28578, cols=28578
                  total: nonzeros=653916, allocated nonzeros=653916
total number of mallocs used during MatSetValues calls =0
                    not using I-node routines
            A01
              Mat Object: 1 MPI processes
                type: seqaij
                rows=28578, cols=3874
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
        Mat Object: 1 MPI processes
          type: seqaij
          rows=3874, cols=3874
          total: nonzeros=77704, allocated nonzeros=77704
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
  linear system matrix = precond matrix:
  Mat Object: 1 MPI processes
    type: nest
    rows=32452, cols=32452
      Matrix object:
        type=nest, rows=2, cols=2
        MatNest structure:
(0,0) : prefix="fieldsplit_0_", type=seqaij, rows=28578, cols=28578
        (0,1) : type=seqaij, rows=28578, cols=3874
        (1,0) : type=seqaij, rows=3874, cols=28578
(1,1) : prefix="fieldsplit_1_", type=seqaij, rows=3874, cols=3874

step 2:

Linear solve converged due to CONVERGED_RTOL iterations 1
KSP Object: 1 MPI processes
  type: fgmres
restart=30, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement
    happy breakdown tolerance 1e-30
  maximum iterations=10000, nonzero initial guess
  tolerances:  relative=1e-10, absolute=1e-50, divergence=10000.
  right preconditioning
  using UNPRECONDITIONED norm type for convergence test
PC Object: 1 MPI processes
  type: fieldsplit
    FieldSplit with Schur preconditioner, factorization FULL
Preconditioner for the Schur complement formed from Sp, an assembled approximation to S, which uses A00's diagonal's inverse
    Split info:
    Split number 0 Defined by IS
    Split number 1 Defined by IS
    KSP solver for A00 block
      KSP Object: (fieldsplit_0_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using NONE norm type for convergence test
      PC Object: (fieldsplit_0_) 1 MPI processes
        type: hypre
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix = precond matrix:
        Mat Object: (fieldsplit_0_) 1 MPI processes
          type: seqaij
          rows=28578, cols=28578
          total: nonzeros=653916, allocated nonzeros=653916
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
    KSP solver for S = A11 - A10 inv(A00) A01
      KSP Object: (fieldsplit_1_) 1 MPI processes
        type: preonly
        maximum iterations=10000, initial guess is zero
        tolerances:  relative=1e-05, absolute=1e-50, divergence=10000.
        left preconditioning
        using NONE norm type for convergence test
      PC Object: (fieldsplit_1_) 1 MPI processes
        type: hypre
          HYPRE BoomerAMG preconditioning
            Cycle type V
            Maximum number of levels 25
            Maximum number of iterations PER hypre call 1
            Convergence tolerance PER hypre call 0.
            Threshold for strong coupling 0.25
            Interpolation truncation factor 0.
            Interpolation: max elements per row 0
            Number of levels of aggressive coarsening 0
            Number of paths for aggressive coarsening 1
            Maximum row sums 0.9
            Sweeps down         1
            Sweeps up           1
            Sweeps on coarse    1
            Relax down          symmetric-SOR/Jacobi
            Relax up            symmetric-SOR/Jacobi
            Relax on coarse     Gaussian-elimination
            Relax weight  (all)      1.
            Outer relax weight (all) 1.
            Using CF-relaxation
            Not using more complex smoothers.
            Measure type        local
            Coarsen type        Falgout
            Interpolation type  classical
        linear system matrix followed by preconditioner matrix:
        Mat Object: (fieldsplit_1_) 1 MPI processes
          type: schurcomplement
          rows=3874, cols=3874
            Schur complement A11 - A10 inv(A00) A01
            A11
              Mat Object: (fieldsplit_1_) 1 MPI processes
                type: seqaij
                rows=3874, cols=3874
                total: nonzeros=0, allocated nonzeros=0
total number of mallocs used during MatSetValues calls =0 using I-node routines: found 775 nodes, limit used is 5
            A10
              Mat Object: 1 MPI processes
                type: seqaij
                rows=3874, cols=28578
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
            KSP of A00
              KSP Object: (fieldsplit_0_) 1 MPI processes
                type: preonly
                maximum iterations=10000, initial guess is zero
tolerances: relative=1e-05, absolute=1e-50, divergence=10000.
                left preconditioning
                using NONE norm type for convergence test
              PC Object: (fieldsplit_0_) 1 MPI processes
                type: hypre
                  HYPRE BoomerAMG preconditioning
                    Cycle type V
                    Maximum number of levels 25
                    Maximum number of iterations PER hypre call 1
                    Convergence tolerance PER hypre call 0.
                    Threshold for strong coupling 0.25
                    Interpolation truncation factor 0.
                    Interpolation: max elements per row 0
                    Number of levels of aggressive coarsening 0
                    Number of paths for aggressive coarsening 1
                    Maximum row sums 0.9
                    Sweeps down         1
                    Sweeps up           1
                    Sweeps on coarse    1
                    Relax down          symmetric-SOR/Jacobi
                    Relax up            symmetric-SOR/Jacobi
                    Relax on coarse     Gaussian-elimination
                    Relax weight  (all)      1.
                    Outer relax weight (all) 1.
                    Using CF-relaxation
                    Not using more complex smoothers.
                    Measure type        local
                    Coarsen type        Falgout
                    Interpolation type  classical
                linear system matrix = precond matrix:
                Mat Object: (fieldsplit_0_) 1 MPI processes
                  type: seqaij
                  rows=28578, cols=28578
                  total: nonzeros=653916, allocated nonzeros=653916
total number of mallocs used during MatSetValues calls =0
                    not using I-node routines
            A01
              Mat Object: 1 MPI processes
                type: seqaij
                rows=28578, cols=3874
                total: nonzeros=138180, allocated nonzeros=138180
total number of mallocs used during MatSetValues calls =0
                  not using I-node routines
        Mat Object: 1 MPI processes
          type: seqaij
          rows=3874, cols=3874
          total: nonzeros=77704, allocated nonzeros=77704
          total number of mallocs used during MatSetValues calls =0
            not using I-node routines
  linear system matrix = precond matrix:
  Mat Object: 1 MPI processes
    type: nest
    rows=32452, cols=32452
      Matrix object:
        type=nest, rows=2, cols=2
        MatNest structure:
(0,0) : prefix="fieldsplit_0_", type=seqaij, rows=28578, cols=28578
        (0,1) : type=seqaij, rows=28578, cols=3874
        (1,0) : type=seqaij, rows=3874, cols=28578
(1,1) : prefix="fieldsplit_1_", type=seqaij, rows=3874, cols=3874

Thank you for your help and time.

Kind regards,
Shidi

On 2020-06-05 13:40, Matthew Knepley wrote:
On Fri, Jun 5, 2020 at 7:42 AM Y. Shidi <ys...@cam.ac.uk> wrote:

This algebraic tolerance is strange. Why put it below unit
roundoff?

We are testing a static bubble problem, if the tolerance is 1e-10 it
won't approach static solution.

I do not understand. Every computation in your problem makes errors of
order 1e-15,
since that is the roundoff. Moreover, you cannot expect a solution to
be more accurate
than (condition number * roundoff). I would be surprised if the
condition number is near 1,
since you would not need a solver. So what is going on?

  Thanks,

     Matt

Thanks,
Shidi

On 2020-06-05 11:48, Matthew Knepley wrote:
On Fri, Jun 5, 2020 at 6:12 AM Y. Shidi <ys...@cam.ac.uk> wrote:

Dear developers,

We are using filed splitting method solve saddle point problem.
Below is our ksp configuration:

PetscOptionsSetValue(NULL,"-ksp_type","gmres");
PetscOptionsSetValue(NULL,"-ksp_initial_guess_nonzero","");
PetscOptionsSetValue(NULL,"-ksp_rtol","1e-20");

This algebraic tolerance is strange. Why put it below unit
roundoff?

PetscOptionsSetValue(NULL,"-ksp_converged_reason", "");
PetscOptionsSetValue(NULL,"-pc_type", "fieldsplit");
PetscOptionsSetValue(NULL,"-pc_fieldsplit_type", "schur");
PetscOptionsSetValue(NULL,"-pc_fieldsplit_schur_fact_type",
"lower");
PetscOptionsSetValue(NULL,"-pc_fieldsplit_schur_precondition",
"selfp");
PetscOptionsSetValue(NULL,"-fieldsplit_0_ksp_type", "preonly");
PetscOptionsSetValue(NULL,"-fieldsplit_0_pc_type", "hypre");
PetscOptionsSetValue(NULL,"-fieldsplit_1_ksp_type", "preonly");
PetscOptionsSetValue(NULL,"-fieldsplit_1_pc_type", "hypre");

It can be converged. However, when we turn on the ksp monitor:

PetscOptionsSetValue(NULL,"-ksp_monitor_true_residual", "");

It won't converge. It seems very odd, I am wondering why it
happens.

Can you try it with a relative tolerance of 1e-10, and send the
output
(with -ksp_view as well).

Thanks,

Matt

Thank you for your time and help.

Kind regards,
Shidi

--

What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to
which
their experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ [1]


Links:
------
[1] http://www.cse.buffalo.edu/~knepley/

--

What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which
their experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ [1]


Links:
------
[1] http://www.cse.buffalo.edu/~knepley/

Reply via email to