<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>