writing a separate multigrid code ... because I need this exercise