docs: def _initialize_simplex(x0, bounds):
      """
      Generates an initial simplex for the Nelder-Mead method. JIT-compiled in
      `nopython` mode using Numba.
  
      Parameters
      ----------
      x0 : ndarray(float, ndim=1)
          Initial guess. Array of real elements of size (n,), where ‘n’ is the
          number of independent variables.
  
      bounds: ndarray(float, ndim=2)
          Sequence of (min, max) pairs for each element in x0.
  
      Returns
      ----------
      vertices : ndarray(float, ndim=2)
          Initial simplex with shape (n+1, n).
  
      """
      n = x0.size
  
      vertices = np.empty((n + 1, n), dtype=np.float64)
  
      # Broadcast x0 on row dimension
      vertices[:] = x0
  
      nonzdelt = 0.05
      zdelt = 0.00025
  
      for i in range(n):
          # Generate candidate coordinate
          if vertices[i + 1, i] != 0.:
              vertices[i + 1, i] *= (1 + nonzdelt)
          else:
              vertices[i + 1, i] = zdelt
  
      return vertices