subroutine box_set_gc(box, nb, nc, iv, gc)
type(mg_box_t), intent(inout) :: box
integer, intent(in) :: nb, nc, iv
real(dp), intent(in) :: gc(nc, nc)
select case (nb)
case (mg_neighb_lowx)
box%cc(0, 1:nc, 1:nc, iv) = gc
case (mg_neighb_highx)
box%cc(nc+1, 1:nc, 1:nc, iv) = gc
case (mg_neighb_lowy)
box%cc(1:nc, 0, 1:nc, iv) = gc
case (mg_neighb_highy)
box%cc(1:nc, nc+1, 1:nc, iv) = gc
case (mg_neighb_lowz)
box%cc(1:nc, 1:nc, 0, iv) = gc
case (mg_neighb_highz)
box%cc(1:nc, 1:nc, nc+1, iv) = gc
end select
end subroutine box_set_gc