>From git blame:
61d5036a (Garth N. Wells 2014-02-28 22:11:14 +0000 132) #ifdef
ENABLE_PETSC_SNES
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 133) else if
(std::string(parameters["nonlinear_solver"]) == "snes")
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 134) {
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 135) // Create SNES
solver and set parameters
543a756a (Garth N. Wells 2014-01-22 15:54:46 +0000 136) if
(!snes_solver)
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 137) {
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 138) // Create
Newton solver and set parameters
b50a82eb (Anders Logg 2014-02-10 21:35:33 +0100 139) snes_solver
= std::shared_ptr<PETScSNESSolver>(new PETScSNESSolver());
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 140) }
676f6644 (Patrick Farrell 2012-10-15 20:41:48 +0100 141)
snes_solver->parameters.update(parameters("snes_solver"));
--
Anders
tors 18 juni 2015 kl 10:51 skrev Garth N. Wells <[email protected]>:
> When did PETSc SNES code slip into NonlinearVariationalSolver? It
> obviously shouldn't be in there because NonlinearVariationalSolver is
> not specific to a linear algebra backend.
>
> Garth
> _______________________________________________
> fenics mailing list
> [email protected]
> http://fenicsproject.org/mailman/listinfo/fenics
>
_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics