[petsc-users] Providing matrix vector product yourself for matrix free in SNES

E.T.A.vanderWeide at utwente.nl E.T.A.vanderWeide at utwente.nl
Tue Dec 20 07:24:50 CST 2011


Hi,

I was wondering if it is possible to provide PETSc the matrix vector product yourself for a matrix free computation inside the SNES environment. The reason for asking is that the truncation error in the standard finite difference approach may lead to some noisy behavior for our application. We have found a nice way to get rid off the truncation error completely by using dual numbers for the creation of the Jacobian matrices. The same technique can be used for the matrix vector product inside SNES, but this means that the user has to provide this product to PETSc.

To be more specific. I would like to solve the nonlinear problem F(U) = 0 via the SNES environment using the matrix free option. So similarly to the function SNESSetFunction, which sets the function evaluation routine, I'm seeking for a function that sets the function to compute the matrix vector product dF/dU times V, where U and V are inputs. Is such a function available or is there a different way to provide the matrix vector product yourself?

Thanks,

Edwin
---------------------------------------------------
Edwin van der Weide
Department of Mechanical Engineering
University of Twente
Enschede, the Netherlands
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20111220/bfee7fcc/attachment.htm>


More information about the petsc-users mailing list