The challenge here is having a sane parallel implementation. In essence R causes the halo to expand to cover the entire domain. Directly implementing that would (a) be a lot of work and (b) suck from a performance perspective. You might argue that you don't care about (b) but (a) is still a problem.

David


On 12 March 2014 06:35, Cotter, Colin J <colin.cotter@imperial.ac.uk> wrote:
Dear firedrakers,
  Can we have a discussion about the "R" space (function space of global constants), which if I understand correctly has not been implemented?

  Clearly, the R space is not good for performance, since it inserts an entire column or row into the matrix of non-zero entries, and the high performance solution is to solve the problem with a Krylov solver by projecting out the constant from the solver as Lawrence has recently implemented. However, the R space is useful for verifying other parts of Firedrake by e.g. computing eigenvalues of the Laplacian etc. I argue that we want this feature for testing, even though we don't expect to use it for big production code.

--cjc



--
Dr David Ham
Departments of Mathematics and Computing
Imperial College London

http://www.imperial.ac.uk/people/david.ham