[petsc-users] Customized Jacobi-Vector action approximation

Barry Smith bsmith at mcs.anl.gov
Sat May 31 11:07:15 CDT 2014


  You might consider trying some of the non-Newton based nonlinear solvers now available in the development version of PETSc http://www.mcs.anl.gov/petsc/developers/index.html  Here is a list of them see their manual pages for more details 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140531/e06feddd/attachment.html>
-------------- next part --------------



On May 31, 2014, at 10:02 AM, Jonas Mairhofer <mairhofer at itt.uni-stuttgart.de> wrote:

> Hi all,
> 
> I am using PETSc to solve a system of nonlinear equations arising from Density Functional Theory. Depending on the actual problem setup the residulas of the matrix-free linear solver (GMRES)
> stagnate and the nonlinear system converges only slowly.
> Besides preconditioning my second idea to improve the performance of the linear solver was to use a higher order approximation of the Jacobi-vector product. Therefore, I am trying to write a user defined subroutine that calculates the approximation of the matrix-free Jacobi-Vector product, i.e. I would like to have a routine which can replace the default 1st order approximation
> 
> J(x)*v  = (F(x+eps*v) - F(x) ) / eps
> 
> for instance by a 2nd order approximation such as
> 
> J(x)*v = (F(x+eps*v) - F(x-eps*v) ) / 2eps
> 
> So assuming that I have a subroutine which claculates the approximation of J(x)*v, how do I get PETSc to use this result in the SNES solver?
> 
> Thank you very much,
> Jonas



More information about the petsc-users mailing list