code: def generate_grid(horiz_dim, bbox):
      r
      x_steps, y_steps = get_xy_steps(bbox, horiz_dim)
  
      grid_x = np.linspace(bbox['west'], bbox['east'], x_steps)
      grid_y = np.linspace(bbox['south'], bbox['north'], y_steps)
  
      gx, gy = np.meshgrid(grid_x, grid_y)
  
      return gx, gy
docs: r"""Generate a meshgrid based on bounding box and x & y resolution.
  
      Parameters
      ----------
      horiz_dim: integer
          Horizontal resolution
      bbox: dictionary
          Dictionary containing coordinates for corners of study area.
  
      Returns
      -------
      grid_x: (X, Y) ndarray
          X dimension meshgrid defined by given bounding box
      grid_y: (X, Y) ndarray
          Y dimension meshgrid defined by given bounding box