On Mon, Dec 2, 2013 at 5:01 PM, Jed Brown <[email protected]> wrote:
> Matthew Knepley <[email protected]> writes: > > > When you and Peter changed the way SNES used to work, I asked you how I > > should > > change Plex. You told me to do this: > > > > ierr = DMSNESSetFunctionLocal(dm, (PetscErrorCode > > (*)(DM,Vec,Vec,void*)) DMPlexComputeResidualFEM, &user);CHKERRQ(ierr); > > ierr = DMSNESSetJacobianLocal(dm, (PetscErrorCode > > (*)(DM,Vec,Mat,Mat,MatStructure*,void*)) DMPlexComputeJacobianFEM, > > &user);CHKERRQ(ierr); > > Can you find the email? I don't think I would have recommended this. > > > which I did. Moreover, this is how it always worked, namely specifying > the > > local function. > > What exactly are you proposing to replace this? > > DMPlexSNESSetFunctionFEM(), similar to DMDASNESSetFunctionLocal in > src/snes/examples/tutorials/ex5.c and ex19.c. > What exactly is the difference? And now I know that both interfaces are bad because I cannot even tell the difference by looking. Matt -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener
