Thanks Barry, I attach the terminal outputs. From my reading, it seems like 
everything converged alright, no? Usually I get an error message when the 
linear or snes solver doesn't converge.

By the way, I don't think it should matter but for your reference I am doing an 
operator split method in FEniCS where I am alternating between solving two 
system until their solution vectors stop changing between iterations.

Thanks

Correct fluxes

SNES Object: 2 MPI processes
  type: newtonls
  maximum iterations=30, maximum function evaluations=2000
  tolerances: relative=0.99, absolute=1e-05, solution=1e-10
  total number of linear solver iterations=9
  total number of function evaluations=2
  SNESLineSearch Object:   2 MPI processes
    type: basic
    maxstep=1.000000e+08, minlambda=1.000000e-12
    tolerances: relative=1.000000e-08, absolute=1.000000e-15, 
lambda=1.000000e-08
    maximum iterations=1
  KSP Object:   2 MPI processes
    type: gmres
      GMRES: restart=30, using Classical (unmodified) Gram-Schmidt 
Orthogonalization with no iterative refinement
      GMRES: happy breakdown tolerance 1e-30
    maximum iterations=10000, initial guess is zero
    tolerances:  relative=1e-05, absolute=1e-50, divergence=10000
    left preconditioning
    using PRECONDITIONED norm type for convergence test
  PC Object:   2 MPI processes
    type: asm
      Additive Schwarz: total subdomain blocks = 2, amount of overlap = 5
      Additive Schwarz: restriction/interpolation type - NONE
      Local solve is same for all blocks, in the following KSP and PC objects:
    KSP Object:    (sub_)     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:    (sub_)     1 MPI processes
      type: lu
        LU: out-of-place factorization
        tolerance for zero pivot 2.22045e-14
        matrix ordering: nd
        factor fill ratio given 5, needed 8.07489
          Factored matrix follows:
            Matrix Object:             1 MPI processes
              type: seqaij
              rows=22212, cols=22212
              package used to perform factorization: petsc
              total: nonzeros=4959792, allocated nonzeros=4959792
              total number of mallocs used during MatSetValues calls =0
                using I-node routines: found 5553 nodes, limit used is 5
      linear system matrix = precond matrix:
      Matrix Object:       1 MPI processes
        type: seqaij
        rows=22212, cols=22212
        total: nonzeros=614224, allocated nonzeros=614224
        total number of mallocs used during MatSetValues calls =0
          using I-node routines: found 5553 nodes, limit used is 5
    linear system matrix = precond matrix:
    Matrix Object:     2 MPI processes
      type: mpiaij
      rows=41820, cols=41820, bs=4
      total: nonzeros=1161136, allocated nonzeros=1161136
      total number of mallocs used during MatSetValues calls =0
        using I-node (on process 0) routines: found 5009 nodes, limit used is 5
  0 SNES Function norm 2.418625311837e+01 
    0 KSP Residual norm 5.492008726991e-03 
    1 KSP Residual norm 4.662294753714e-06 
    2 KSP Residual norm 1.641881871011e-06 
    3 KSP Residual norm 1.325240892268e-07 
    4 KSP Residual norm 1.021559349793e-07 
    5 KSP Residual norm 9.411877567164e-08 
    6 KSP Residual norm 9.410247634626e-08 
    7 KSP Residual norm 8.716883682711e-08 
    8 KSP Residual norm 7.167112060299e-08 
    9 KSP Residual norm 3.466561784610e-08 
  Linear solve converged due to CONVERGED_RTOL iterations 9
  1 SNES Function norm 6.413093110621e-03 
Nonlinear solve converged due to CONVERGED_FNORM_RELATIVE iterations 1
Fluxes are lost

SNES Object: 3 MPI processes
  type: newtonls
  maximum iterations=30, maximum function evaluations=2000
  tolerances: relative=0.99, absolute=1e-05, solution=1e-10
  total number of linear solver iterations=27
  total number of function evaluations=2
  SNESLineSearch Object:   3 MPI processes
    type: basic
    maxstep=1.000000e+08, minlambda=1.000000e-12
    tolerances: relative=1.000000e-08, absolute=1.000000e-15, 
lambda=1.000000e-08
    maximum iterations=1
  KSP Object:   3 MPI processes
    type: gmres
      GMRES: restart=30, using Classical (unmodified) Gram-Schmidt 
Orthogonalization with no iterative refinement
      GMRES: happy breakdown tolerance 1e-30
    maximum iterations=10000, initial guess is zero
    tolerances:  relative=1e-05, absolute=1e-50, divergence=10000
    left preconditioning
    using PRECONDITIONED norm type for convergence test
  PC Object:   3 MPI processes
    type: asm
      Additive Schwarz: total subdomain blocks = 3, amount of overlap = 5
      Additive Schwarz: restriction/interpolation type - NONE
      Local solve is same for all blocks, in the following KSP and PC objects:
    KSP Object:    (sub_)     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:    (sub_)     1 MPI processes
      type: lu
        LU: out-of-place factorization
        tolerance for zero pivot 2.22045e-14
        matrix ordering: nd
        factor fill ratio given 5, needed 7.55587
          Factored matrix follows:
            Matrix Object:             1 MPI processes
              type: seqaij
              rows=16064, cols=16064
              package used to perform factorization: petsc
              total: nonzeros=3347552, allocated nonzeros=3347552
              total number of mallocs used during MatSetValues calls =0
                using I-node routines: found 4016 nodes, limit used is 5
      linear system matrix = precond matrix:
      Matrix Object:       1 MPI processes
        type: seqaij
        rows=16064, cols=16064
        total: nonzeros=443040, allocated nonzeros=443040
        total number of mallocs used during MatSetValues calls =0
          using I-node routines: found 4016 nodes, limit used is 5
    linear system matrix = precond matrix:
    Matrix Object:     3 MPI processes
      type: mpiaij
      rows=41820, cols=41820, bs=4
      total: nonzeros=1161136, allocated nonzeros=1161136
      total number of mallocs used during MatSetValues calls =0
        using I-node (on process 0) routines: found 3495 nodes, limit used is 5
  0 SNES Function norm 3.156023513435e+04 
    0 KSP Residual norm 2.706691690707e-03 
    1 KSP Residual norm 1.646464508792e-03 
    2 KSP Residual norm 9.170781030862e-04 
    3 KSP Residual norm 6.009481698118e-04 
    4 KSP Residual norm 3.417126712781e-04 
    5 KSP Residual norm 4.787681320432e-05 
    6 KSP Residual norm 4.560454472526e-05 
    7 KSP Residual norm 3.859597601641e-05 
    8 KSP Residual norm 3.673079306728e-05 
    9 KSP Residual norm 3.445974271820e-05 
   10 KSP Residual norm 2.159415537911e-05 
   11 KSP Residual norm 7.543016336165e-06 
   12 KSP Residual norm 7.416944825904e-06 
   13 KSP Residual norm 6.403254025759e-06 
   14 KSP Residual norm 2.644176505099e-06 
   15 KSP Residual norm 2.496415668030e-06 
   16 KSP Residual norm 2.045313649056e-06 
   17 KSP Residual norm 1.722288627483e-06 
   18 KSP Residual norm 1.461651056621e-06 
   19 KSP Residual norm 7.618542869548e-07 
   20 KSP Residual norm 6.221008888244e-07 
   21 KSP Residual norm 3.435033013676e-07 
   22 KSP Residual norm 2.878937008503e-07 
   23 KSP Residual norm 2.595440945017e-07 
   24 KSP Residual norm 1.259062360140e-07 
   25 KSP Residual norm 7.623152596428e-08 
   26 KSP Residual norm 6.607573140865e-08 
   27 KSP Residual norm 4.066679914334e-08 
   28 KSP Residual norm 2.876876789151e-08 
   29 KSP Residual norm 2.034792834785e-08 
  Linear solve converged due to CONVERGED_RTOL iterations 29
  1 SNES Function norm 2.027633283204e+01 

Reply via email to