Hey Sam,
yes, the FunctionParser is somewhat limited and I was annoyed by the
same thing in the past. Another limitation is that your solution only
works if dim<3 because we only instantiate FunctionParser for
dim=1,2,3. If you only want to add one scalar quantity you can work
around this by using a "time dependent" FunctionParser and set the
time to the value you want.
All this doesn't help with the fact that FunctionParser is a
Function<dim> and should behave that way if you pass it to something
like integrate_difference(). The expectation is that you can evaluate
using .value() with an arbitrary point and get a result but your
suggestion wouldn't update T correctly.
What you would need is a new object that wraps a DoFHandler, a
solution vector, and a FunctionParser and offer a Function<dim>
interface. Sadly, this will be very inefficient, because you need to
use something like point_value which searches all cells...
> --
> The deal.II project is located at
http://www.dealii.org/
> For mailing list/forum options, see
>
https://groups.google.com/d/forum/dealii?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "deal.II User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to
dealii+un...@googlegroups.com.
> For more options, visit
https://groups.google.com/d/optout.
--
Timo Heister
http://www.math.clemson.edu/~heister/