← Back to team overview

dolfin team mailing list archive

Re: NonlinearVariationalProblem interface

 

On Mon, Jul 04, 2011 at 04:47:46PM +0100, Garth N. Wells wrote:
>
>
> On 04/07/11 16:44, Anders Logg wrote:
> > On Mon, Jul 04, 2011 at 04:39:04PM +0100, Garth N. Wells wrote:
> >> I'm not sold on the NonlinearVariationalProblem interface. I would
> >> prefer a constructor takes the Jacobian as an argument. It's much
> >> cleaner to do things at construction and removes the need to later
> >> attach the Jacobian.
> >
> > The point is that one should be able to define a nonlinear problem
> > with or without a Jacobian. Not all nonlinear solvers need a Jacobian.
> >
>
> That's why I wrote 'a' constructor. We can have two versions.

Yes, that's an option. The drawback with that is that it would double
the number of constructors (from 6 to 12) but it's a small thing to
fix. I wouldn't mind moving it to the constructor.

--
Anders


> > I agree that it's in general cleaner to require as much data as
> > possible at the time of construction, but think that the handling of
> > the Jacobian data is quite clean: it's a shared pointer that may be
> > null and the nonlinear solver can call has_jacobian to check whether
> > it has been specified.
> >
>
> Which we can still do with two constructors.


Follow ups

References