This is about removing edges when creating aggregates. Consider diffusion with an anisotropic conductivity tensor. If you drop connections (do not aggregate across) in the small-conductivity direction, then your aggregates will be aligned with the high conductivity, yielding what is called semi-coarsening in the MG literature. If you don't drop any connections in the strength graph, then you get larger isotropic aggregates and thus your coarse space will be inadequate.
Manav Bhatia <[email protected]> writes: > I am trying to follow the meaning of this note from the manual: > > “ GAMG removes small values from the graph with this threshold, and thus > reducing the coupling in the graph and a different (perhaps better) coarser > set of points" > > So, I understand that increasing the value of threshold will result in larger > number of connectivity edges to be dropped in the coarsening step. > > However, conceptually I think of the connectivity in the Jacobian matrix as > the off-diagonal terms, which are critical to defining the coupled nature of > the dofs in the problem. If I understand the manual correctly (which I am > likely not) AMG prefers that in the coarsening step more of these couplings > be dropped to enhance convergence (?). > > I can’t quite reconcile this with the potentially disastrous prospect of > dropping couplings in the original matrix (without MG). But, somehow it works > favorably for the coarsening step in a MG (?). > > I would appreciate some guidance. > > Regards, > Manav > >> On Oct 29, 2018, at 1:57 PM, Jed Brown <[email protected]> wrote: >> >> Manav Bhatia <[email protected]> writes: >> >>> I am experimenting with the threshold parameter. >>> >>> As described in the manual: >>> https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCGAMGSetThreshold.html >>> >>> <https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/PC/PCGAMGSetThreshold.html> >>> >>> >>> “ Conversely reducing the threshold increases the rate of coarsening >>> (aggressive coarsening) and thereby reduces the complexity of the coarse >>> grids, and generally results in slower solver converge rates." >>> >>> >>> I did some experimentation for my problem: >>> >>> 1) -pc_mg_levels 3 -mg_levels_ksp_max_it 3 -pc_gamg_square_graph 1 >>> -pc_gamg_threshold 0 : 22 KSP iterations, 39 seconds >>> 2) -pc_mg_levels 3 -mg_levels_ksp_max_it 3 -pc_gamg_square_graph 1 >>> -pc_gamg_threshold 0.5 : Did not converge in over 1000 KSP iterations >> >> 0.5 is enormous and likely results in "weird" aggregates. Try 0.001 to >> 0.05 for example. You can see the coarsening rate and grid complexity >> in -ksp_view output. >> >>> According to the manual reducing the threshold value would result in slower >>> convergence rates. However, I am observing opposite behavior. >>> >>> Is this problem specific? Or maybe I am misunderstanding something here. >>> >>> Also, I am assuming that the threshold refers to some parameter in the >>> connectivity graph, which is independent of the entries in the matrix. So, >>> the value of threshold is independent of the magnitudes of the entries in >>> the matrix (?). >> >> Yeah, the standard strength measure is >> >> |a_{ij}| / sqrt(|a_{ii}| |a_{jj}|) >> >>> I would appreciate some guidance here. >>> >>> Regards, >>> Manav >>> >>>> On Oct 29, 2018, at 1:03 PM, Jed Brown <[email protected]> wrote: >>>> >>>> Manav Bhatia <[email protected]> writes: >>>> >>>>> I also observed that the number of KSP iterations increases with an >>>>> increase in the levels of AMG. Is this true, in general, for all/most >>>>> applications? >>>> >>>> Adding levels replaces a direct solve with a deeper V-cycle. When MG is >>>> behaving well, this makes little difference because the coarse >>>> approximations are no worse than the approximations made in the first >>>> coarsening (from fine level to first coarsened level). But there are >>>> many stubborn problems for which it does hurt, as you have seen.
