
    _Mh3                     J   d dl Z d dlZd dlmZ d dlmZ d dlmZmZm	Z	m
Z
mZ ddgZ G d de          Zd Z G d	 d
e          Z G d de          Z G d de          Z G d de          Ze j        e         j        ZeD ]Z eee                   ee         _        dS )    N)inf)special)ContinuousDistribution_RealDomain_RealParameter_Parameterization_combine_docsNormalUniformc                       e Zd ZdZ ee ef          Z edef          Z ee ef          Z e	dded          Z
 e	dd	ed
          Z e	ded          Z ee
e          gZeZd ej        dej        z            z  Z ej        dej        z            dz  Zd& fd	Zddd fd
Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d  Z#d! Z$d" Z%d# Z&ddge&_'        d$ Z(d% Z) xZ*S )'r
   a  Normal distribution with prescribed mean and standard deviation.

    The probability density function of the normal distribution is:

    .. math::

        f(x) = \frac{1}{\sigma \sqrt{2 \pi}} \exp {
            \left( -\frac{1}{2}\left( \frac{x - \mu}{\sigma} \right)^2 \right)}

    	endpointsr   muz\mu)   symboldomaintypicalsigmaz\sigma)      ?g      ?xr   r   r      Nc                     |(|&t                                          t                    S t                                          |           S N)super__new__StandardNormal)clsr   r   kwargs	__class__s       ^/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/scipy/stats/_new_distributions.pyr   zNormal.__new__,   s8    :%-77??>222wws###                  ?r   r   c                @     t                      j        d||d| d S )Nr'    r   __init__)selfr   r   r!   r"   s       r#   r+   zNormal.__init__1   s-    6Be66v66666r$   c                n    t                               | ||z
  |z            t          j        |          z
  S r   )r   _logpdf_formulanplogr,   r   r   r   r!   s        r#   r.   zNormal._logpdf_formula4   s-    --dQVUNCCbfUmmSSr$   c                J    t                               | ||z
  |z            |z  S r   )r   _pdf_formular1   s        r#   r3   zNormal._pdf_formula7   s%    **4!b&%@@5HHr$   c                D    t                               | ||z
  |z            S r   )r   _logcdf_formular1   s        r#   r5   zNormal._logcdf_formula:   s     --dQVUNCCCr$   c                D    t                               | ||z
  |z            S r   )r   _cdf_formular1   s        r#   r7   zNormal._cdf_formula=   s     **4!b&%@@@r$   c                D    t                               | ||z
  |z            S r   )r   _logccdf_formular1   s        r#   r9   zNormal._logccdf_formula@   s     ..ta"fe^DDDr$   c                D    t                               | ||z
  |z            S r   )r   _ccdf_formular1   s        r#   r;   zNormal._ccdf_formulaC   s     ++D1r65.AAAr$   c                D    t                               | |          |z  |z   S r   )r   _icdf_formular1   s        r#   r=   zNormal._icdf_formulaF   s"    ++D!44u<rAAr$   c                D    t                               | |          |z  |z   S r   )r   _ilogcdf_formular1   s        r#   r?   zNormal._ilogcdf_formulaI   s"    ..tQ77%?"DDr$   c                D    t                               | |          |z  |z   S r   )r   _iccdf_formular1   s        r#   rA   zNormal._iccdf_formulaL   s"    ,,T155=BBr$   c                D    t                               | |          |z  |z   S r   )r   _ilogccdf_formular1   s        r#   rC   zNormal._ilogccdf_formulaO   s"    //a885@2EEr$   c                z    t                               |           t          j        t	          |                    z   S r   )r   _entropy_formular/   r0   absr,   r   r   r!   s       r#   rE   zNormal._entropy_formulaR   s+    ..t44rvc%jj7I7IIIr$   c                N   t                               |           }t          j        d          5  t          j        t          j        t          |                    dz             }d d d            n# 1 swxY w Y   t          j        t          j        ||          d          S )Nignoredividey                r   axis)	r   _logentropy_formular/   errstater0   rF   r   	logsumexpbroadcast_arrays)r,   r   r   r!   lH0llss         r#   rN   zNormal._logentropy_formulaU   s    0066[))) 	0 	0 &E

++B.//C	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0 	0  !4S#!>!>QGGGGs   7A33A7:A7c                    |S r   r)   rG   s       r#   _median_formulazNormal._median_formula]       	r$   c                    |S r   r)   rG   s       r#   _mode_formulazNormal._mode_formula`   rV   r$   c                J    |dk    rt          j        |          S |dk    r|S d S )Nr   r   )r/   	ones_liker,   orderr   r   r!   s        r#   _moment_raw_formulazNormal._moment_raw_formulac   s.    A::<###aZZI4r$   c                    |dk    rt          j        |          S |dz  rt          j        |          S ||z  t          j        t          |          dz
  d          z  S )Nr   r   r   T)exact)r/   rZ   
zeros_liker   
factorial2intr[   s        r#   _moment_central_formulazNormal._moment_central_formulal   sc    A::<###QY 	Q=$$$ %<'"4SZZ!^4"P"P"PPPr$   c                >    |                     |||          d         S )N)locscalesizer)   normal)r,   sample_shape
full_shaperngr   r   r!   s          r#   _sample_formulazNormal._sample_formulau   s    zzbJz??CCr$   )NN)+__name__
__module____qualname____doc__r   r   
_mu_domain_sigma_domain
_x_supportr   	_mu_param_sigma_param_x_paramr   _parameterizations	_variabler/   sqrtpi_normalizationr0   _log_normalizationr   r+   r.   r3   r5   r7   r9   r;   r=   r?   rA   rC   rE   rN   rU   rX   r]   ordersrc   rm   __classcell__r"   s   @r#   r
   r
      s       	 	 c{333JK1c(333Mc{333JtVJ'.0 0 0I!>')M*46 6 6L~c*gFFFH++I|DDEIwrwqw'''N"%*$ $ $ $ $ $
  r 7 7 7 7 7 7 7T T TI I ID D DA A AE E EB B BB B BE E EC C CF F FJ J JH H H       #$QQ Q QD D D D D D Dr$   c                 R    t          j        | |t          j        dz  z   gd          S )Ny              ?r   rL   )r   rP   r/   r{   )log_plog_qs     r#   	_log_diffr   y   s'    eU258^41====r$   c                   r   e Zd ZdZ ee ef          Z eded          ZeZ	g Z
d ej        dej        z            z  Z ej        dej        z            dz  Z ej        d          Z ej        d	          Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Z d Z!d Z"d Z#d Z$d Z%d Z&dS )r   zStandard normal distribution.

    The probability density function of the standard normal distribution is:

    .. math::

        f(x) = \frac{1}{\sqrt{2 \pi}} \exp \left( -\frac{1}{2} x^2 \right)

    r   r   )   r   r   r   r%   r&   c                 *    t          j        | fi | d S r   )r   r+   r,   r!   s     r#   r+   zStandardNormal.__init__   s!    '7777777r$   c                 $    | j         |dz  dz  z    S Nr   )r}   r,   r   r!   s      r#   r.   zStandardNormal._logpdf_formula   s    (1a46122r$   c                 H    | j         t          j        |dz   dz            z  S r   )r|   r/   expr   s      r#   r3   zStandardNormal._pdf_formula   s"    "RVQTE!G__44r$   c                 *    t          j        |          S r   r   log_ndtrr   s      r#   r5   zStandardNormal._logcdf_formula   s    """r$   c                 *    t          j        |          S r   r   ndtrr   s      r#   r7   zStandardNormal._cdf_formula   s    |Ar$   c                 ,    t          j        |           S r   r   r   s      r#   r9   zStandardNormal._logccdf_formula   s    ###r$   c                 ,    t          j        |           S r   r   r   s      r#   r;   zStandardNormal._ccdf_formula   s    |QBr$   c                 *    t          j        |          S r   r   ndtrir   s      r#   r=   zStandardNormal._icdf_formula   s    }Qr$   c                 *    t          j        |          S r   r   	ndtri_expr   s      r#   r?   zStandardNormal._ilogcdf_formula   s     ###r$   c                 ,    t          j        |           S r   r   r   s      r#   rA   zStandardNormal._iccdf_formula   s    a    r$   c                 ,    t          j        |           S r   r   r   s      r#   rC   z StandardNormal._ilogccdf_formula   s    !!$$$$r$   c                 P    dt          j        dt           j        z            z   dz  S )Nr   r   )r/   r0   r{   r   s     r#   rE   zStandardNormal._entropy_formula   s     BF1RU7OO#Q&&r$   c                     t          j        t          j        dt           j        z                      t          j        d          z
  S r   )r/   log1pr0   r{   r   s     r#   rN   z"StandardNormal._logentropy_formula   s-    xqw((26!9944r$   c                     dS Nr   r)   r   s     r#   rU   zStandardNormal._median_formula       qr$   c                     dS r   r)   r   s     r#   rX   zStandardNormal._mode_formula   r   r$   c                 @    ddddddd}|                     |d           S )Nr   r      )r   r   r   r      r   )get)r,   r\   r!   raw_momentss       r#   r]   z"StandardNormal._moment_raw_formula   s+    aA!::ud+++r$   c                      | j         |fi |S r   r]   r,   r\   r!   s      r#   rc   z&StandardNormal._moment_central_formula       't'88888r$   c                      | j         |fi |S r   r   r   s      r#   _moment_standardized_formulaz+StandardNormal._moment_standardized_formula   r   r$   c                 :    |                     |          d         S )Nrg   r)   rh   )r,   rj   rk   rl   r!   s        r#   rm   zStandardNormal._sample_formula   s    zzzz**2..r$   N)'rn   ro   rp   rq   r   r   rt   r   rw   ry   rx   r/   rz   r{   r|   r0   r}   float64r   r   r+   r.   r3   r5   r7   r9   r;   r=   r?   rA   rC   rE   rN   rU   rX   r]   rc   r   rm   r)   r$   r#   r   r   }   s         c{333J~c*gFFFHIwrwqw'''N"%*	BBBJrNNE8 8 83 3 35 5 5# # #  $ $ $          $ $ $! ! !% % %' ' '5 5 5    , , ,9 9 99 9 9/ / / / /r$   r   c                       e Zd ZdZ edef          Z edef          Z ee ef          Z edef          Z	 edd          Z
 eded	
          Z eded
          Z edded          Z edde	d          Z ede
d
          Ze                    e           e	                    e           e
                    ee            eee           eee          gZeZddddd fd
ZddZd Zd Z xZS )_LogUniforma  Log-uniform distribution.

    The probability density function of the log-uniform distribution is:

    .. math::

        f(x; a, b) = \frac{1}
                          {x (\log(b) - \log(a))}

    If :math:`\log(X)` is a random variable that follows a uniform distribution
    between :math:`\log(a)` and :math:`\log(b)`, then :math:`X` is log-uniformly
    distributed with shape parameters :math:`a` and :math:`b`.

    r   r   alog_ar   bTTr   	inclusivegMbP?g?r   r   g?g     @@z\log(a))gr   log_bz\log(b))皙?r   r   Nr   r   r   r   c                D     t                      j        d||||d| d S )Nr   r)   r*   )r,   r   r   r   r   r!   r"   s         r#   r+   z_LogUniform.__init__   s1    F1eFFvFFFFFr$   c                    |t          j        |          n|}|t          j        |          n|}|t          j        |          n|}|t          j        |          n|}|                    t	          ||||                     |S )Nr   )r/   r   r0   updatedict)r,   r   r   r   r   r!   s         r#   _process_parametersz_LogUniform._process_parameters   s~    YBF5MMMAYBF5MMMA"]q			"]q			dQ!5>>>???r$   c                    ||z
  |z  dz  S )Nr   r)   )r,   r   r   r   r!   s        r#   r3   z_LogUniform._pdf_formula   s    !B&&r$   c           	          |dk    r| j         S | j         ||z
  z  |z  }t          j        t          j        t	          ||z  ||z                                }||z  S r   )_oner/   realr   r   )r,   r\   r   r   r!   t1t2s          r#   r]   z_LogUniform._moment_raw_formula  s\    A::9Y%%-(50WRVIeemUU]CCDDEEBwr$   )NNNN)rn   ro   rp   rq   r   r   	_a_domain	_b_domain_log_a_domain_log_b_domainrt   r   _a_param_b_param_log_a_param_log_b_paramrw   define_parametersr   rx   ry   r+   r   r3   r]   r   r   s   @r#   r   r      s         q#h///IsCj111IKC4+666MK7C.999Mz\JJJJ~c)[IIIH~c)ZHHHH!>'*)6
L L LL!>'*)6J J JL~c*jIIIH)))##L111  8444++L,GG++Hh??AI DD G G G G G G G   ' ' '      r$   r   c                       e Zd ZdZ ee ef          Z edef          Z edd          Z e	ded          Z
 e	d	ed
          Z e	ded          Ze                    e
           e                    e
e            ee
e          gZeZddd fd
ZddZd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zdge_         d Z! xZ"S )r   zUniform distribution.

    The probability density function of the uniform distribution is:

    .. math::

        f(x; a, b) = \frac{1}
                          {b - a}

    r   r   r   r   r   r   r   r   r   r   Nc                @     t                      j        d||d| d S )Nr   r)   r*   )r,   r   r   r!   r"   s       r#   r+   zUniform.__init__(  s-    ,1,,V,,,,,r$   c                 Z    ||z
  }|                     t          |||                     |S )N)r   r   ab)r   r   r,   r   r   r   r!   s        r#   r   zUniform._process_parameters+  s1    UdQ!+++,,,r$   c                    t          j        t          j        |          t           j        t          j        |                     S r   )r/   whereisnannanr0   r,   r   r   r!   s       r#   r.   zUniform._logpdf_formula0  s*    xRVbfRjj[999r$   c                l    t          j        t          j        |          t           j        d|z            S Nr   )r/   r   r   r   r   s       r#   r3   zUniform._pdf_formula3  s$    xRVQrT222r$   c                    t          j        d          5  t          j        ||z
            t          j        |          z
  cd d d            S # 1 swxY w Y   d S NrI   rJ   r/   rO   r0   r,   r   r   r   r!   s        r#   r5   zUniform._logcdf_formula6      [))) 	. 	.6!a%==26"::-	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.   ,AAAc                    ||z
  |z  S r   r)   r   s        r#   r7   zUniform._cdf_formula:      A|r$   c                    t          j        d          5  t          j        ||z
            t          j        |          z
  cd d d            S # 1 swxY w Y   d S r   r   r,   r   r   r   r!   s        r#   r9   zUniform._logccdf_formula=  r   r   c                    ||z
  |z  S r   r)   r   s        r#   r;   zUniform._ccdf_formulaA  r   r$   c                    |||z  z   S r   r)   )r,   pr   r   r!   s        r#   r=   zUniform._icdf_formulaD      2a4xr$   c                    |||z  z
  S r   r)   )r,   r   r   r   r!   s        r#   rA   zUniform._iccdf_formulaG  r   r$   c                *    t          j        |          S r   )r/   r0   )r,   r   r!   s      r#   rE   zUniform._entropy_formulaJ  s    vbzzr$   c                    |d|z  z   S Nr   r)   r   s        r#   rX   zUniform._mode_formulaM      3r6zr$   c                    |d|z  z   S r   r)   r   s        r#   rU   zUniform._median_formulaP  r   r$   c                 .    |dz   }||z  ||z  z
  ||z  z  S r   r)   )r,   r\   r   r   r   r!   np1s          r#   r]   zUniform._moment_raw_formulaS  s&    ai3CC"H--r$   c                 "    |dk    r|dz  dz  nd S )Nr      r)   )r,   r\   r   r!   s       r#   rc   zUniform._moment_central_formulaW  s     A::r1uRxx4/r$   r   c                     	 |                     |||          d         S # t          $ r! |                     dd|          |z  |z   cY S w xY w)Nr   r)   r   r   )uniformOverflowError)r,   rj   rk   rl   r   r   r   r!   s           r#   rm   zUniform._sample_formula\  sg    	=;;q!*;55b99 	= 	= 	=;;q!*;55b81<<<<	=s     (A
A)NNN)#rn   ro   rp   rq   r   r   r   r   rt   r   r   r   rw   r   r   rx   ry   r+   r   r.   r3   r5   r7   r9   r;   r=   rA   rE   rX   rU   r]   rc   r~   rm   r   r   s   @r#   r   r     s       	 	 tSk222IsCj111Iz\JJJJ~c)[IIIH~c)ZHHHH~c*jIIIH)))  8444++Hh??@I D - - - - - - -   
: : :3 3 3. . .  . . .            . . .0 0 0 '(S"= = = = = = =r$   c                       e Zd Z edef          Z edefd          Z eded          Z eded          Z	 e
e          gZe	Zd	 Zd
S )_Gammar   r   )FFr   r   )r   
   r   r   c                h    ||dz
  z  t          j        |           z  t          j        |          z  S r   )r/   r   r   gamma)r,   r   r   r!   s       r#   r3   z_Gamma._pdf_formulan  s.    QU|bfaRjj(7=+;+;;;r$   N)rn   ro   rp   r   r   r   rt   r   r   rw   r   rx   ry   r3   r)   r$   r#   r   r   c  s        q#h///I3x>JJJJ~c)YGGGH~c*iHHHH++H556I< < < < <r$   r   )sysnumpyr/   r   scipyr   (scipy.stats._distribution_infrastructurer   r   r   r   r	   __all__r
   r   r   r   r   r   modulesrn   __dict___module	dist_namerq   r)   r$   r#   <module>r     s   



                              Y
hD hD hD hD hD# hD hD hDV> > >K/ K/ K/ K/ K/V K/ K/ K/^? ? ? ? ?( ? ? ?DR= R= R= R= R=$ R= R= R=j< < < < <# < < <$ +h

( C CI!.wy/A!B!BGIC Cr$   