
    geĠ                        d dl Z d dlZd dlmZ d dlZd dlmZ d dl	m
Z
 d dlZd dlmZ ddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z! d dl"m#Z# d dl$m%Z% 	 d	Z&e j'        d
k     Z(g dZ)g dZ*g dZ+g dZ,g dZ-g dg dz   dgz   Z.e,e-e.z   dZ/g dZ0g dg dz   dgz   Z1e0e-e1z   dZ2h dZ3g Z4g dddZ5ddgg ddZ6 ej7        e5e6gddg          D ]G\  Z8Z9 ej:        dki e8de9iZ; ej<        e;e9          Z=e4>                    e= e?            f           Hd  Z@ejA        B                    d! e@                      ejA        B                    d"d#g          d$                         ZCejA        B                    d! e@                      d%             ZDd& ZEd' ZFejA        jG        ejA        B                    d( eF                      d)                         ZHejA        B                    d*e#          d+             ZIejA        B                    d,g d-          d.             ZJd/ ZKd0 ZLd1 ZMd2 ZNd3 ZOd4 ZPd5 ZQd6 ZRd7 ZSd8 ZTd9 ZUd: ZVd; ZWd< ZXd= ZYd> ZZd? Z[d@ Z\dA Z]dB Z^dC Z_dD Z`dE ZadF ZbdG ZcejA        B                    dHg dI          ejA        B                    dJe#          dK                         ZddL ZedM ZfdN ZgdO ZhejA        ji        dP             ZjdQ ZkdR ZldSg gdTd ggdUd ggdVd ggdWd ggdXd ggdYd ggdZd ggd[d ggd\dggd]g gd^g gd_g gd`g gdag gdbg ggZmdcddggdeg gdfdggggZnejA        B                    dhemenz             di             Zodj ZpdS )l    N)raises)IntegrationWarning)stats   )check_normalizationcheck_momentcheck_mean_expectcheck_var_expectcheck_skew_expectcheck_kurt_expectcheck_entropycheck_private_entropycheck_entropy_vect_scalecheck_edge_supportcheck_named_argscheck_random_state_propertycheck_meth_dtypecheck_ppf_dtypecheck_cmplx_derivcheck_picklingcheck_rvs_broadcastcheck_freezingcheck_munp_expect)distcont)rv_continuous_frozen   l        )
recipinvgaussvonmiseskappa4vonmises_line
gausshypernorminvgaussgeninvgaussgenhyperbolic	truncnormtruncweibull_min)studentized_rangekstwoksone
wrapcauchygenexpon)r'   r   r    r)   r(   r   r+   )exponpow	exponweibr!   r+   halfgennormgompertz	johnsonsb	johnsonsur   r)   r(   	kstwobignmielkencfnctpowerlognorm	powernormr   	trapezoidr   r    levy_stablerv_histogram_instancer'   )argusr,   r-   r!   r+   genhalflogisticr.   r/   r0   r   r2   r   r8   
truncexponr   r    r'   )alpha	betaprimebradfordburrburr12cauchycrystalballffisk
foldcauchy
genextreme	genpareto
halfcauchyinvgammakappa3levylevy_l
loglaplacelomaxr3   nakagamir4   
skewcauchyttukeylambda
invweibullrel_breitwigner)r$   r1   r)   r(   r5   paretor7   r6   pearson3MLEMM)rA   r,   r-   r!   r+   r.   r/   r0   r1   r   r)   r(   r2   r9   r3   r4   ncx2r6   r7   rdistr   r8   truncparetor   r    r'   )r>   r?   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   r3   rQ   r4   r5   rR   rS   r^   rU   )r$   r1   r)   r(   rW   r7   r6   >3   rE   rS   chir4   r5   betachi2r\   ricer;   gammar)   r(   r]   cosinedgammaerlangrN   gennormmaxwelldweibullgengammarK   loggammalogisticrQ   rX   powerlawskewnormr   r?   rI   r0   r2   r%   rG   r!   rJ   
loguniform
reciprocalr#   r.   rT   halflogisticr"   r$   r    rV   r&   r'   r:   )r      rr      rs   rs      rt   rt   rt   r   r   r   r   r      ru   ru   ru      rv   rv      rw   	   rw   )abins)r   r   
   TFdensity)r|   c               #   &  K   t           d d          t          z   D ]v\  } }| dk    r| t          v r)t          j        | |t          j        j                  V  >| t          v r)t          j        | |t          j        j                  V  p| |fV  wd S )Nr9   marks)	r   histogram_test_instancesdistslowpytestparammarkslow	distxslowxslow)distnameargs     Glib/python3.11/site-packages/scipy/stats/tests/test_continuous_basic.pycases_test_cont_basicr      s      !!!!'??    #}$$!!,xFK4DEEEEEEE"",xFK4EFFFFFFFC-       zdistname,argzsn, n_fit_samples)i     c                 l   	 t          t          |           }n# t          $ r | }d} Y nw xY wt          j                            d          } |j        |||d} |j        | \  }}| dvrt          |||           t          |||            t          |||            t          |||            t          |||            t          |||            t          |||            t          |||            t          |||            d}	| dk    rt!          |j        ||	|           n| dk    rt!          | ||	|           d}
|j        |j        |j        |j        |j        g}ddd	d
ddd}|                    | d          }| dk    rd}n| dk    rd}t/          ||||
|           t1          ||           | dv rt2          rt5          j        d           nt9          ||           t;          ||           | dvrt=          |||            |j        dk    rtA          ||           |j!        j"        t          j#        j"        k    r!| dk    rtI          ||t          j#                   tK          j&                    5 }|'                    tP          d           |'                    tP          d           |'                    tR          d           tU          ||           d d d            n# 1 swxY w Y   tW          ||           tY          ||           t[          |||           t]          ||           | t^          vrta          ||           | dk    rtc          |||            dD ]T}| td          |         vrtg          |||d |         |           | th          |         vrtk          |||d |         |           Ud S )Nr:   i )sizerandom_state>   laplace_asymmetric{Gz?r#   r   r               ?g	@333333?      @)weibull_maxrN   rW   r^   rT   r:         ?rU   r   r)   )rs   rV   fails on Linux 32-bit)r2   r(   r4   r   r   z The occurrence of roundoff errorzExtremely bad integrandzinvalid valuer%   rY   )6getattrr   	TypeErrornprandomRandomStatervscheck_sample_meanvar_check_cdf_ppfcheck_sf_isf	check_pdfcheck_pdf_logpdfcheck_pdf_logpdf_at_endpointscheck_cdf_logcdfcheck_sf_logsfcheck_ppf_broadcastcheck_distribution_rvscdfpdflogpdflogcdflogsfgetr   r   	_IS_32BITr   skipr   r   r   numargscheck_vecentropy	__class___entropyrv_continuousr   nptsuppress_warningsfilterr   RuntimeWarningr   check_retrieving_supportr   r   r   fails_cmplxr   check_ppf_privateskip_fit_testcheck_fit_argsskip_fit_fix_testcheck_fit_args_fix)r   r   snn_fit_samplesdistfnrngr   mvr>   locscale_defaultsmethsspec_xxsupmethods                   r   test_cont_basicr      sx   
+)) + + +*+ )


'
'C
&*s"
5
5
5C6<DAq---aC(((&#x(((h'''fc8$$$VS(+++!&#x888VS(+++63)))X...E***vz3s;;;;	]	"	" 	xeS999Z
FM\E "TC'*, ,F 	

8S!!A<	W		VQ%6>>>,,,&&&9&+,,,,vs###63 444fc8,,,~%%%!U%8%AAAJ&&fc5+>???			 	  .C

%'IJJJ

%'@AAA

>?333 ---	. . . . . . . . . . . . . . . VS)))vs###VS%(((FC   {""&#&&&;&#x000 I I=00063N]N(;VDDD,V444vsC,?HHHI Is    ))3A"K!!K%(K%c                    	 t          t          |           }n# t          $ r | }d} Y nw xY wt          j         |j        |           sJ t          j         |j        |ddi          sJ t          j         |j        |dd i          sJ d S )Nr:   r    )r   r   r   r   isscalarr   )r   r   r   s      r   test_rvs_scalarr      s    +)) + + +*+ ;zvz3'(((((;zvz30R0011111;zvz32T223333333s    ))c                  :    t          t          j        d           d S )N)r   皙?)r   r   r9   r   r   r   &test_levy_stable_random_state_propertyr     s       1:>>>>>r   c               #     K   t                      } dh}dh}t          d d          t          z   D ]\  }}|dk    r|t          v r<t	          j        ||ddddt          j                            d                    V  Q|| v}||v}||v}t                      }t	          j        |||||d|          V  |r|r|s0t	          j        ||ddddt          j        j	        g|z             V  d S )	Nr4   r1   r9   Ttoo slow)reasonr~   F)
setr   r   distxslow_test_momentsr   r   r   r   listxfail)	fail_normalizationfail_higherfail_momentr   r   cond1cond2cond3r   s	            r   cases_test_momentsr     st     'K-K!!!!'?? B B#}$$---,xdD$%+[%6%6j%6%I%IK K K K K K 22++ l8S% / / / 	/ 	/ 	/  	BE 	B 	B ,xdD$&,k&7%85%@B B B B B B9B Br   z=distname,arg,normalization_ok,higher_ok,moment_ok,is_xfailingc           
      B   	 t          t          |           }n# t          $ r | }d} Y nw xY wt          j                    5 }|                    t          d           |                    t          d           |                    t          d           |r|                    t                      |j        |ddi\  }}	}
}t          j        d          5  |rt          |||            |r^t          ||||            t          ||||	|
|            t          ||||	|            t          ||||	||            t          |||            d d d            n# 1 swxY w Y   t          ||||	|            |rt!          ||||	|            d d d            d S # 1 swxY w Y   d S )	Nr:   z9The integral is probably divergent, or slowly convergent.z#The maximum number of subdivisions.z The algorithm does not converge.momentsmvskignoreall)r   r   r   r   r   r   r   r   errstater   r	   r   r
   r   r   check_loc_scaler   )r   r   normalization_ok	higher_ok	moment_okis_xfailingr   r   r   r   sks               r   test_momentsr   0  sq   +)) + + +*+ 
		 	  6C

%N	P 	P 	P

%8	: 	: 	:

%5	7 	7 	7  	+JJ)***!V\3777
1a[X&&& 		9 		9 ;#FC::: 9!&#q(;;;!&#q!QAAA aH===!&#q!QAAA!&#x888		9 		9 		9 		9 		9 		9 		9 		9 		9 		9 		9 		9 		9 		9 		9 	Q8444 	6aH55576 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6sC    ))BFA4EFE	FE	+FFFzdist,shape_argsc                 :   | dv rt          j        d           | dv rt          rt          j        d           | dv }t          t          |           }t          j        d          }t          j        d          }|j        }g }ddg}t          |          D ]Z}	|	d	z   fd
|	dz   z  z   }
|
                    ||	         t          j        |
          z             |                    d|	d	z              [|                    ||g           t          || |||d           d S )N)r!   r'   r   r   r   )r;   r?   re   ri   	exponnormr$   r#   r9   r5   r"   rb   rn   semicircularrg   rk   rr   )rs   r   rs   rt   r   r   d)r   r   r   r   r   r   zerosonesr   rangeappendinsertextendr   )dist
shape_args
shape_onlydistfunclocscalenargsallargsbshaper   shps              r   test_rvs_broadcastr
  Z  s5   222J"""y"+,,,  M MJ
 ud##H
(1++CGFOOEEGVF5\\    1uhq1u%z!}RWS\\1222aQNNC<    $SIIIIIr   zx,n,sf,cdf,pdf,rtol))gh㈵> ʚ;g$?gm%?g0eD@g+<)g&.!>r  gי?gscl)D>g ^RUU!@vIh%,=)gMb@?r  g_H'9$      ?gL.'r  c                    t           j        }t          j        |                    | |          |                    | |          |                    | |          g          }t          j        |||g          }t          j        |||           t          j	        |d         |d         z   d           t          j        |
                    ||          g| gd           d S )Nrtolr   r   r  :0yE>)r   r)   r   arraysfr   r   r   assert_allcloseassert_equalisf)	r   nr  r   r   r  ksvalsexpecteds	            r   test_gh17775_regressionr    s    $ 
B8RUU1a[["&&A,,q!=>>DxS#''HhT2222T!WtAw&,,,A!4888888r   c                  j   t           j                            d          } t          j                            t          j        d          d|           }t          j        |          }t          j	        t          j
        |dk              d           t          j                            dt          j        d          |           }t          j        |          }t          j	        t          j
        |dk              d           t          j                            t          j        d          t          j        d          |           }t          j        |          }t          j	        t          j
        |dk              d           t          j                            t          j        dgdgg          t          j        d          |           }t          j        |                                          }t          j	        t          j
        |dk              d           t          t          t          j        j        ddgddggddgddggd           t          t          t          j        j        g dddd           t          t          t          j        j        g d	g d
dgdggd           d S )N{   r   r   )r  r  r   r   z0All the values are equal, but they shouldn't be!)rr   rs   rt   r   )rr   rr   )r   r   r   r   )r   r   r   r   rr   )rt   )r   r   r   r   normr   r   diffr   assert_r   r   r  ravelassert_raises
ValueErrorrc   )r   r  r   s      r   test_rvs_gh2069_regressionr$    s    )


$
$C:>>bhqkk>EED
AKqAv RSSS:>>arwqzz>DDD
AKqAv RSSS:>>bhqkk#>NND
AKqAv RSSS:>>bhaSz22"'!**'*  , ,D


AKqAv RSSS*ejn1v1v.>q6Aq6"A' ' '*eko|||Q6JJJ*eko|||\\\3*d$ $ $ $ $r   c                     t           j        } t          j        |                     ddt
          j                  d           t          j        |                     dgdgt
          j        g          d           t          j        |                     dt
          j         d          d           t          j        |                     dgt
          j         gdg          d           t          j        |                     dgdgt
          j        g          d           t          j        |                     ddt
          j                  d           t          j        |                     dgt
          j         gdg          d           t          j        |                     dt
          j         d          d           t          j        |                     dt
          j         d          d           d S )Nr   r   gA?g|N?)r   r%   r   assert_almost_equalr   r   inf_cdf)tns    r   test_nomodify_gh9900_regressionr+    s    
B BFF1a002DEEEBGGQC!rvh779KLLL BFF2w224GHHHBGGRDBF7)aS99;NOOO BGGQC!rvh779KLLLBFF1a002DEEE BGGRDBF7)aS99;NOOOBFF1rvgq111555BFF2w224GHHHHHr   c                     t          j        g d          } t          j        g d          }d t          | |          D             }t          j        t
          j                            d| |          |           d t          | |          D             }t          j        t
          j                            d| |          |           d t          | |          D             }t          j        t
          j                            | | |          |           d t          | |          D             }t          j        t
          j                            || |          |           d S )	N)r   rr   rs   rt   r   ru   )rw      r       r   0   c                 V    g | ]&\  }}t           j                            d ||          'S )rv   r   rp   r   .0_a_bs      r   
<listcomp>z4test_broadcast_gh9990_regression.<locals>.<listcomp>  1    
B
B
Bvr252r**
B
B
Br   rv   c                 V    g | ]&\  }}t           j                            d ||          'S r   r1  r2  s      r   r6  z4test_broadcast_gh9990_regression.<locals>.<listcomp>  r7  r   r   c                 V    g | ]&\  }}t           j                            |||          'S r   r1  r2  s      r   r6  z4test_broadcast_gh9990_regression.<locals>.<listcomp>  1    
C
C
CB5B++
C
C
Cr   c                 V    g | ]&\  }}t           j                            |||          'S r   r1  r2  s      r   r6  z4test_broadcast_gh9990_regression.<locals>.<listcomp>  r:  r   )r   r  zipr   assert_array_almost_equalr   rp   r   )ry   banss      r    test_broadcast_gh9990_regressionr@    sB    	###$$A
&&&''A
B
BQq
B
B
BC!%"2"6"6q!Q"?"?EEE
B
BQq
B
B
BC!%"2"6"6q!Q"?"?EEE
C
C#a((
C
C
CC!%"2"6"6q!Q"?"?EEE
C
C#a((
C
C
CC!%"2"6"6q!Q"?"?EEEEEr   c            	          t           j                            t          j        g d          dt          j        g d          z
  dz  t          j        t          j        g d          d           d S )N)      @       @r  r   )g      @r   g      @rB  )ry   r>  r  r  )r   r%   r   r   r  r(  r   r   r    test_broadcast_gh7933_regressionrD    sp    	O
!!///***c
1
&H___%%      r   c                  V   t           j        ddd         } t           j        t          j        d           t          j        d          f         }d t          | |          D             }t          j                            | |t           j                  }t          j	        ||           d S )Nrr   y             @Y@2   3   c                 j    g | ]0\  }}t           j                            ||t          j                  1S r   )r   r%   r   r   r(  )r3  _xr4  s      r   r6  z*test_gh2002_regression.<locals>.<listcomp>
  s2    LLLB##BBF33LLLr   )
r   r_r   r<  r   r%   r   r(  r   r=  )r   ry   r  r?  s       r   test_gh2002_regressionrL    s     	b4iA
rwr{{lBGBKK'(ALL#a))LLLH
/

aBF
+
+C!#x00000r   c                  |    d} t           j                            dt          j        | g| dz   gg                     d S )Ng(\@r   )r   rH   ppfr   r  )cs    r   test_gh1320_regressionrP    s=    A	bha#gY'78899999r   c                     t           j                            d           g d} ddt          j        d          z  dz  z
  }ddt          j        d          z  dz  z   }t	          t          t          j                  t          j                                      | d          \  }}t          j
        ||d	
           t          j
        ||z   |d	
           d S )Ni  )r   r   r   r   r   皙?rr   rs   r   r[   r   rt   )decimal)r   r   seedsqrtsupertyper   uniformfitr   r'  )r   ry   r>  r  r  s        r   test_method_of_momentsr[    s    INN4Aa

l1nAa

l1nAtEM**EM::>>q>NNJCCA....CIq!444444r   c                     t          j        |           rt          ||            t          j        |          rt          ||           d S d S N)r   isfinitecheck_sample_meancheck_sample_var)popmeanpopvarsamples      r   r   r   '  sV    	{7 +&'***	{6 )((((() )r   c                 J    t          j        | |          j        }|dk    sJ d S )Nr   )r   ttest_1samppvalue)rc  ra  probs      r   r_  r_  .  s(    VW--4D$;;;;;;r   c                     t          j        | fd d          }|j        }|j        |j        }}||cxk    r|k    sn J d S )Nc                 0    |                      d|          S )Nr   )ddofaxis)var)r   rk  s     r   <lambda>z"check_sample_var.<locals>.<lambda>:  s    1400 r   gףp=
?)confidence_level)r   	bootstrapconfidence_intervallowhigh)rc  rb  resconfrq  rr  s         r   r`  r`  4  sj     /		00  C
 "D$)C&    D        r   c                 ~    g d}t          j         | j         | j        |g|R  g|R  |t          |dz              d S )N)gMbP?r   g+?z - cdf-ppf roundtriprT  err_msg)r   r'  r   rN  DECIMAL)r   r   msgvaluess       r   r   r   B  sj       FJFJzvz&'?3'?'?'?F#FFF"GS2>34 4 4 4 4 4r   c                     t          j         | j         | j        g dg|R  g|R  g dt          |dz              t          j         | j        ddgg|R  d | j        ddgg|R  z
  t          |dz              d S )Nr   r   ?z - sf-isf roundtriprv  r   r}  r  z - cdf-sf relationship)r   r'  r  r  rx  r   )r   r   ry  s      r   r   r   I  s    IFIjfj&G3&G&G&GN#NNN+OOWc1G23 3 3 3 JFJSz8C888)&)S#J"="="="==$+S4656 6 6 6 6 6r   c                     | j         dg|R  }d} | j        |g|R  }|dk     s|dk    r|dz   } | j        |g|R  } | j        ||z   g|R   | j        ||z
  g|R  z
  |z  dz  }|dz  }t          j        ||t
          |           d S )	Nr   gư>g-C6?     @r   rC  z - cdf-pdf relationshiprv  )rN  r   r   r   r'  rx  )r   r   ry  medianepspdfvcdfdiffs          r   r   r   S  s    VZ"c"""F
C6:f#s###Dt #vz&'3'''vz&3,----vz&3,----./23367G $$CD'7CHHHHHHr   c                    t          j        g d          } | j        |g|R  }|t          j        |                   } | j        |g|R  } | j        |g|R  }||dk    t          j        |          z           }|t          j        |                   }|dz  }t          j        t          j        |          |d|           d S )N)rR  r   皙?r   333333?ffffff?皙?r    - logpdf-log(pdf) relationshiprv   rv  	r   r  rN  r^  r   r   r   r'  logr   argsry  pointsr  r   r   s          r   r   r   e  s    X999::F6:f$t$$$DD!!"D
&*T
!D
!
!
!CV]4'$'''F
sax2;s+++
,CBK''(F,,CBF3KKCHHHHHHr   c                    t          j        ddg          } | j        |g|R  }|t          j        |                   } | j        |g|R  } | j        |g|R  }||dk    t          j        |          z           }|t          j        |                   }|dz  }t          j        t          j        |          |d|           d S )Nr   r   r  rv   rv  r  r  s          r   r   r   r  s    Xq!fF6:f$t$$$DD!!"D
&*T
!D
!
!
!CV]4'$'''F
sax2;s+++
,CBK''(F,,CBF3KKCHHHHHHr   c                 d   t          j        g d          } | j        |g|R  }|t          j        |                   } | j        |g|R  } | j        |g|R  }||dk             }|t          j        |                   }|dz  }t          j        t          j        |          |d|           d S )N)	        rR  r   r  r   r  r  r  r  r   z - logsf-log(sf) relationshiprv   rv  )	r   r  rN  r^  r  r   r   r'  r  )r   r  ry  r  r  r  r   s          r   r   r     s    XCCCDDF6:f$t$$$DD!!"D	4	$			BFL%%%%E	B!GB"+e$$%E**CBF2JJq#FFFFFFr   c                 d   t          j        g d          } | j        |g|R  }|t          j        |                   } | j        |g|R  } | j        |g|R  }||dk             }|t          j        |                   }|dz  }t          j        t          j        |          |d|           d S )N)	r   rR  r   r  r   r  r  r  r  r   z - logcdf-log(cdf) relationshiprv   rv  )	r   r  rN  r^  r   r   r   r'  r  )r   r  ry  r  r  r   r   s          r   r   r     s    XAAABBF6:f$t$$$DD!!"D
&*T
!D
!
!
!CV]4'$'''F
cQh-CBK''(F,,CBF3KKCHHHHHHr   c                     dg z  }|rfd|D             } | j         dg|R  } | j         dg|R  }|dz  }t          j        ||gz  d|           d S )Nr   c                 @    g | ]}t          j        |gz            S r   )r   r  )r3  _num_repeatss     r   r6  z'check_ppf_broadcast.<locals>.<listcomp>  s*    999!{*++999r   r   z - ppf multiplerv   rv  )rN  r   r'  )r   r   ry  r  r  mediansr  s         @r   r   r     s    KD
 :9999S999VZ"c"""Ffj$t$$$GCGfX%;QPSTTTTTTr   c                 F   t          j        || |d          \  }}||k     rt          j        | | |d          \  }}t          j        ||k    dt	          |          z   dz   t	          |          z   dz   t	          |          z   dz   t	          |          z              d S d S )Ni  )r  NzD = z	; pval = z
; alpha = z
args = )r   kstestr   r   str)r   r  r>   r   Dpvals         r   r   r     s     l344888GAtu ,tT===4D5L&3q66/K"?#d))"K #!#&u::#.0;#<>A$ii#H 	I 	I 	I 	I 	I 	r   c                 P    t          j         | j        |  | j        |            d S r]  )r   r  
vecentropyr   )r   r  s     r   r   r     s/    &V&-v/EFFFFFr   c                     t          j        ddg          t          j        ddg          }} | j        |||d\  }}t          j        ||z  |z   |           t          j        ||z  |z  |           d S )N      $@g      4@r  r  )r   r  r   r   r  )	r   r   r   r   ry  r  r  mtvts	            r   r   r     s     4,''4,)?)?CV\3Cu555FB%#r***%r*****r   c                      | j         t          j        g d          g|R  }t          j        t          j        t          j        |                     |dz              d S )Nr|  zppf private is nan)_ppfr   r  r   r   anyisnan)r   r   ry  ppfss       r   r   r     s\    6;rx0073777DKBF28D>>***C2F,FGGGGGr   c                     d\  }} | j         | } | j         |||d}t          j        t          j        |          |z  |z   t          j        |                     d S )N)r   rr   r  )supportr   r'  r   r  )r   r  r  r  suppsupp_loc_scales         r   r   r     sq    JC6>4 D#V^Ts%@@@NBHTNN5036H^446 6 6 6 6r   c                 X   t          j        d          5  t          j                    5 }|                    t
          d           |                    t
          d           |                     ||          }|                     |d|          }d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   t          j        t          |          d	t          |          z   k               t          j        t          |          d	t          |          z   k               d S )
Nr   r   !The shape parameter of the erlangcategorymessagezfloating point number truncatedrS  powell)	optimizerr   rr   	r   r   r   r   r   r   rZ  r   len)r   r   r   r   r   r  vals2s          r   r   r     s   		"	"	" C CC$9$;$; Cs

N> 	 	@ 	@ 	@

N< 	 	> 	> 	>zz#fz--

3(6
BBC C C C C C C C C C C C C C C C C C C C C C C C C C C C C C KD		Qs3xxZ'(((KE

aCj()))))s5   B5A(BB5B"	"B5%B"	&B55B9<B9c           	         t          j        d          5  t          j                    5 }|                    t
          d           |                     |d|          }|                     |d|          }t          j        t          |          d	t          |          z   k               t          j        |d
         dk               t          j        |d         dk               t          j        t          |          d	t          |          z   k               t          |          dk    rw|                     ||d         |          }t          j        t          |          d	t          |          z   k               t          j        |d         |d         k               t          |          dk    rw|                     ||d         |          }t          j        t          |          d	t          |          z   k               t          j        |d         |d         k               t          |          d	k    rw|                     ||d	         |          }	t          j        t          |	          d	t          |          z   k               t          j        |	d	         |d	         k               d d d            n# 1 swxY w Y   d d d            d S # 1 swxY w Y   d S )Nr   r   r  r  r   )flocr   r   )fscaler   rr   rF  r&  )f0r   )f1r   )f2r   r  )
r   r   r   r   r   r  r  vals3vals4vals5s
             r   r   r     s   		"	"	" , ,C$9$;$; ,s

N> 	 	@ 	@ 	@ zz#Afz55

3q
88CII3s88+,,,DHM"""E"IN###CJJ!CHH*,---s88a<<JJss1vfJ==EKE

aCj0111KaCF*+++s88a<<JJss1vfJ==EKE

aCj0111KaCF*+++s88a<<JJss1vfJ==EKE

aCj0111KaCF*++++, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,s5   KJK;KK	KK	KK#&K#r   )r   r   r   r   r  r   rN  r  zdistname, argsc                 B  	 t          t          |          }t          ||           	|dk    r|                     d          rddg}nddg}d |D             }ddg}d	d
g} 	|g|R ||d}t          j        |	fdt          |g|||R  D             dd           d S )NrU   r  r   rr   r   rR  c                     g | ]}|gd z  	S )rr   r   )r3  ry   s     r   r6  z+test_methods_with_lists.<locals>.<listcomp>  s    """qc!e"""r   r   r   g)\(?r  c                     g | ]} | S r   r   )r3  r   rE   s     r   r6  z+test_methods_with_lists.<locals>.<listcomp>  s    DDD1ADDDr   g+=r  )r  atol)r   r   
startswithr   r  r<  )
r   r   r  r   r   shape2r  r  resultrE   s
            @r   test_methods_with_listsr    s     5(##DfA<F$5$5e$<$<!H#J""T"""Fc(CIEQq0600s%000FDDDDA(C(C(CU(C(C(CDDD"0 0 0 0 0 0r   c                      t           j                            ddd          } t          | t                    sJ t           j                            dd          }t          |t                    sJ d S )Nr   r   rt   rw   )r   rA   moment
isinstancefloatrF   )vals0vals1s     r   (test_burr_fisk_moment_gh13234_regressionr    sd    JaA&&EeU#####Ja##EeU#######r   c            
      b   t           j                            dt          j        g d          d          } t          j        g d          }t          j        | |           t           j                            dt          j        g d          d          }t          j        t          j        t          j        t          j        g          }t          j        ||           t           j                            dt          j        g d          g d          }t          j        t          j        dt          j        g          }t          j        ||           t           j                            dd	d
          }t          j        }t          j        ||           t          ||j	                  sJ t           j                            dg dg d          }t          j        dt          j        t          j        g          }	t          j        ||	           t           j                            dg dg d          }
t          j        dt          j        dg          }t          j        |
|           t           j                            dg dg d          }t          j        t          j        t          j        t          j        g          }t          j        ||           t           j
                            ddd	d	          }t          j        }t          j        ||           t          ||j	                  sJ t           j
                            dg dd	d	          }t          j        t          j        t          j        t          j        g          }t          j        ||           t           j
                            dg dg dg d          }t          j        dt          j        t          j        g          }t          j        ||d           t           j                            dddgddg          }t          j        ddg          }t          j        ||d           dd	ddt          j        g}dd	ddt          j        g}dd	t          j        d          g}d d	ddt          j        g}t          j        |                              d!          }t          j        |                              d"          }t          j        |                              d#          }t          j        |          }t           j                            d||||$          }t          j        ||||          \  }}}}t          j        |          D ]}t          j        d%d%&          5  |d	         }t           j                            d||         ||         ||         ||         $          }t          j                            ||         |           d d d            n# 1 swxY w Y   d S )'Nr   r   rr   rs   orderr  r  r  rC  rB  r&  )r   r   rC  rr   r   )r   r   rr   )rs   r  r  )r   r   r   )r   rF  g      Y@g      9@r  )g      rF  g      Yr  dfr  r  )r  r  rC  )r  g      r  g ﲙ"@r  r  r   r  g      :@g      @gvIh%<=gg@g )r&  r   r   r   )r&  r   r   )r&  r   )r  ry   r>  r  r  r   )invaliddivide)r   r  r  r   r  r   r  nanr  r   r_   r  pirV  reshaper`   broadcast_arraysndenumerater   testing)r  	expected0r  	expected1r  	expected2r  	expected3r  	expected4r  	expected5vals6	expected6vals7	expected7vals8	expected8vals9	expected9vals10
expected10ry   r>  r  r  vals11ir  s                                r   *test_moments_with_array_gh12192_regressionr    s   JA28III+>+>aHHE&&IUI&&& JA28III+>+>bIIE"&"&"&122IUI&&& JA28III+>+>$.JJ  0 0E"&"bf-..IUI&&& JA1B77EIUI&&&eY011111 JA999KKKHHE#rvrv.//IUI&&& JA999NNNKKE#rvv.//IUI&&& JA999<L<L<LMME"&"&"&122IUI&&& I1;;EIUI&&&eY011111 I1CCE"&"&"&122IUI&&& I1#0==  2 2E*bfbf566Iyt4444 Zq2r(RH55F3+&&J
7777 
q!S"% A	q!S"% ABGAJJ
C1abe$E
M**A
J''A
(3--


(
(CHUOOEZQ!qcGGF*1ae<<Aq#u^A 9 9[(;;; 	9 	9!Az((qAaDAaD-0V58 ) E EHJ##F1Ix888	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	9 	99 9s   ,A+X##X'	*X'	c                     t           j                            dt          j        g d          dgg          } t          j        g dg          }t          j        | |           | j        |j        k    sJ t           j                            dt          j        dgdgdgg          g d          }t          j        g dg dg d	g          }t          j        ||           |j        |j        k    sJ t           j                            dg dd
d          }t          j        g d          }t          j	        ||d           |j        |j        k    sJ t           j                            ddgdgdggg dg d          }t          j        t          j
        t          j
        dgt          j
        t          j
        dgt          j
        t          j
        dgg          }t          j	        ||d           |j        |j        k    sJ d S )Nr   r  r  r  rr   rs   )r  r  r  )rC  rC  rC  )rB  rB  rB  r  r  r  )g e3E?g> ?g e3E?r  r  rC  rB  )r  r  rC  )g      r  rB  g@3F@gw,W.
@gf3&@)r   r  r  r   r  r   r  shaper_   r  r  )r  r  r  r  r  r  r  r  s           r   /test_broadcasting_in_moments_gh12192_regressionr  l  s   JA28III+>+>seLLE,,,((IUI&&&;)/))))JA28aS1#sO+D+D$-II  / /E,,,lllCDDIUI&&&;)/))))I12RHHE===>>Iyt4444;)/))))I12$rd);#0==  2 2E2626:6626:6626:68 9 9I yt4444;)/))))))r   c                      g dd} t          j        fd| D                       }t          j        t          j                            |                     }t	          j        ||           d S )N)r   r         @      @      @r   c                 .    g | ]fd D             S )c                 R    g | ]#}t           j                             |           $S r   )r   rL   )r3  r  r  s     r   r6  z8test_kappa3_array_gh13582.<locals>.<listcomp>.<listcomp>  s>     ( ( ( \''v'>> ( ( (r   r   )r3  r  shapess    @r   r6  z-test_kappa3_array_gh13582.<locals>.<listcomp>  sK     ? ? ?,2( ( ( ( &( ( ( ? ? ?r   r  )r   r  r   rL   r   r  )r   rs  res2r   s      @r   test_kappa3_array_gh13582r    s    &&&FG
( ? ? ? ?6=? ? ? @ @C8EL&&vw&??@@DT"""""r   c                  T   t          j        g d          t          j        g d          d} t          j        fd| D                       }t          j        t          j                            |                     }t	          j        ||           t          j        g d          t          j        g d          t          j        fd| D                       }t          j        t          j                            |                     }t	          j        ||           t          j        g d	          t          j        g d
          d d d f         t          j        t          j                            |                     }|j        dk    sJ d S )N)r   r  r  r  r  )r   r   g      r   r  r   c                 L    g | ]fd t          d          D              S )c                 l    g | ]0}t           j                             |         |                    1S r  r   r   r3  r  hr   r  s     r   r6  z8test_kappa4_array_gh13582.<locals>.<listcomp>.<listcomp>  H     & & & \''!adF'CC & & &r   r   r   r3  r  r  r   s    @r   r6  z-test_kappa4_array_gh13582.<locals>.<listcomp>  [     = = =*0& & & & & &!!HH& & & = = =r   r  )r&        пr  r   r&  r   )r   r   r   gUUUUUUտr&  r   c                 L    g | ]fd t          d          D              S )c                 l    g | ]0}t           j                             |         |                    1S r  r  r  s     r   r6  z8test_kappa4_array_gh13582.<locals>.<listcomp>.<listcomp>  r	  r   ru   r
  r  s    @r   r6  z-test_kappa4_array_gh13582.<locals>.<listcomp>  r  r   )r&  r   r   )r&  r   r   r   )rt   rt   rs   )r   r  r   r   r   r  r  )r   rs  r  r  r   s      @@r   test_kappa4_array_gh13582r    s   
***++A
((())AG
( = = = = =4;= = = > >C8EL&&q!W&==>>DT""" 	+++,,A
)))**A
( = = = = =4;= = = > >C8EL&&q!W&==>>DT""" 	A
!!!""111d7+A8EL&&q!W&==>>D:""""""r   c                     d} t          j        t          |           5  t          j                    j         d d d            n# 1 swxY w Y   t          j        t          |           5  t          j                    j         d d d            n# 1 swxY w Y   dt          j        _        t          j                    }t          |t                    sJ t          t          j        d           d S )Nz.'rv_continuous_frozen' object has no attribute)matchherringpmf)
r   r   AttributeErrorr   r  r  logpmfr  r   delattr)r  frozen_norms     r   test_frozen_attributesr    s>    ?G	~W	5	5	5  
              	~W	5	5	5  
              EJN*,,Kk#788888EJs#   AA
A)BBBc                     t           j                            d          } t           j         d}}t	          j        t          j                            ||          t          j	                            |                     |                     d          |                     d          }}|                     d          dk     }d||<   ||         }t          j                            ||          }t	          j        ||         t          j	                            |                     t	          j        ||          t          j                            ||          ||                               d S )Nr   )rs   rs   )r   r   )
r   r   default_rngr(  r   r  r   rn   r   r  )r   r   ry   maskx_normrs  s         r   test_skewnorm_pdf_gh16038r    s   
)


"
"CF7AqAU^''1--uz~~a/@/@AAA::6:""CJJFJ$;$;qA::6:""S(DAdGtWF
.

Q
"
"CSY
v 6 6777S$Z!3!3AteHah!G!GHHHHHr   r   r   r   r   r   r  r   rN  r  r  entropyexpectr  meanstdrl  intervalgffffff?r  r   mvcasec                 2   | \  }}t          t          j                    |          } || }| t          v rt	          |t
          j                  sJ d S t	          |d         t
          j                  sJ t	          |d         t
          j                  sJ d S )Nr   r   )r   r   r  
scalar_outr  r   number)r%  method_namer  r   rs  s        r   test_scalar_for_scalarr*    s     KUZ\\;//F
&$-Cz#ry)))))))#a&"),,,,,#a&"),,,,,,,r   c                     t           j                            g d          } t          | d         t          j                  sJ t          | d         t          j                  sJ t           j                            g d          } t          | d         t          j                  sJ t          | d         t          j                  sJ t           j                            dg d          } t          | t          j                  sJ d S )Nr  r   r   r   )r   r  rZ  r  r   r(  fit_loc_scalennlf)rs  s    r   test_scalar_for_scalar2r.    s    
*..
#
#Cc!fbi(((((c!fbi(((((
*
"
"999
-
-Cc!fbi(((((c!fbi(((((
*//&)))
,
,Cc29%%%%%%%r   r   )qsysnumpyr   numpy.testingr  r   r   r   r"  scipy.integrater   	itertoolsscipyr   common_testsr   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   scipy.stats._distr_paramsr   !scipy.stats._distn_infrastructurer   rx  maxsizer   r   r   r   skip_fit_test_mleslow_fit_test_mmfail_fit_test_mmr   skip_fit_fix_test_mlefail_fit_fix_test_mmr   r   r   case1case2productr%  r|   	histogram_histrv_histogram_rv_histr   tupler   r   parametrizer   r   r   r   r   r   r
  r  r$  r+  r@  rD  rL  rP  r[  r   r_  r`  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r   r  r  r  r'  scalars_outr*  r.  r   r   r   <module>rH     sl   



            * * * * * * . . . . . .          
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? 
? / . . . . . B B B B B B	 [5 	- - -
 NMM	I I I C C C ) ) ) E E EF F FF #|$  *'*::< <. . . 6 6 6B B BB &,'  2+.BBD D ? ? ?$  * * *34	6 	6!fjjj))&Y&u~e}EE 9 9MD'BL11411111E!u!%999H##Xuuww$78888	  	  	  )>)>)@)@AA,zl;;YI YI <; BAYIx )>)>)@)@AA
4 
4 BA
4? ? ?"B "B "BJ  '++--/ /#6 #6/ / #6L *H55&J &J 65&Jj .? ? ?	@ 	@9 9	@ 	@9$$ $ $:I I I6F F F,  1 1 1: : :	5 	5 	5) ) )  ! ! !4 4 46 6 6I I I$
I 
I 
I
I 
I 
I
G 
G 
G
I 
I 
I
U 
U 
UI I I&G G G+ + +H H H6 6 6
* 
* 
*, , ,2  $A $A $A B B)8440 0 54B B0&$ $ $Q9 Q9 Q9h* * *4# # # # # #0  
I 
I 
I bkEA3<(QC51#,!oqc{WqcNUQCLqclXsOi_xnnvrlUBK%F
 TF#i_w6GH k!9::
- 
- ;:
-	& 	& 	& 	& 	&r   