fixed recursive call in decompose2d_numpy