changes to SNES

Lisandro Dalcin dalcinl at
Fri Aug 31 10:10:41 CDT 2007

There are some things broken in SNES, and others that could be
improved. In particular, I am going to make sure SNES take ownership
and correctly manage reference counting of all the user provided
vectors, that is:

- function vector (passed in SNESSetFunction)
- solution vector (passed in SNESSolve/SNESSetSolution)
- afine vector (passed in SNESSolve/SNESSetRhs)

All this is similar to what I did in the past for KSP

I almost sure all those changes are completelly backward compatible.
For example, the user was in charge of calling VecDestroy() with the
provided function vector, but after calling SNESSolve. Now, users are
able to call it after SNESSetFunction is called, so they do not need
to mantain a reference to the function vector. The same applies to
solution and afine vectors.

So I want to ask you: can I push this in release-2.3.3?

Lisandro Dalcín
Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
PTLC - Güemes 3450, (3000) Santa Fe, Argentina
Tel/Fax: +54-(0)342-451.1594

More information about the petsc-dev mailing list