adding multigrid preconditioner