On Fri, 30 Apr 2010, Derek Gaston wrote:

> On Apr 30, 2010, at 12:29 PM, Roy Stogner wrote:
>
>> Personally I'd prefer turning residual/jacobian/matvec into functor
>> objects over adding a System* or void* state argument.
>
> Hmmm.... I think I prefer the object-oriented approach over this...
> but I'm not married to it.

I went a little *too* OO with FEMSystem - in hindsight there should
have been a separate subclassable Physics object to attach which
included the residual evaluation functions, and requiring subclassing
of FEMSystem itself was more work and less flexible.

> I think for now I'm just going to modify the signatures of the
> callback to provide the System being solved... and think about
> grander ideas later.
>
> Objections?

Yes - doing so with the existing functions would break backwards
compatibility for other NonlinearSystem users; doing so by adding new
functions would make the API redundant and confusing, especially if we
had to do so again later for whatever grander idea we settle on.

If you're up to being a guinea pig on the DiffSolver(ImplicitSystem)
combination then let me know and I'll do that now; if not then I'd
suggest a private fork until we've got time to put the "grander ideas"
in place.
---
Roy

------------------------------------------------------------------------------
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to