+
    Z°³jø  ã                   ó¸   € R t ^ RIt^ RIHu Ht ^ RIHt ^ RI	H
t
 R.tR tRt]
! RRR	.]]P                  ^.R
7      tRt]
! RRR	.]]P                   ^.R
7      tR# )zVSome more special functions which may be useful for multivariate statistical
analysis.N)Úgammaln)Ú_with_cache_optimizationÚmultigammalnc                óÌ  € \         P                  ! V 4      p \         P                  ! V4      R	,          p\         P                  ! V4      '       d   \         P                  ! V4      V8w  d   \	        R4      h\         P
                  ! V RV^,
          ,          8*  4      '       d!   \	        RV  RRV^,
          ,           R24      hW^,
          ,          R,          \         P                  ! \         P                  4      ,          pT\         P                  ! \        \        ^V^,           4       Uu. uF  q0VR,
          ^,          ,
          NK  	  up4      ^ R7      ,          pV# u upi )
aj  Returns the log of multivariate gamma, also sometimes called the
generalized gamma.

Parameters
----------
a : 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`.

Notes
-----
The formal definition of the multivariate gamma of dimension d for a real
`a` is

.. math::

    \Gamma_d(a) = \int_{A>0} e^{-tr(A)} |A|^{a - (d+1)/2} dA

with the condition :math:`a > (d-1)/2`, and :math:`A > 0` being the set of
all the positive definite matrices of dimension `d`.  Note that `a` is a
scalar: the integrand only is multivariate, the argument is not (the
function is defined over a subset of the real set).

This can be proven to be equal to the much friendlier equation

.. math::

    \Gamma_d(a) = \pi^{d(d-1)/4} \prod_{i=1}^{d} \Gamma(a - (i-1)/2).

References
----------
R. J. Muirhead, Aspects of multivariate statistical theory (Wiley Series in
probability and mathematical statistics).

Examples
--------
>>> import numpy as np
>>> from scipy.special import multigammaln, gammaln
>>> a = 23.5
>>> d = 10
>>> multigammaln(a, d)
454.1488605074416

Verify that the result agrees with the logarithm of the equation
shown above:

>>> d*(d-1)/4*np.log(np.pi) + gammaln(a - 0.5*np.arange(0, d)).sum()
454.1488605074416
z*d should be a positive integer (dimension)g      à?zcondition a (z) > 0.5 * (d-1) (z	) not metg      Ð?g      ð?)Úaxis© )ÚnpÚasarrayÚisscalarÚfloorÚ
ValueErrorÚanyÚlogÚpiÚsumÚloggamÚrange)ÚaÚdÚresÚjs   &&  Ú[/home/luca/screen-checking/.venv/lib/python3.14/site-packages/scipy/special/_spfun_stats.pyr   r   -   sö   € ôp 	�
Š
�1‹€Aä
�
Š
�1‹�bÕ€AÜ�;Š;�q�>Š>œbŸhšh q›k¨QÔ.ÜÐEÓFÐFÜ	‡v‚vˆa�3˜!˜a�%•=Ñ ×!Ò!Ü˜=¨¨Ð+<¸SÀAÀaÅC½[¸MÈÐSÓTÐTà�!•�9�tÕœrŸvšv¤b§e¡e›}Õ
,€CØŒ2�6Š6”&´E¸!¸Q¸q½S´MÓB±M¨q  B¥¨�zŸ>˜>±MÑBÓCÈ!ÔLÕL€CØ€Jùò Cs   Ä-E!a:  Returns pmf of Poisson Binomial distribution.

    Parameters
    ----------
    k : array
        Number of successes at which to evaluate pmf.

    p : array
        Success probabilities of independent Bernoulli trials.

    Notes
    -----
    This is equivalent to a gufunc with signature ``()(i)->()``.
    The last dimension of `p` contains success probabilities and
    the preceding dimensions are batch dimensions. The batch
    dimensions are broadcast against ``k``.

    The output will be C contiguous regardless of the contiguity of
    `k` and `p`.

    Ú_poisson_binom_pmfÚkÚp)ÚnameÚ	arg_namesÚ	docstringÚufuncÚcache_arg_indicesa:  Returns cdf of Poisson Binomial distribution.

    Parameters
    ----------
    k : array
        Number of successes at which to evaluate cdf.

    p : array
        Success probabilities of independent Bernoulli trials.

    Notes
    -----
    This is equivalent to a gufunc with signature ``()(i)->()``.
    The last dimension of `p` contains success probabilities and
    the preceding dimensions are batch dimensions. The batch
    dimensions are broadcast against ``k``.

    The output will be C contiguous regardless of the contiguity of
    `k` and `p`.

    Ú_poisson_binom_cdf)Ú__doc__Únumpyr   Úscipy.special._gufuncsÚspecialÚ_gufuncsÚscipy.specialr   r   Úscipy.special._ufunc_toolsr   Ú__all__r   Ú_poisson_binom_pmf_docr   Ú_poisson_binom_cdf_docr    r   ó    r   Ú<module>r,      s‘   ðñ@ó ç )Ð )Ý +Ý ?ð Ð
€òBðLð ñ2 .Ø	Ø�CˆjØ$Ø
×
%Ñ
%Ø�côÐ ðð ñ0 .Ø	Ø�CˆjØ$Ø
×
%Ñ
%Ø�côÒ r+   