# scipy.special.gammasgn

scipy.special.gammasgn(x) = <ufunc 'gammasgn'>

  Sign of the gamma function.

  It is defined as

  \[\begin{split}\text{gammasgn}(x) = \begin{cases} +1 & \Gamma(x) > 0 \\ -1 & \Gamma(x) < 0 \end{cases}\end{split}\]

  where \(\Gamma\) is the gamma function; see `gamma`. This definition is complete since the gamma function is never zero; see the discussion after [dlmf].

  Parameters
    x array_like

      Real argument

  Returns
    scalar or ndarray

      Sign of the gamma function

  See also

  `gamma`

    the gamma function

  `gammaln`

    log of the absolute value of the gamma function

  `loggamma`

    analytic continuation of the log of the gamma function

  Notes

  The gamma function can be computed as `gammasgn(x) * np.exp(gammaln(x))`.

  References

  dlmf

    NIST Digital Library of Mathematical Functions https://dlmf.nist.gov/5.2#E1

  Examples

      >>> import scipy.special as sc

  It is 1 for x > 0.

      >>> sc.gammasgn([1, 2, 3, 4])
      array([1., 1., 1., 1.])

  It alternates between -1 and 1 for negative integers.

      >>> sc.gammasgn([-0.5, -1.5, -2.5, -3.5])
      array([-1.,  1., -1.,  1.])

  It can be used to compute the gamma function.

      >>> x = [1.5, 0.5, -0.5, -1.5]
      >>> sc.gammasgn(x) * np.exp(sc.gammaln(x))
      array([ 0.88622693,  1.77245385, -3.5449077 ,  2.3632718 ])
      >>> sc.gamma(x)
      array([ 0.88622693,  1.77245385, -3.5449077 ,  2.3632718 ])

scipy.special.loggamma scipy.special.gammainc