On Wed, Feb 13, 2008 at 08:28:03PM +0100, Dag Lindbo wrote: > > Shilpa Khatri wrote: > >> I would also like to know how this is done (We are using the c++ > >> interface). > >> Thanks, > >> Shilpa > >> > >> On Feb 13, 2008 4:09 PM, Kristen Kaasbjerg <[EMAIL PROTECTED] > >> <mailto:[EMAIL PROTECTED]>> wrote: > >> > >> Hi, > >> > >> I have a rather simple question - having obtained a FEM > >> solution "u" of a given PDE, how does one get the > >> function value at an arbitrary point "x" (I'm using the > >> python interface) ? > >> > >> > > This functionality existed in DOLFIN a while ago, but it needs updating > > to new interfaces. Take a look at the old implementation: > > > > http://www.fenics.org/hg/dolfin?f=50aee5576fed;file=src/kernel/function/DiscreteFunction.cpp > > > > The point evaluation function is: > > > > real DiscreteFunction::operator()(const Point& p, uint i) > > > > The significant change that needs to be done is how to compute basis > > functions. This functionality now exists for general finite elements in > > the UFC interface (evaluate_basis()). > > > > Johan > > This is good news. As far as I can tell, the search is handled by a > IntersectionDetector which is mainly a wrapper for GTS. Has the _idetector > member been removed from the DiscreteFunction, or does it come from some > base class? > > Dag
Why do you need to evaluate functions at arbitrary points? I can understand it's nice to be able to do this, but in many cases there are other solutions (which are much more efficient). -- Anders _______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
