sfepy/sfepy — Issue #81: nonlinear solver api
Author: rc
Created: 2012-01-30 10:25:40+00:00
State: open

Instead of an evaluator instance, pass to nonlinear solvers a function
returning the residual and (optionally) a function computing the jacobian.

This has two main aims:
1. simplification: evaluator is a sfepy concept, not needed in an abstract
nonlinear solver setting - just the functions are needed.
2. quasi-newton (and other) methods do not need the jacobian at all.

Then we could interface some solvers from scipy.optimize.

Migrated from http://code.google.com/p/sfepy/issues/detail?id=77

earlier comments

robert.cimrman said, at 2009-03-06T09:27:49.000Z:

The API is changed now, see [1]:

NonlinearSolver.__call__( self, state0, conf = None, fun = None, fun_grad = None,
lin_solver = None, status = None )

The newton solver (nls.py) works well. The Oseen solver has not been yet migrated,
but this is another issue.

[1] http://git.sympy.org/?p=sfepy.git;a=commit;h=a91176bbe15fcae4d4f3941bfcb0154f013fbdbd