To modify a grid is to align an extent to the grid origin. Modification includes to reduce or extend the area covered, in either dimension. This implies a new extent, snapped to the grain of the origin grid and a new size (dimension in x,y).
vcrop(x, dimension, extent = NULL, ..., snap = "out")
extent of candidate grid (vector of xmin,xmax,ymin,ymax)
integer ncol, nrow
numeric extent xmin,xmax,ymin,ymax
ignored
one of "out" (default), "near", or "in"
This works for any grid, the input extent can be within the original, an extension of the original, or completely non-intersecting the original grid.