[petsc-users] on SNESSetJacobian semantics
Marco Zocca
zocca.marco at gmail.com
Thu Oct 22 09:20:35 CDT 2015
The signature of SNESSetJacobian is
PetscErrorCode SNESSetJacobian(SNES snes,Mat Amat,Mat Pmat,PetscErrorCode
(*J)(SNES,Vec,Mat,Mat,void*),void *ctx)
however it would seem redundant to supply both a constant matrix and a
function to compute the Jacobian.
The manual says of J "(if NULL then SNES retains any previously set value":
this would only apply to linear functions, is this correct?
Why then are there not two monomorphic "SetJacobian" functions, one for
linear maps that wouldn't require recomputation and one for every other
case ?
Coming from a functional background, I find reasoning with "NULL" to be
very error-prone.
Thank you,
Marco
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20151022/a81ab14c/attachment.html>
More information about the petsc-users
mailing list