Not sure if you would need API additions. Can't everything you describe be<br>handled through defining the grid, operator, residual, and projections?<br><br> Matt<br><br><div class="gmail_quote">On Sun, Dec 13, 2009 at 8:59 AM, Jed Brown <span dir="ltr"><<a href="mailto:jed@59a2.org">jed@59a2.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">I can think of a few ways to implement the following multilevel scheme,<br>
but I'm not sure if it's possible/desirable to have DMMG to manage it.<br>
<br>
Finest level (A) : DMComposite[DA_2D(dof=1),DA_3D(dof=4+)]<br>
Intermediate level (B) : DM_2D(dof=3)<br>
Coarsest levels (C1) : DM_2D(dof=1)<br>
OR (C2) : DM_2D(dof=3)<br>
<br>
No matrices are assembled on level A, but the smoother involves 1D<br>
solves within columns. Restriction A->B involves integration and<br>
discarding "slow" quantities. Assembly is available for Level B and<br>
higher matrices. There are two coarsening strategies after B, one<br>
involves a fieldsplit where the coarsest grids are only for a scalar<br>
problem, other coarsens B directly.<br>
<br>
I think grid sequencing and nonlinear multigrid are not important here<br>
because level B does not contain the long time scales for which<br>
globalization would be challenging. So this hierarchy is strictly for<br>
preconditioning. The DMMG interface is rather different from other<br>
components and I recall Barry saying he would like to eventually get rid<br>
of it. Is there an advantage to using it here? Unless I'm missing<br>
something, it would require some additions to the API (which I can do if<br>
it is the right thing to do).<br>
<font color="#888888"><br>
Jed<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener<br>