We lost the mailing list! On 20 Nov 2014, at 12:18, Chris Richardson <[email protected]> wrote:
> On 20/11/2014 11:03, Mikael Mortensen wrote: >> On 20 Nov 2014, at 11:42, Chris Richardson <[email protected]> wrote: >>> On 20/11/2014 10:33, Mikael Mortensen wrote: >>>>> Also, something like: >>>>> mesh = refine(mesh) >>>>> Q2 = FunctionSpace(mesh, "CG", 1) >>>>> F2 = Function(Q2) >>>>> F2.interpolate(F) >>>> It should be mentioned that this latter can be handled already using >>>> LagrangeInterpolator and code bit >>>> lp = LagrangeInterpolator() >>>> lp.interpolate(F2, F) >>>> The LagrangeInterpolator class could for a smoother interface be >>>> created and called inside the regular interpolate function. >>> I don't think try/catch in LagrangeInterpolator is the right way to code >>> this though... presumably that catches these crashes? >>> What happens when allow_extrapolation is set with LagrangeInterpolator? >> allow_extrapolation breaks it. The LagrangeInterpolator code can be >> easily changed, though, it is using eval for simplicity. The point is >> that the functionality is there to do interpolation in parallel on >> nonmatching meshes. And the algorithm is much more efficient than what >> you would obtain with simply a collective eval. > > > Yes. Maybe we should push for eval returning std::pair<bool, Array<double> > > then. That would be clearer. > > Chris _______________________________________________ fenics mailing list [email protected] http://fenicsproject.org/mailman/listinfo/fenics
