
    `iv                     P    d dl Z d dlZd dlmZ  ej        dddd          Zd ZdS )	    N)_corecupyx_scipy_special_gammaln)zf->fzd->dzp
    if (isinf(in0) && in0 < 0) {
        out0 = -1.0 / 0.0;
    } else {
        out0 = lgamma(in0);
    }
    a  Logarithm of the absolute value of the Gamma function.

    Args:
        x (cupy.ndarray): Values on the real line at which to compute
        ``gammaln``.

    Returns:
        cupy.ndarray: Values of ``gammaln`` at x.

    .. seealso:: :data:`scipy.special.gammaln`

    )docc                    t          j        |          rt          j        |          |k    rt	          d          t          j        |           rt          j        | t                    } t          t          j        | d|dz
  z  k                        rt	          d          ||dz
  z  dz  t          j	        t          j
                  z  }t          |           }| j        j        dk    r|                    t           j                  }||z   }t!          d|dz             D ]}|t          | |d	z
  dz  z
            z  }|S )
a  Returns the log of multivariate gamma, also sometimes called the
    generalized gamma.

    Parameters
    ----------
    a : cupy.ndarray
        The multivariate gamma is computed for each item of `a`.
    d : int
        The dimension of the space of integration.

    Returns
    -------
    res : ndarray
        The values of the log multivariate gamma at the given points `a`.

    See Also
    --------
    :func:`scipy.special.multigammaln`

    z*d should be a positive integer (dimension))dtypeg      ?   z!condition a > 0.5 * (d-1) not metg      ?f   g      ?)cupyisscalarmathfloor
ValueErrorasarrayfloatintanylogpigammalnr   kindastypefloat64range)adresgam0js        p/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/cupyx/scipy/special/_gammaln.pymultigammalnr!      s.   * = G
1 2 2EFFF}Q )L%(((
48AA&''(( ><===A;$'!2!2
2C1::Dw|s{{4<((
*C1a!e__ * *wqAGq=()))J    )r   r   r   create_ufuncr   r!    r"   r    <module>r%      sm            %
!#3		 	 	.# # # # #r"   