code: def step(x, amplitude=1.0, center=0.0, sigma=1.0, form="linear"):
      """Return a step function.
  
      Starts at 0.0, ends at `amplitude`, with half-max at `center`, and
      rising with `form`:
  
      - `'linear'` (default) = amplitude * min(1, max(0, arg + 0.5))
      - `'atan'`, `'arctan'` = amplitude * (0.5 + atan(arg)/pi)
      - `'erf'`              = amplitude * (1 + erf(arg))/2.0
      - `'logistic'`         = amplitude * [1 - 1/(1 + exp(arg))]
  
      where ``arg = (x - center)/sigma``.
  
      """
      out = (x - center) / max(tiny, sigma)
  
      if form == "erf":
          out = 0.5 * (1 + erf(out))
      elif form == "logistic":
          out = 1.0 - 1.0 / (1.0 + exp(out))
      elif form in ("atan", "arctan"):
          out = 0.5 + arctan(out) / pi
      elif form == "linear":
          out = minimum(1, maximum(0, out + 0.5))
      else:
          msg = (
              f"Invalid value ('{form}') for argument 'form'; should be one "
              "of 'erf', 'logistic', 'atan', 'arctan', or 'linear'."
          )
          raise ValueError(msg)
  
      return amplitude * out
  
imports: from numpy import arctan, copysign, cos, exp, isclose, isnan, log, log1p, maximum, minimum, pi, real, sin, sqrt, where
  from scipy.special import betaln
  from scipy.special import erf, erfc
  from scipy.special import gamma
  from scipy.special import loggamma
  from scipy.special import wofz
label_desc: Use image node_id 24 for calling a global function with example usage: step(x, amplitude, center, sigma, form) and returns: unknown