Barry and Jed, Thank you for your answers. I think I need to learn more about domain decomposition as I am a bit confused. Is it true that we are using BiCGstab here to solve the system of equations, using Additive Schwartz as a domain decomposition preconditioner, and that precondition matrix for each block is preconditioned by ilu[0]?
Thanks, On Thu, Oct 4, 2018 at 5:53 PM Smith, Barry F. <bsm...@mcs.anl.gov> wrote: > > Since > > KSP Object: (flow_sub_) 1 MPI processes > type: preonly > > this means only a single iteration of the inner solver is used so the > numbers in red are not used. > > You could do something like -flow_ksp_type fgmres -flow_sub_ksp_type gmres > -flow_sub_ksp_rtol 1.e-2 but it wouldn't help maters. Likely the current > values are the best. > > Barry > > > > On Oct 4, 2018, at 5:44 PM, HeeHo Park <heeho.p...@gmail.com> wrote: > > > > Hi, I'm running PFLOTRAN and in PFLOTRAN, we have flow_ and flow_sub_ > processes. I was wondering what the red underlined values meant (each block > tolerance?) and how to change them (would it affect convergence?). Blue > marked bold values are changed from the default values for linear solvers. > > > > FLOW Linear Solver > > solver: bcgs > > preconditioner: asm > > atol: 1.000000E-10 > > rtol: 1.000000E-10 > > dtol: 1.000000E+04 > > maximum iteration: 10000 > > KSP Object: (flow_) 8 MPI processes > > type: bcgs > > maximum iterations=10000, initial guess is zero > > tolerances: relative=1e-10, absolute=1e-10, divergence=10000. > > left preconditioning > > using PRECONDITIONED norm type for convergence test > > PC Object: (flow_) 8 MPI processes > > type: asm > > Additive Schwarz: total subdomain blocks = 8, amount of overlap = 1 > > Additive Schwarz: restriction/interpolation type - RESTRICT > > [0] number of local blocks = 1 > > [1] number of local blocks = 1 > > [2] number of local blocks = 1 > > [3] number of local blocks = 1 > > [4] number of local blocks = 1 > > [5] number of local blocks = 1 > > [6] number of local blocks = 1 > > [7] number of local blocks = 1 > > Local solve info for each block is in the following KSP and PC > objects: > > - - - - - - - - - - - - - - - - - - > > [0] local block number 0, size = 1389 > > KSP Object: (flow_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 DEFAULT norm type for convergence test > > PC Object: (flow_sub_) 1 MPI processes > > type: ilu > > PC has not been set up so information may be incomplete > > out-of-place factorization > > 0 levels of fill > > tolerance for zero pivot 2.22045e-14 > > using diagonal shift on blocks to prevent zero pivot [INBLOCKS] > > matrix ordering: natural > > linear system matrix = precond matrix: > > Mat Object: (flow_) 1 MPI processes > > type: seqbaij > > rows=1389, cols=1389, bs=3 > > total: nonzeros=20025, allocated nonzeros=20025 > > total number of mallocs used during MatSetValues calls =0 > > block size is 3 > > - - - - - - - - - - - - - - - - - - > > > > -- > > HeeHo Daniel Park > > -- HeeHo Daniel Park