Defining a custom preconditioner with FEniCS Forms in the NonlinearVariationalProblem interface

11 months ago by
I read in the release of FEniCS 2017.1 that there is now support for custom precondtioners defined in FEniCS forms using NewtonSolver, PETScSNESSolver and PETScTAOSolver.

Is there a way to access this and set "J_pc" through the NonlinearVariationalProblem interface?
Community: FEniCS Project
Have you discovered fenics CBC block yet?
written 11 months ago by pf4d  
I have not used it yet. Is there a simple example code of implementing the poisson problem with one of the other interfaces such as NewtonSolver rather than using the NonlinearVariationalProblem with J_pc, if NonlinearVariationalProblem can not be fed a preconditioner?
written 11 months ago by Joshua Chen  

3 Answers

10 months ago by
To anyone who is curious, to do this, one can simply define a problem class, with the appropriate methods for F, J, and J_pc. You can then use either dolfin or PETSc solvers.
11 months ago by
Is there an alternative of using CBC Block and providing a solver with J_pc? From a first pass reading, it seems that we have to use the PETScSNES solver to use J_pc? Is this correct?
11 months ago by
For best control of the solution process with preconditioners, I suggest cbc.block:
Please login to add an answer/comment or follow this question.

Similar posts:
Search »