firedrakeproject/firedrake — pull request #77 by wence- (2013-11-18 16:43:01+00:00)
Title: Matrix free

A sketch of some matrix free stuff. I have not hooked this properly into the existing solve mechanisms (so nonlinear won't work) but you can do:
````
mf = MatrixFree(a, bcs=bcs)

mf.solve(L, x)
````
to solve `a == L` and put the result in `x`. This runs a matrix-free krylov solve, with jacobi preconditioning. An explicit jacobi solve is reasonably straightforward to add if so desired.