[petsc-users] Poor multigrid convergence in parallel
Jed Brown
jed at jedbrown.org
Tue Jul 29 13:37:12 CDT 2014
Lawrence Mitchell <lawrence.mitchell at imperial.ac.uk> writes:
> So my approach was to transfer using projection and then use riesz
> representation to get the residual from the dual space back into the
> primal space so I can apply the operator at the next level. Is there
> an obvious reason why this is worse than the transpose of
> prolongation? The analysis I've read typically approaches from an FD
> angle, which doesn't always obviously (at least to me) map into FE
> speak. In particular, moving forward, I'm interested in GMG for
> H(div) problems, for which the analysis I'm aware of uses projections
> to move residuals between levels (for example, Arnold, Falk and
> Winther Num Math 85:197 (2000)).
FE multigrid usually talks about embedding of spaces. If I have a
continuous function f and want to evaluate
\int v_i f
for each coarse basis function, I can do it by quadrature directly or I
can choose a large space containing v_i, integrate for all basis
functions w_j in that larger space, then sum up those fine-grid
contributions. This amounts to the transpose of interpolation, but is
exact in the sense that it is equivalent to integrating against v_i
directly using a suitable quadrature.
>> Integration is the transpose of your prolongation. We can do a precise
>> analysis, but I expect that you'll see slightly better convergence if
>> you modify this operator.
>
> So I coded this up, I only have the matrix-free application of the
> prolongation, so it was not just taking the transpose. I get
> marginally better convergence for this problem, although it's almost a
> wash.
Good to hear it's at least as good. Now to make FMG work...
>> I would also recommend trying FMG soon. You should be able to converge
>> in one F-cycle, and that will be faster than V-cycles with Krylov.
>
> This is just -pc_mg_type full, right? Given that I only have
> matrix-free transfer operators do I need to explicitly set do
> PCMGSetRscale such that the state is restricted correctly?
If you want FAS, you should implement state restriction as nodal
injection. State restriction should be as accurate as possible on
low-frequency modes, but does not require damping aliased high-frequency
modes.
> If I just select -pc_mg_type full, I take more than one Krylov
> iteration to converge.
You have to compare to discretization error. For example, HPGMG-FE
computes errors against an analytic solution, and delivers the design
third-order accuracy using 3,1 cycles.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140729/184467cf/attachment-0001.pgp>
More information about the petsc-users
mailing list