<div dir="ltr"><div dir="auto">Ok, thanks for the suggestions.  <div class="gmail_default" style="font-size:small;display:inline">​I'd like to check that I understand the approach.</div></div><div dir="auto"><div class="gmail_default" style="font-size:small;display:inline"><br></div></div><div dir="auto"><div class="gmail_default" style="font-size:small;display:inline">I create one DMDA for the variables to be solved by the SNES.  That DMDA will be coarsened and refined by the options I pass to e.g. FAS.  In my user context struct, I can have a second DMDA for the auxiliary fields.  At each coarsening or refinement of the solution variable DMDA, I add a hook to simultaneously coarsen or refine the auxiliary fields.  I suppose I can store the results of those operations in a third DMDA in the user context struct, because I'll need to access them from the SNES Function and Jacobian routines.  Does that sound right?​</div></div>
</div>