code: def seed(seed=None):
      """
      Seed the internal random number generator used in this ID package.
  
      The generator is a lagged Fibonacci method with 55-element internal state.
  
      Parameters
      ----------
      seed : int, sequence, 'default', optional
          If 'default', the random seed is reset to a default value.
  
          If `seed` is a sequence containing 55 floating-point numbers
          in range [0,1], these are used to set the internal state of
          the generator.
  
          If the value is an integer, the internal state is obtained
          from `numpy.random.RandomState` (MT19937) with the integer
          used as the initial seed.
  
          If `seed` is omitted (None), ``numpy.random.rand`` is used to
          initialize the generator.
  
      """
      # For details, see :func:`_backend.id_srand`, :func:`_backend.id_srandi`,
      # and :func:`_backend.id_srando`.
  
      if isinstance(seed, str) and seed == "default":
          _backend.id_srando()
      elif hasattr(seed, "__len__"):
          state = np.asfortranarray(seed, dtype=float)
          if state.shape != (55,):
              raise ValueError("invalid input size")
          elif state.min() < 0 or state.max() > 1:
              raise ValueError("values not in range [0,1]")
          _backend.id_srandi(state)
      elif seed is None:
          _backend.id_srandi(np.random.rand(55))
      else:
          rnd = np.random.RandomState(seed)
          _backend.id_srandi(rnd.rand(55))
  
file_path: scipy/scipy/linalg/interpolative.py
imports: import scipy.linalg._interpolative_backend
  import numpy
  import sys
label_desc: Use image node_id 2 for calling a global function with example usage: seed(seed) without return types