A semi-iterative multigrid method and its implementation as a program for solving spatial boundary value problems