<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi,<div class=""><br class=""></div><div class="">I'm working on implementing pseudo arc-length continuation using PETSc to do the Newton solves. Right now I'm just working with simple structured meshes, so I'm using 1- & 2-D DMDAs, and I'm trying to make use of DMComposite to handle both the PDE and the pseudo arc-length constraint. I found a similar thread from a while back (<a href="https://lists.mcs.anl.gov/mailman/htdig/petsc-users/2011-October/010373.html" class="">https://lists.mcs.anl.gov/mailman/htdig/petsc-users/2011-October/010373.html</a>) but some of the suggestions appear to be outdated (e.g. DMCompositeAddArray has been removed). So, I guess my questions are:</div><div class=""><br class=""></div><div class="">- DMRedundant seems to be the preferred way to do this. Is there any documentation available? I've looked over the DMRedundantCreate man page (<a href="http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/DM/DMRedundantCreate.html" class="">http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/DM/DMRedundantCreate.html</a>) and the 2 examples, but am still unclear how this works. </div><div class=""><br class=""></div><div class="">- Adding arrays to the DMComposite. So my system involves a bordered, banded matrix; the whole matrix is n+1 x n+1 in size, with the inner n x n being the diagonal matrix resulting from finite differences, the n + 1 column coming from the parameter (e.g. lambda in a Bratu problem), and the n + 1 row coming from the pseudo arc-length constraint. Conceptually, I see it as just "sticking" an extra row and column onto my existing DMDA, but I'm not sure how to do that with a combination of DMRedundant and DMComposite. For example, how do I tell PETSc which dimension to use (i.e. adding a row vs adding a column). </div><div class=""><br class=""></div><div class="">- I'm providing routines to evaluate the function and the Jacobian. Do I need to do separate functions for each DM in my composite DM? That is, a function and Jacobian for the PDE portion and a separate set of functions for the arc-length constraint? Or do I just need to provide one and SNES is smart to figure things out for the composite DM? I guess I'm unclear how the coupling is handled.</div><div class=""><br class=""></div><div class="">Thanks for your help.</div><div class="">
<br class=""></div><div class="">Brian Skjerven</div></body></html>