L iPpdZddlZddlZddlZddlZddlZddlmZddlZddl Z ddl Z ddl m Z m Z mZmZmZmZmZmZmZmZmZddlZddlmZddlZddlmZmZddlmZddl m!Z!dd l"m#Z#dd l$m%Z%m&Z&m'Z'm(Z(ddl)m*Z*dd l+m,Z,dd l-m.Z.ddl/Z dd l0m1Z1m2Z2m3Z3ddl4m5Z5m6Z6ddl7m8Z8m9Z9ddl:m;Z;mZ>m?Z?m@Z@ddlAmBZBejjdkDZEejdk(xre jdk(ZGddgZHddZIdZJdZKGddZLddZMdZNejjdgd d!ZQGd"d#ZRGd$d%ZSGd&d'ZTGd(d)ZUGd*d+ZVGd,d-ZWGd.d/ZXGd0d1ZYGd2d3ZZGd4d5Z[Gd6d7Z\Gd8d9Z]Gd:d;Z^Gd<d=Z_Gd>d?Z`Gd@dAZaGdBdCZbGdDdEZcGdFdGZdGdHdIZeGdJdKZfGdLdMZgGdNdOZhGdPdQZiGdRdSZjGdTdUZkGdVdWZlGdXdYZmGdZd[ZnGd\d]ZoGd^d_ZpGd`daZqGdbdcZrGdddeZsGdfdgZtGdhdiZuGdjdkZvGdldmZwGdndoZxGdpdqZyGdrdsZzGdtduZ{GdvdwZ|GdxdyZ}Gdzd{Z~Gd|d}ZGd~dZGddZGddZGddZGddZGddZGddZGddZddejddejzz zddejddejzz zddejddejzz zddejddejzz zddejddejzz zg fdejddejzz ddejddejzz zddejddejzz zdz ddejddejzz zdz ddejddejzz zdz g fddejdejzz dddejdejzzz dddejdejzzz dddejdejzzz dddejdejzzz dddejdejzzz dddejdejzzz dgfgZGddZGddZGddZGddZGddZGddZGddZGddZGddZGd„dëZGdĄdūZGdƄdǫZGdȄdɫZdʄZGd˄d̫ZGd̈́dΫZGdτdЫZGdфdҫZGdӄdԫZGdՄd֫ZGdׄdثZdلZGdڄd۫ZGd܄dݫZGdބd߫ZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZGddZdZejjseEd  d Zd Zd ZdZdZdZdZdZdZdZejjdgddZĐdZŐdZƐdZǐdZȐdZɐdZʐdZːdZ̐d Z͐d!Zejjd"d#ej:d$d%gfd&ej:d'd(gfd)ej:d*d+gfd,ej:d-d.gfgd/Zϐd0ZАd1Zѐd2ZҐd3Zejjd4gd5d6Zejjd7gd8d9Zejjd:gd;d<Z֐d=Zejjd4gd>d?Zؐd@ZGdAdBe*jZGdCdDe*jZGdEdFe*jZGdGdHe*jZGdIdJZGdKdLZejjseEdM dNZdOZdPZdQZdRZdSZdTZdUZdVZdWZdXZejjd4gdYdZZejjd[d\d]gd^Zejjd_ddgd`fdadbgd`fdcddgdefgdfZdgZdhZdiZGdjdkZdlZGdmdnZGdodpZGdqdrZGdsdtZduZejjdve9e6zdwZdxZdyZejjd7dzd{gd|Zejjd:gd}d~ZdZdZdZGddZGddZGddZGddZGddZGddZejjdgddZy(z! Test functions for stats module N)Path) assert_equalassert_array_equalassert_almost_equalassert_array_almost_equalassert_allcloseassert_ assert_warnsassert_array_lesssuppress_warningsassert_array_max_ulpIS_PYPY)raises) typecodesarray)rec_append_fields)special)check_random_state)IntegrationWarningquad trapezoidcumulative_trapezoid) argsreduce)_XMAX)xlogy polygammaentr)distcont invdistcont) distdiscreteinvdistdiscrete) FitDataError _argus_phi)rootfmindifferential_evolution)productdarwinx86_64 tukeylambdapearson3cD||d|}tt|||y)Nz does not have attribute msg)r hasattr)abr/s j/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/scipy/stats/tests/test_distributions.py_assert_hasattrr46s( {,QC0 GAqMs#cLttjjdy)Nf_gen)r4scipystats distributionsr5r3test_api_regressionr<<sEKK--w7r5cttjjj}t Dcgc]}|d }}t Dcgc]}|d }}gd}||z|z}ttd|}||k(sJycc}wcc}w)Nr) rv_discrete rv_continuous rv_histogramentropyc8t|jd S)N<)str startswithss r3z.test_distributions_submodule..KsA(9(9#(>$>r5)setr8r9r:__all__rr!filter)actualdist continuousdiscreteotherexpecteds r3test_distributions_submodulerRAs **22 3F&./d$q'/J/$01DQ1H1 EH$u,H6>IJH X  01s B B c reZdZejj dgdejj dddejddgdZd Z d Z ejj d gd d Z ejj dgddZ dZ ejj dgddZdZejj ejj dddgejj dgdejj dddgejj dddgdZejj$dZejj d d!dgd"Zd#Zd$Zd%Zy&)' TestVonMisesk)皙?r exrr dcd}d}||dd|||dd|||dd|||dd|||dd|||dd|y)Nctj|||}t|j||j|dtj z|zzy)Nlocscale)r9vonmisesrpdfnppirULrGrXvms r3check_vonmises_pdf_periodiczHTestVonMises.test_vonmises_periodic..check_vonmises_pdf_periodicTs@q2B q 266!q255y1}2E+F Gr5ctj|||}t|j|dz|j|dtj z|zzdzy)Nr]r r`)r9rarcdfrcrdres r3check_vonmises_cdf_periodiczHTestVonMises.test_vonmises_periodic..check_vonmises_cdf_periodicXsMq2B q A "qAIM': ;a ? Ar5rr rYr;)selfrUrXrhrks r3test_vonmises_periodicz#TestVonMises.test_vonmises_periodicQsd H A $Aq!Q/#Aq!Q/#Aq"a0#Aq!Q/#Aq!Q/#Aq"a0r5cttjjtj ttjj tj yN)rr9 vonmises_liner1rcrdr2rls r3test_vonmises_line_supportz'TestVonMises.test_vonmises_line_supportes8U((**RUUF3U((**BEE2r5cdtjd}t|jddy)N r?)r9rarrj)rlrgs r3test_vonmises_numericalz$TestVonMises.test_vonmises_numericalis" ^^C BFF1Is+r5zx, kappa, expected_pdf))rV{Gz?g|65?)rV9@g?U?)rVrtg"?)@rwgDfI?)ryrxg1<)ryrtc`tjj||}t||dyNV瞯<rtol)r9rarbr)rlrXkappa expected_pdfrbs r3test_vonmises_pdfzTestVonMises.test_vonmises_pdfws&nn  E*\6r5zkappa, expected_entropy))r gA ?)g,eޞ?)rZgBb9d22)g G)g c^tjj|}t||dyNvIh%<=r~)r9rarAr)rlrexpected_entropyrAs r3test_vonmises_entropyz"TestVonMises.test_vonmises_entropys%..((/!1>r5cLd}tjj|}tjj|}tjj|}tjdddj |}tjddtj zdj |}tjdddtj zt|z dzj |}t||dt||dy) Ni@}r rr] random_stater`r}atol) rcrandom default_rngr9rarvsrdabsr)rlseedrng1rng2rng3rvs1rvs2rvs3s r3test_vonmises_rvs_gh4598z%TestVonMises.test_vonmises_rvs_gh4598syy$$T*yy$$T*yy$$T*~~aQa044$4G~~aQruuWA6:::M~~aQ%&ruuWSY%6q%8;;>3D3;Q d/d/r5zx, kappa, expected_logpdf))rVrwg EJ?)rVrxgoι?)rVrtg0,)ryrwgdty)ryrxgʹw[A)ryrtgc`tjj||}t||dyr|)r9ralogpdfr)rlrXrexpected_logpdfrs r3test_vonmises_logpdfz!TestVonMises.test_vonmises_logpdfs&&&q%0e.r5r r`cyrr;rs r3rHz3TestVonMises.test_vonmises_expect..rr5c2tjd|zS)Ny?)rcexprs r3rHz3TestVonMises.test_vonmises_expect..sBFF2a4Lr5 complex_funcN) rcrrr9raexpectr issubdtypedtypefloatingrdanglecomplexfloating)rlrngr^rlbresboundss r3test_vonmises_expectz!TestVonMises.test_vonmises_expectsUii##$78A+UBnnE299+FQ}}SYY 444R!bee)^#9ennE299+OOQ}}SYY 444R!bee)^#9ennE299:PS;ASPQS sag7}}SYY(:(:;;;r5rvs_locr` rvs_shape)r rZחAfix_locTF fix_shapecF|r|rtjdtjj d}t j j|d||}ddi}|r||d<|r||d<tt j |t j jfi|y) NzNothing to fit.rr)sizer^rfscaler flocf0) pytestskiprcrrr9rar_assert_less_or_close_loglikennlf)rlrrrrrdatakwdss r3test_fit_MLE_comp_optimizerz(TestVonMises.test_fit_MLE_comp_optimizers  KK) *ii##$78~~!!)$G/2"4!} "DL "DJ%ennd&+nn&9&9 C=A Cr5cbgd}tj|}dtjz}tjj ||\}}}|tj tjk(sJttj|tjjd|y)N)g!*Kg4,%OԿgZ۵?g ge_@g-8gPghn?grr`g d?)r8r9rarrcrdrqs r3test_vonmises_fit_boundsz%TestVonMises.test_vonmises_fit_bounds sT    !WA 6    "%%'9"5!6Q ?r5N)__name__ __module__ __qualname__rmark parametrizercrdrmrrrvrrrrrxslowrslowrrrrrr;r5r3rTrTPs [[S-0 [[S1aC"891:11$3, [[5/0707 [[6;< ? < ? 0  [[8BC=C=<4 [[ [[YA/ [[[-8 [[Yu 6 [[[4-8C9790 C$ [[ O O [[Vb!W- (. ( M9 @r5rTc X| |j}|j|fi|}tt|||fi|}|st j ||k7sJ|||}|||}||kst j ||dsJd|vr |d|dk(sJd|vr|d|dk(sJyy)a^ This utility function checks that the negative log-likelihood function (or `func`) of the result computed using dist.fit() is less than or equal to the result computed using the generic fit method. Because of normal numerical imprecision, the "equality" check is made using `np.allclose` with a relative tolerance of 1e-15. Nr}r~rrr)rrsupertypercanyallclose) rMrfuncmaybe_identicalrmle_analytical numerical_optll_mle_analyticalll_numerical_opts r3rrs |yyTXXd+d+N$t*d/==M vvn 5666^T2M40 !1 1 KK)+;% HJ I ~b!T&\1114b!T(^333r5c ddg}|jr.t|jjd}|gdd|z }tt |t j t|}gd}tjtd5|j|fi|dddtjtd5|jt jgdddtjtd5|jt jgdddtjtd 5|j|d dddtjtd 5|j|gd gt|d z zdddy#1swYxYw#1swYxYw#1swYxYw#1swYvxYw#1swYyxYw)Nrr,)rf1f2r r`r3All parameters fixed. There is nothing to optimize.matchz#The data contains non-finite valueszUnknown keyword arguments:r`) extra_keywordzToo many positional arguments.r )shapeslensplitdictziprcarangerr RuntimeErrorr ValueErrornaninf TypeError)rMparamnshapes all_fixedrs r3assert_fit_warningsr<s X E {{dkk'',- #HW--S #e* 567I D |& '$ ##$ zB D "&& zB D "&& y(D E( Q'( y(H I.-SZ!^,-..$$((..s<F2!F? !G G$G#2F<?G GG #G,rM)alpha betaprime fatiguelifeinvgammainvgauss invweibull johnsonsblevylevy_llognormgibrat powerlognormrayleighwaldctt}||}tt|}t |j |j g|dt|j|j g|tj t |j |jg|dt|j|jg|tj y)zgh-6235rN) r rgetattrr9rrbr1rrrcrr2)rMdctargss r3 test_supportr*Ss x.C t9D 5$ D/$/3TVV+d+bffW5/$/3TVV+d+bffW5r5c$eZdZdZdZdZdZy) TestRandIntcBtjjdyNrrcrrrqs r3 setup_methodzTestRandInt.setup_methodf tr5c0tjjddd}tt j |dkt j |dk\ztt |dk(tjjddd}tt j|dk(t|jjtdvtjjdd}t|dk\|dkztt|tjtt| tjddjd }t|jjtdvy) NrrZrr`2 AllInteger.r.r)r9randintrr rcrr shapercharr isinstance ScalarTypereprrrlvalsvals r3test_rvszTestRandInt.test_rvsis}}  BS 1tby!BFF419$556D S !}}  BW 5')* 9\#::;mmB'sRx() 3 .DcODmmB#''* )L"99:r5ctjdd}tj|dk\|dkzdd}tjj |dd}t ||y)Nr$rr3{Gz?)rcr_wherer9r:pmfr)rlrUoutrAs r3test_pdfzTestRandInt.test_pdfvsR EE!BKhhQ1r6*J:}}  Ar*!$,r5ctjddd}tj|}tj|dk\|dk\gd|dz dzd z gd}tj j |dd}t||d y) NrrErZr3r?@r rx decimal)rclinspacefloorselectr9r:rjr)rlrXrUrJrAs r3test_cdfzTestRandInt.test_cdf|sv KK2s # HHQKiib!q&)C!C%'F1C+DaH}}  Ar*!$R8r5N)rrrr0rCrKrUr;r5r3r,r,es ;- 9r5r,cBeZdZdZdZdZdZdZdZdZ dZ d Z y ) TestBinomcBtjjdyr.r/rqs r3r0zTestBinom.setup_methodr1r5ctjjddd}tt j |dk\t j |dkztt j |dk(t|jjtdvtjjdd}tt|ttjddjd}tt|tjt|jjtdvyNrYrr5r4rr7r) r9binomrr rcrr;rr<rr=intndarrayr@s r3rCzTestBinom.test_rvss{{r4g6tqy!BFF42:$667')* 9\#::;kkoob$' 3$%kk"d#''* 3 +, )L"99:r5ctjjddd}tjjddd}t|dddt|dddy)NrZr rrMr}rrr9r[rIr)rlvals1vals2s r3test_pmfzTestBinom.test_pmfsJ S!, 3*sQ7sQ7r5ctjdd}tjgd}t t || }|j }t||tjdd}|j }t|dtjdd}|j }t|dy)Nr`ru)?rurerzrM) r9r[rcrsumrrArr)rlr2 expected_p expected_hhs r3 test_entropyzTestBinom.test_entropys KK3 XX/0 % J788 IIK:& KK3  IIKQ KK3  IIKQr5cFtj5tjdtt t j ddjdt t j ddjddddy#1swYyxYw)Nerrorr`rnp) warningscatch_warnings simplefilterRuntimeWarningrr9r[rstdrqs r3 test_warns_p0zTestBinom.test_warns_p0so  $ $ & 9  ! !'> : qA.335q 9 qA.224a 8 9 9 9s A9BB cVd}tjjd|d|k(sJy)Nr333333?rM)qrnro)r9r[rrlrns r3 test_ppf_p1zTestBinom.test_ppf_p1s( {{S1Q666r5cd}d}tjd}tjj |||}tj j |||z}t ||dy)NglyCgq]\ T3gHP)Mb@?gP)rVg*6y)?g8@(J)gNgmCg'K@$[U)rgonьgs 32chtjj|| g}t|||gdyr|)r9rrr)rlrXr~logps r3 test_logpdfzTestCauchy.test_logpdf s.||""Ar7+sCju5r5))g7y1gu lY<)g^?)rre)rru)r r)rg)nE?)g7y1C?z method, sgnr rc6|||z}t||dyr|r)rlrXr~methodsgnros r3 test_cdf_sfzTestCauchy.test_cdf_sfs 3q5M3U+r5))gRyXsg!;v+͋)(,* EgjLҳ)$@g )rz9B.)g$gCį )g :@sgg>Z)g 5g*\Bctjj|}t||dtjj | }t||dyN+g /)re)rurz)rrM) !?gqmA)g?gqJRBc6|||z}t||dyr|r)rlror~rrrXs r3 test_ppf_isfzTestCauchy.test_ppf_isf?s q M3U+r5N)rrrrrrrrrr9rrjrrrrisfrr;r5r3rrsa [[ # & % ' $ # # # # $ $ % ' (6 (6  [[ %  [[ ,,  A  ,,//2   ,  ,  [[X;<0<0 [[ /  [[ ,,  A  ,,  B  !", " ,r5rceZdZdZdZdZdZdZdZe jjddefd gd Z e jjdgd d Z y )TestChignT9;g2 >h?@cttjjdd}t||jdy)NrYrr}r~)r9chirr CHI_SF_10_4rlrGs r3test_sfzTestChi.test_sf[s( IILLQ 4++%8r5cttjj|jd}t |ddy)NrrYr}r~)r9rrrrrlrXs r3test_isfzTestChi.test_isf_s( IIMM$**A .2E*r5chd}d}tjj||}t|ddy)Nrr8ga rr~)r9rrr)rlrXdfrs r3 test_logcdfzTestChi.test_logcdfcs/  !!!R( 6UCr5chd}d}tjj||}t|ddy)Nrwr8@y`rr~)r9rrr)rlrXrrs r3 test_logsfzTestChi.test_logsfjs-   2&5EBr5df, ref@@)gļBgcAcZttjj||dyN-q=r~)rr9rrrlrr~s r3 test_meanzTestChi.test_meanws  r*Ce?gG6ƴ?g9b?|^?߈܁r?gT C?rrgm?gFZۤ?g HB?gTXek?g?bȓE?gLZ;x?gJ>+=r~@)g2c}`?g>t\f?g˂ q?gg'T){?g mw?g>t\?h'T)?7-h J?u8n?A#?g:Q?rrrrgZrԢ?g߄q?g)aL?gr'Orurrr^r_)g3c}?g>t\?g˂ ?f'T)?#n?5-h J??u8n?vL1??#?||P?g:Q?rrrrrrrr)rcrRr9 crystalballrbrrrlX calculatedrQs r3rKzTestCrystalBall.test_pdfs KKc2 &s +&&**13#*> 88 K L *59&&**13#*> 88 J K *59&&**13#3c*R 88 G H *59r5ctjddddd}tjj |dd}tj gd }t ||d tjj |dd }tj gd }t ||d tjj |dd dd}tj gd}t ||d y)rrrNrNrrMryr)ghQ| )?gj,,?g d}9?gH6?g|^?gEv?glQ| )?g d}9?g|^?go[?gsX?g& Ռ?g~M+?gZR c?gtE_s?gi?gB?gEg?gvP ?gx훟?rr~r)gpr?gt\v?ge}?gݠn^?gCȘU?at\?ݠn^?~[n|D?gS4s/?2s?`qfhG?IgL?荩s?rA?IH?guk?ghi"?gP ?g.q?gs?rur)go?rge?rgPU,?rgjݗ ?rg?rg_!Y?rga?rgR?rg( ?r g܉x?r )rcrRr9rrjrrrs r3rUzTestCrystalBall.test_cdfs KKc2 &s +&&**13#*> 88 E F *59&&**13#*> 88 E F *59&&**13#3c*R 88 E F *59r5zx, beta, m, rootref))(@rMrygI9)"@@?gy <)rVgjt?g +,)gryrgGA*?)g>rurNg^v'?)gd~Qr皙?g眭?cdtjj|||}t||dy)Nrrr~)r9rrr)rlrXrrrootrefrs r3rzTestCrystalBall.test_sfs-   ! !!$! ! 4G%0r5ctjgd}tjgd}tjgd}tjj d||}t ||dtjgd}tjdd tj d d g}||z }tjj d ||}t ||dtjtj tj tj d dg}||z } tjj d||} t | | dtjtj tj tj tj dg}||z } tjj d||} t | | dtjtj tj tj tj dg}||z } tjj d||}t | |dtjtj tj tj tj dg}||z }tjj d||}t ||dy)zs All values are calculated using the pdf formula and the integrate function of Mathematica )ryrMrryr)rrryr r )rMrMrMrMrMrMbP?r~)gԚh@g [&@gͪ@g2dQ@gn6-@g?ޫV&̿gBgQCRgQF\jr g @gn(@r`g?Җ)rgMg'#@rg('UHrN)rcrr9r_munprr)rlrrexpected_0th_momentcalculated_0th_momentnormr1expected_1th_momentcalculated_1th_momentexpected_2th_momentcalculated_2th_momentexpected_3th_momentcalculated_3th_momentexpected_4th_momentcalculated_4th_momentexpected_5th_momentcalculated_5th_moments r3 test_momentszTestCrystalBall.test_moments s* xx12 HH. /!hh'@A % 1 1 7 74 C+-BO xxHI HHh"&&)YG H$h % 1 1 7 74 C+-BO HHbffbffbfffh? @$h % 1 1 7 74 C+-BO HHbffbffbffbffjA B$h % 1 1 7 74 C+-BO HHbffbffbffbffg> ?$h % 1 1 7 74 C+-BO HHbffbffbffbffh? @$h % 1 1 7 74 C+-BOr5ctjdd}|j}d\}}}tj|||}t t |j||}t||dy)Nr`r)ir3@ Hz>r~) r9rrArcrRrrrbr)rlcbres1lohiNrXres2s r3rjzTestCrystalBall.test_entropyMs`   q! $zz|& B KKB "bffQi!,d.r5N) rrrrKrUrrrrr#rjr;r5r3rrsE<:|<:D [[ 011+PZ/r5rc$eZdZdZdZdZdZy) TestNBinomcBtjjdyr.r/rqs r3r0zTestNBinom.setup_methodYr1r5cntjjddd}tt j |dk\tt j |dk(t|jjtdvtjjdd}tt|ttjddjd}tt|tjt|jjtdvyrZ) r9nbinomrr rcrr;rr<rr=r\r]r@s r3rCzTestNBinom.test_rvs\s||Dw7tqy!"')* 9\#::;llr4( 3$%ll2t$((+ 3 +, )L"99:r5c ,ttjtjj dddtjj dddtjjj ddd}t|dy)Niigp= ף?rr ) rrcrr9r1logpmfrIr8r)rlrBs r3rczTestNBinom.test_pmfgshu||223TBC ((c48 :kk  ''1a0S!r5ctjjgddd}tjtjj gddd}t ||y)N)rrrr333333@?rm)r9r1rrcrrjrrlrAr~s r3test_logcdf_gh16159zTestNBinom.test_logcdf_gh16159osK||""<3$"?ffU\\%%lcT%BCc"r5N)rrrr0rCrcr8r;r5r3r.r.Xs ;#r5r.c eZdZdZej j dZej j dZej j dZ ej j dZ dZ dZ dZ d Zy ) TestGenInvGausscBtjjdyr.r/rqs r3r0zTestGenInvGauss.setup_methodwr1r5ctjdd}tj|jdd|j\}}t |dkDdy)Nffffff@rrr皙?Tr9 geninvgausskstestrrjrrlgigrros r3test_rvs_with_mode_shiftz(TestGenInvGauss.test_rvs_with_mode_shiftzIS)||CGGDGA377K1QXt$r5ctjdd}tj|jdd|j\}}t |dkDdy)Nrrr>rrr?Tr@rCs r3test_rvs_without_mode_shiftz+TestGenInvGauss.test_rvs_without_mode_shiftsIT*||CGGDGA377K1QXt$r5ctjdd}tj|jdd|j\}}t |dkDdy)NrV皙?r>rrr?Tr@rCs r3test_rvs_new_methodz#TestGenInvGauss.test_rvs_new_methodrFr5c|d}t|dddt|dddt|dddy)Nctj||}|jdd}tj||jddkDS)Nr>rrr r?)r9rArrBrj)ror2rDrs r3 my_ks_checkz4TestGenInvGauss.test_rvs_p_zero..my_ks_checksE##Aq)C''t$'7C<<SWW-a047 7r5rrJTrr)r)rlrNs r3test_rvs_p_zerozTestGenInvGauss.test_rvs_p_zeros< 8 [C($/[C($/[C($/r5cttjddjdddtjddjddz y)Nr`rYrrr r)rr9rArrqs r3test_rvs_negative_pz#TestGenInvGauss.test_rvs_negative_psP!!$*..BT.JE%%c1-11r1MM Or5ctjjdddd}ttj|ddgddkDd d t j d dd }}tjj|dd|z | }t|tj|j|tjj|dd|z | }t|tj|j|y)Nr>rr r)rror2rrr)333333?TrZrwrY)ror2r_) r9rArrrBrcrRrbrrrj)rligmurXpdf_igcdf_igs r3 test_invgausszTestGenInvGauss.test_invgausss    " " " MU\\"js;A>EtLR[[q"-A""&&qDAF"&Er 2 6 6q 9:""&&qDAF"&Er 2 6 6q 9:r5ctjgd}tjddd}t|tj j |ddy)N) g;g8y8?g\}Z?ghܲ0|?gRq?rwrrYrur )rcrrRrr9rArb)rlvals_RrXs r3 test_pdf_RzTestGenInvGauss.test_pdf_RsJ,- KKa $ 1 1 5 5aa @Ar5cttjjddddttjjddddy)Nrrug>Ar6r`)rr9rArbrqs r3 test_pdf_zerozTestGenInvGauss.test_pdf_zerosBU&&**1c37; U&&**3A6:r5N)rrrr0rrrrErHrKrOrRrZr]r_r;r5r3r:r:vs [[%%  [[%%  [[%%  [[00O ; B;r5r:ceZdZdZdZdZejjdgddZ ejjdgddZ d Z d Z d Z d Zd ZdZy)TestGenHyperboliccBtjjdyr.r/rqs r3r0zTestGenHyperbolic.setup_methodr1r5ctjgd}d\}}}d\}}|||z||zf}tj|||d}tjddd} t |j | |dd y) N) gF^T=g{X'=gNunƢsy>g7!t?gɫzI?g̸?g?gq 6.?gmPZz?g:PgN?r`r`r rurr]rYrrrr)rcrr9 genhyperbolicrRrrb rlr\lmbdarrrWdeltar)ghrXs r3 test_pdf_rzTestGenHyperbolic.test_pdf_rs~ %ud EuU{DJ/  $Be < KKR $q 6>r5ctjgd}d\}}}d\}}|||z||zf}tj|||d}tjddd} t |j | |dd y) N) g=R0W<=gEB=g#Nb>g_PG>g! 1Or?gUM?g u./?gfy?gl5\?gkV?rdrer]rfrYrư>rg)rcrr9rhrRrrjris r3 test_cdf_rzTestGenHyperbolic.test_cdf_rs~ %ud EuU{DJ/  $Be < KKR $q 6=r5zx, p, a, b, loc, scale, ref) )r`rrrurg8ɹvF(;)rqrYrrer rg[ Ϡ?)rqrYrg?rr g✝`D;)rq?r):?rr g dL;)rrrrrsrr gzK^7?)rrrsrr gj?)rrtrrr ga=vG:)rrtrrurr g?)(rtrrurr g1bV?)<rtrrurr g?cjtjj||||||}t||dyNr]dy=r~)r9rhrjr) rlrXror1r2r^r_r~rjs r3test_cdf_mpmathz!TestGenHyperbolic.test_cdf_mpmaths3!!%%aAqc%GSu-r5))rrorOrrr gC!,?)rr@@r rg,Ћf?)rrr|r}r rrM)r`rrrurgm"چ >),rYrrer rg:;)rwrtrrurr gw=)Krtrrurr g3Z0&Krrr?T)r9rhrBrrjr) rlrjrrrWrkr)rlrros r3rCzTestGenHyperbolic.test_rvs,st%ud EuU{DJ/  $Be <||BFF4F@"&&I1QXt$r5c6tjddd}tj|dtjtjj zd}}dtj |}}| dz ||f}tj|||d}tj|jd|jdd ddtjf}t|j|tjj||dd y) Nr r3rYr`rr]rwGz?r6rorg)rcrR float_powerrfloat32epssqrtr9rhrnewaxisrrbt) rlrrrrWrkr)rlrXs r3 test_pdf_tzTestGenHyperbolic.test_pdf_t9s [[B #nnR+BHHRZZ,@,D,DDatrwwr{EAud#  $Be < KKt bffTlB 72:: F FF1Iuww{{1b) r5cdtjtjjd}}}d\}}|||f}t j |||d}tj |jd|jddddtjf}t|j|tjj|dd y) Nrr)rr r]rwrr6rorg) rcrrrr9rhrRrrrrbr) rlrjrrrWrkr)rlrXs r3test_pdf_cauchyz!TestGenHyperbolic.test_pdf_cauchyKs "288BJJ#7#;#;Qdu Eud#  $Be < KKt bffTlB 72:: F FF1Iu||''* r5ctjddd}tjtjj}d\}}}|||z||zf}t j |||d}tjdddddtjf}t|j|t jj||dd d y) NrfrY)r r rr]rrr6r rdy=rg) rcrRrrrr9rhrrrblaplace) rlr^rkrjrrr)rlrXs r3test_pdf_laplacez"TestGenHyperbolic.test_pdf_laplace\skk#r2&$(($uduU{DJ/ $Cu = KKR $Q ] 3 FF1Iu}}((1(= r5c \tjdddtjdddtjdtdztjdddtjdddf\}}}}d }|||z||zf}t j |||d }tj|j d |j d d ddtjf}t|j|tjj|||||ddy)Nr rrYrrrZrr]rwrr6)r1r2r^r_rrg) rcrRrrr9rhrrrrb norminvgauss) rlrrrkrWrjr)rlrXs r3test_pdf_norminvgaussz'TestGenHyperbolic.test_pdf_norminvgaussqs Ar2& Ar2&r~~b%)'DD Aq"% D#r* "tUBuu}dUl3  $Be < KKt bffTlB 72:: F FF1Iu))--Ud%.9 r5N)rrrr0rmrprrrr{rrrCrrrrr;r5r3raras?,>4 [[% < . . [[% @ - -=. %$"*r5raceZdZejj dddgdZejj dddgdZd Zy ) TestHypSecantz x, reference)r3gA0=)r6g!b;c^tjj|}t||dyr)r9 hypsecantrr)rlrX referencers r3rzTestHypSecant.test_sfs$__   "IE2r5z p, reference)rog9bT*@)rgTW-;@c^tjj|}t||dyr)r9rrr)rlrorrXs r3rzTestHypSecant.test_isfs$ OO   "951r5cd}d}tjj|}t||dtjj | }t||dy)NI@g!brr~)r9rrrrrs r3rzTestHypSecant.test_logcdf_logsfsN %''*%0%%qb)s/r5N) rrrrrrrrrr;r5r3rrsg  [[^9:<=3=3 [[^89;<2<20r5rc~eZdZdZdZdZejjdgddZ dZ dZ d Z d Z y ) TestNormInvGausscBtjjdyr.r/rqs r3r0zTestNormInvGauss.setup_methodr1r5ctjgd}tjgd}tjj |dd}t ||dy)N)gp~٧>g @X>g}e?g{)߳?gwH?irrr8r rur1r2rr)rcrr9rrjr)rlr_cdfx_testvals_cdfs r3 test_cdf_RzTestNormInvGauss.test_cdf_RsO <=,-%%))&A)=%d3r5ctjgd}tjgd}tjj |dd}t ||dy)N)gp϶>g\H55$?geСt&?go NiH?g]u>rr rurrr)rcrr9rrbr)rlr_pdfrvals_pdfs r3r]zTestNormInvGauss.test_pdf_RsM<=,-%%))&A)=%d3r5zx, a, b, sf, rtol))rr r!7?r)r~r r?=r)r rrQgy5`?r)rYrrQgMLC9rctjj|||}t|||tjj |||}t|||yNr~r9rrrr)rlrXr1r2rrrGrs r3test_sf_isf_mpmathz#TestNormInvGauss.test_sf_isf_mpmathsP    ! !!Q *2D)    " "2q! ,14(r5cddg}ddg}d}ddg}tjj|||}t||dd tjj |||}t||d y) Nrr~r rrrrr|r_ror~r)rlrXr1r2rrGrs r3test_sf_isf_mpmath_vectorizedz.TestNormInvGauss.test_sf_isf_mpmath_vectorizedsr H F  "8 9    ! !!Q *2E6    " "2q! ,14(r5ctjdd}tjddd}|j |}|j |}t ||y)Nr rrr`)r9rrcrrrr)rldstrXrrs r3 test_gh8718zTestNormInvGauss.test_gh8718sJ  A& IIaQ  VVAYggbkQr5c(d\}}tj|dz|dzz }||z |dz|dzz d|z|tj|zz ddd|dzz|dzz zz|z f}t|tjj||dy) Nr rur`rrr rmvskmoments)rcrrr9r)rlr1r2gammav_statss r3 test_statszTestNormInvGauss.test_statss11q!t $u9adUAXosQw!bggen:L/M!a!Q$hAo-.68We0066q!V6LMr5cd\}}tjgd}tjj |||}t |tjj |||y)Nrrrur)rcrr9rrrrj)rlr1r2rrAs r3test_ppfzTestNormInvGauss.test_ppfsS1-.!!%%fa3 2 2 6 6tQ BCr5N)rrrr0rr]rrrrrrrrr;r5r3rrsU 44 [[0JK ) K ) ) NDr5rcNeZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z y ) TestGeomcBtjjdyr.r/rqs r3r0zTestGeom.setup_methodr1r5chtjjdd}tt j |dk\tt j |dk(t|jjtdvtjjd}tt|ttjdjd}tt|tjt|jjtdvy)Nrr5r4rr7r) r9geomrr rcrr;rr<rr=r\r]r@s r3rCzTestGeom.test_rvsszz~~d~1tqy!"')* 9\#::;jjnnT" 3$%jj""1% 3 +, )L"99:r5cttjjd}tjj tj dd|}|jtjk(sJtj|tjtjjkDsJy)NlA:irr) rcrrr9rrrrint64riinfoint32max)rlrrs r3 test_rvs_9313zTestGeom.test_rvs_9313sxii##O4jjnnRVVC[qsnCyyBHH$$$vvcBHHRXX.222333r5cdtjjgdd}t|gdy)Nrru)rurerr)r9rrIrrlrAs r3rczTestGeom.test_pmfs!zz~~i-!$(:;r5c(tjtjj gdd}tjj gdd}t ||ddtjj dd}t|dy)Nrrur}rr_r rz)rcrr9rrIr3rr)rlrarbrBs r3 test_logpmfzTestGeom.test_logpmf seuzz~~i56 !!)S1u5q9jj1%S#r5ctjjgdd}tjjgdd}t gd}t ||t |d|z y)Nrrurur?r )r9rrjrrrrlrAvals_sfrQs r3rzTestGeom.test_cdf_sfsMzz~~i-**-- 3/+,!$1!'1X:6r5c$tjjgdd}tjjgdd}t gd}t |t j|t |t j| y)Nrrur) r9rrrrrrcrlog1prs r3rzTestGeom.test_logcdf_logsfsazz  C0**""9c2+,!$x(89!'288XI+>?r5cztjjgdd}tgd}t ||y)Nrru)rMryr)r9rrrrrlrArQs r3rzTestGeom.test_ppf"s+zz~~0#6)!$1r5c\ttjjddddy)NrrMrr)rr9rrrqs r3test_ppf_underflowzTestGeom.test_ppf_underflow's ue4cFr5cftjdj}t|ddy)Ng<,Ԛ?g۩@r}r~)r9rrAr)rlris r3test_entropy_gh18226zTestGeom.test_entropy_gh18226+s( JJv  & & (,59r5ctjjd}tjj dd|dkDj sJy)NiKH9rYrr)rcr RandomStater9rrr)rlrs r3test_rvs_gh18372zTestGeom.test_rvs_gh183721sByy,,Y7  u2LIAMRRTTTr5N)rrrr0rCrrcrrrrrrrr;r5r3rrs< ;4<7@2 G: Ur5rceZdZdZdZdZy) TestPlanckcBtjjdyr.r/rqs r3r0zTestPlanck.setup_method9r1r5cztjjgdd}tgd}t ||y)NrrN)g|dy?g8'\>ggrU!>)r9planckrrrrs r3rzTestPlanck.test_sf<s1||y"-23 "$1r5cztjjgdd}tgd}t ||y)N)r@@p@r)gP.gh>gTF)r9rrrrrs r3rzTestPlanck.test_logsfCs.||!!"7?:;!$1r5N)rrrr0rrr;r5r3rr8s22r5rc$eZdZdZdZdZdZy) TestGennormcgd}tjj|d}tjj|}t ||yNrr )r9gennormrbrrrlpointspdf1pdf2s r3 test_laplacezTestGennorm.test_laplaceJs;}}  +}}  (D$'r5cgd}tjj|d}tjj|d}t ||yNrr`g;f?r_)r9rrbrrrs r3 test_normzTestGennorm.test_normQs=}}  +zz~~fF~3D$'r5ctjjd}tjd}|j d|}tj ||jjdkDsJtjd}|j d|}tjj d|}tj||jdkDsJtjd}||_ |j d|}tjj dd| }tj||jdkDsJy) NrrurrrVr r`g;f?r_rr) rcrrr9rrrBrjpvaluerks_2samprr)rlrrMr rvs_laplacervs_norms r3rCzTestGennorm.test_rvsXsii##A&}}S!hhDsh3||C*11C777}}QhhDsh3mm''T'D ~~c;/66<<<}}QhhDsh3::>>t#>N~~c8,33c999r5ctjjd}tjddgddgg}||_|j gd}tj|ddddftjdjdd kDsJtj|ddddftjdjdd kDsJtj|ddddftjdjdd kDsJtj|ddddftjdjdd kDsJy) NrrurMryrN)rr`r`r4r rV) rcrrr9rrrrBrj)rlrrMrs r3test_rvs_broadcastingz!TestGennorm.test_rvs_broadcastingjs%ii##A&}}sBi"b23hhLh)||C1aL%--*<*@*@A!DsJJJ||C1aL%--*<*@*@A!DsJJJ||C1aL%--*<*@*@A!DsJJJ||C1aL%--*<*@*@A!DsJJJr5N)rrrrrrCrr;r5r3rrIs((:$Kr5rcTeZdZejj dddgdZy) TestGibratx, sfx)rgD.?)gJ]bH>r5r ceZdZdZej j dgddZdZdZ ej j dgdd Z y ) TestGompertzctjjtjjddd}t |dyN0.++r )r9gompertzrrjrrs r3test_gompertz_accuracyz#TestGompertz.test_gompertz_accuracys3 NN  u~~11&! ))!Q/5A**32AEBr5cld}d}d}tjj||}t||dy)N @rVg _rr~)r9rrr)rlrXrr~rs r3rzTestGompertz.test_logcdfs3  %&&q!,%0r5cld}d}d}tjj||}t||dy)Ng"ul/rOgH 7Wrr~)r9rrr)rlrXrr~rs r3rzTestGompertz.test_logsfs3  $$Q*s/r5c, ref))rgeUT8?)r gtqq?)rgs{)rgN*6cZttjj||dyr)rr9rrArlrr~s r3rjzTestGompertz.test_entropys ..q13UCr5N) rrrrrrrrrrrjr;r5r3rrso#" [[[+MNC NC10 [[X(EFD FDr5rcTeZdZejj dddgdZy) TestFoldNorm x, c, ref)r:0yE>g:0N<?)rrg:?c\ttjj|||dyr|)rr9foldnormrjrlrXrr~s r3rUzTestFoldNorm.test_cdfs! **1a0#EBr5N)rrrrrrrUr;r5r3r#r#s7 [[[+N+M+OPCPCr5r#ceZdZejj dddgdZejj dgddZejj dd d gejj d gd ejj d ddgejj dddgdZdZ y) TestHalfNormr )r |N?)rY Oul2;cttjj||dttjj ||dyr)rr9halfnormrrrs r3rzTestHalfNorm.test_sf_isfs: ))!,c>**3/?r5r))Ww'&l7g;G<^͛7)C]r2r rvs_scalerwrZrrTF fix_scalectjjd}tjj ||d|}|rK|rId}t jt|5tjj|||dddyi}|r||d<|r||d<ttj|fi|d d iy#1swYyxYw Nrrr^r_rrrrrrrrrT) rcrrr9r.rrrr halflogisticrr rlrr4rr6rr error_msgrs r3rz(TestHalfNorm.test_fit_MLE_comp_optimizersii##$78~~!!gYT/2"4 y%I|9= M""&&t')&L M  "DL &DN &ennd )g?g@guVJrr~)r9r;rrrlrXr~rs r3rzTestHalfLogistic.test_logcdfRs. $##**1-%0r5cfd}d}tjj|}t||dy)Nrg+rr~)r9r;rrrlrXr~rs r3rzTestHalfLogistic.test_logsfYs. $""((+s/r5rr3rr4r5rTFr6ctjjd}tjj ||d|}i}|rK|rId}t jt|5tjj|||dddy|r||d<|r||d<ttj|fi|d d iy#1swYyxYwr8) rcrrr9r;rrrrrr) rlrr4rr6rrrr=s r3rz,TestHalfLogistic.test_fit_MLE_comp_optimizer`sii##$78!!%%'36&8 y%I|9= M""&&t')&L M  "DL &DN &e&8&8$ <$ <6: < M s &#CC cd}tt|5tjj gdddddy#1swYyxYw)Nz; Maximum likelihood estimation with 'halflogistic' requiresr)rr`rr r) assert_raisesr#r9r;rrlr/s r3test_fit_bad_flocz"TestHalfLogistic.test_fit_bad_floc}s?L g+c\ttjj|||dyN绽|=r~rr9 truncnormrArlr1r2r~s r3rjzTestTruncnorm.test_entropys!$ //15sGr5))rrghiɮ9?)rrr)g0.+rr)}Ô%IrZ_2?c\ttjj|||dyrrrs r3test_extreme_entropyz"TestTruncnorm.test_extreme_entropys! //15sGr5c tjjgddddgdzd}tjtj dd dd d tj g}t ||y) NrrrruH.?r r`rrMrr`r]r fO?l@r)r9rrrcrrrrs r3test_ppf_ticket1131z!TestTruncnorm.test_ppf_ticket1131\""#EsB()s1uA#788RVVQ Az1bffMN!$1r5c tjjgddddgdzd}tjtj dd dd d tj g}t ||y) NrrrMrrr`r]rrrr )r9rrrcrrrrs r3test_isf_ticket1131z!TestTruncnorm.test_isf_ticket1131rr5cd\}}tjj||ddd}t||j cxkxr|j cxkxr|kncd\}}tjj||ddd}t||j cxkxr |j cxkxr |kycy)N)irfrr rYr4)rY r9rrr minrrllowhighrXs r3test_gh_2477_small_valuesz'TestTruncnorm.test_gh_2477_small_valuess T OO  T1ab  9aeeg..$./ T OO  T1ab  9aeeg..$././r5cZd\}}tjj||ddd}t||j cxkxr|j cxkxr|knct |||gfd\}}tjj||ddd}t||j cxkxr|j cxkxr|kncd\}}tjj||ddd}t||j cxkxr|j cxkxr|kncd\}}tjj||ddd}t||j cxkxr |j cxkxr |kycy) N)rZrWrr rYr4)r)'i')i)r9rrr rrrDrs r3test_gh_2477_large_valuesz'TestTruncnorm.test_gh_2477_large_valuessF T OO  T1ab  9quuw1!%%'1T12CdA4GG T OO  T1ab  9aeeg..$./ T OO  T1ab  9aeeg..$./" T OO  T1ab  9aeeg..$././r5cddgddgfD]\}}tjtj ||tjg}||zdz }tjj |||}tjj |||}tjj|||}tjgd}tjgd} tjgd} |d krtjgd } t||t|| t|| ttj| d | d z |d ztjgd} tjj| ||} tj|tj|dz|g} t| | |d krWttjj |||dttjj |||dnVttjj |||dttjj |||dtjj|||}ttj|| d z |dzd z y)Nrrrryrrr r rMrMrzrz)rd._MT @BKg?rr)rrrrr r`rurrurMgĖy @gdv*?g,mj%V?re) rcrrr9rrjrrbrrrr)rlrrxvalsxmidcdfssfspdfs expected_cdfs expected_sfs expected_pdfspvalsppfs expected_ppfsrbs r3test_gh_9403_nontail_valuesz)TestTruncnorm.test_gh_9403_nontail_valuess<a&2r(+ MICHHrvvgsD"&&9:EHc>D??&&uc48D//$$UC6C??&&uc48DHH\2M88$89LHH%ABMQw ")E F m 4 \ 2 m 4 }Q'7 a8H'H I #c  +HH]+E??&&uc48DHHc2773< +A4%HIM m 4Qw#EOO$6$6tS$$G$68#EOO$7$7c4$H$68$EOO$7$7c4$H$68#EOO$6$6tS$$G$68//%%dC6C s=+;'; rerr) rcrrr9rrjrrbrrrrrR)rlrrrrrrrrrrrrrrbxvals2s r3test_gh_9403_medium_tail_valuesz-TestTruncnorm.test_gh_9403_medium_tail_values3sFr(S#J/, PICHHrvvgsD"&&9:EHc>D??&&uc48D//$$UC6C??&&uc48DHH\2M88$89LHH%KLMQw "*=!> m 4 \ 2 m 4 }Q'7 a8H'H I #c  +HH]+E??&&uc48DHHc2773< +CT%JKM m 4??&&tS$7D e ,Qw#EOO$6$6tS$$G$68#EOO$7$7c4$H$9;$EOO$7$7c4$H$68#EOO$6$6tS$$G$9;//%%dC6C s=+;'; K@casec|\}}}}}}tjj||d\}} } } t|| | | g||||gdy)NrrFFgxx{q#c(m+++saeeem+,-quu!u},-.r5cttjdr@tjj dddtjj yy)Nrrfrrr)r0rcrr9rrrrqs r3test_rvs_Generatorz TestTruncnorm.test_rvs_GeneratorsC 299m , OO  Ra-/YY-B-B-D  F -r5ctjtj tj dtj dg}tjtjtjddtjg}tjgd}gd}tt j ||j ||tt j | | j| |y)NrYr)rY@r r)g Oul"gځ=!gL!g>EG fg^K[X)rcrrrr9rrr)rlr1r2rXrQs r3test_logcdf_gh17064z!TestTruncnorm.test_logcdf_gh17064s HHrvvgwRVVGR8 9 HHbffbffaRVV4 5 HH* ++ 1-44Q7BQB/55qb98Dr5cjtjddjd}d}t||y)Nrrrgl).0S?)r9rrr)rlrr~s r3test_moments_gh18634z"TestTruncnorm.test_moments_gh18634s0oob!$++A. S!r5N)rrrr0rrrrjrrrrrrrrrcr_truncnorm_stats_datarr#rrrrrrr;r5r3ryrysJ [[[BCH CH  [[[DE H E H2 2 00&!MF-P^,  1 = < BFF       &&!            ;"F%BHH%:; [[V%:;D<D + 0 /F E"r5ryceZdZejj dgddZejj dgddZejj ddd gd Zejj d d d gdZ ejj d ddgdZ ejj dddgdZ y)TestGenLogistic x, expected))ig4`n)ig4 ncg)rgX =)rZgh@ X)rg hrg)g@rg@g@g@)r rg) 9g"1)rcrr9rrr) rlorangespears fruits_eatenquantileeatenrrQ quantilesr, expected2s r3test_precision2zTestHypergeom.test_precision21sxx =>D (*!!(GeOWeL**889:XAD90 !!)Wu_guM> iad;*s,B6c>tjddd}|j}tjddg}tj t || }t||tjddd}|j}t|dy)Nrr rrerz) r9rrArcrrfrrr)rlhgrirgrhs r3rjzTestHypergeom.test_entropyDsz __Q1 % JJLXXtTl+ ffU:z:;; :& __Q1 % JJLQr5cd}d}d}d}tjj||||}d}t||dd}d }d }d }tjj||||}d }t||d y)NrcA.Aj@gorrPr @Xrg_7 j$r8)r9rrrrlrUrrnr+resultrQs r3rzTestHypergeom.test_logsfPs    &&q!Q2FHa8    &&q!Q2 FHb9r5c&d}d}d}d}tjj||||}d}t||dd}d }d }d }tjj||||}d }t||d d}d }d}d}tjj||||}d}t||d t j gd}d }d }d }tjj||||}t j dd }t||d y)Nr rrrg)\UrrPrvrr6rg*@Vr8}rgר)rvrvrv)r9rrrrcrfullrs r3rzTestHypergeom.test_logcdfhs    ''1a3FHa8    ''1a3&FHb9    ''1a3 FHb9 HH\ "   ''1a377112FHb9r5czd}d}d}tjj|||}||z |z}t||y)NipiPi.)r9rrr)rlrrnr+hmrms r3test_mean_gh18511zTestHypergeom.test_mean_gh18511sB    __ ! !!Q * UQYBr5cd}d}tjdd}d|z}tjj |dz |||}tj |dkDsJtj tj |dksJy)NrYrrr8rr r)rcrr9rrrdiff)rlrnr+rpopulation_sizeros r3test_sf_gh18506zTestHypergeom.test_sf_gh18506sw   IIa q& OO  q1uoq! <vva!e}}vvbggaj1n%%%r5N)rrrr0rCrrrr rjrrrrrrr!r;r5r3rr sU 9>FL<& :0,:\   [[ & &r5rcDeZdZejj dgddZejj dgddZdZdZ d Z d Z ejj d d d gdZ ejj dgddZ y) TestLoggammaz x, c, cdf))r r`g;Y%?)rgRٲa6_<)gHrgi|e?)rg6l ?)i+rVg֬CCf9)irgֺl ctjj||}t||dtjj ||}t||dyr)r9loggammarjrr)rlrXrrjroys r3rzTestLoggamma.test_cdf_ppfsH NN  q! $3U+ NN  sA &15)r5zx, c, sf))rrgQOu3;)rZg\Z{0)r%rgeɐ?)ig{Gzd?gr0T?ctjj||}t||dtjj ||}t||dyr)r9r'rrr)rlrXrrrGr(s r3rzTestLoggamma.test_sf_isfsH NN  a #2E* NN  r1 %15)r5c`tjjdd}t|ddy)N r`g@rr~)r9r'rr)rllps r3rzTestLoggamma.test_logpdfs& ^^ " "4 +G%0r5cld}d}tjj||}d}t||dy)Nr @gI.rr~)r9r'rr)rlrXrrr~s r3rzTestLoggamma.test_logcdfs3  &&q!,%%0r5cld}d}tjj||}d}t||dy)Ng9 @g!{1+ҷrr~)r9r'rr)rlrXrrr~s r3rzTestLoggamma.test_logsfs3  $$Q*#s/r5ctjgdjdd}|D];\}}}}}tjj|d}t |||||gd=y)N)rug"~jg46<@goŏr rMg h"lxg Q?gZd;333333@r g{/L@g??gгYҿgh|?5?rrmsvkrrrP)rcrreshaper9r'r)rltablerrvarskewkurtcomputeds r3rzTestLoggamma.test_statsst wr1~  ). 1 $AtS$~~++Av+>H %hsD$0G./ 1 1r5rrVrctjj|d}tj|j sJtjj |}tjtj||kt|}|jd}|jdcxkr|jksJJy)Nrr4r)confidence_levelru) r9r'rrcisfinitermedian binomtest count_nonzeror  proportion_cirr)rlrrXmedbtestcis r3rCzTestLoggamma.test_rvss NN  qv  .{{1~!!###nn##A& 0 0S 93q6B  % 8vv%bgg%%%%%r5r))r%g3H໱k3@)r r)rg8,[H^} )rg90$)rgtum\cZttjj||dyr)rr9r'rAr!s r3rjzTestLoggamma.test_entropy s ..q13UCr5N)rrrrrrrrrrrrrCrjr;r5r3r#r#s [[[EF*F* [[ZBC * C * 110 1 [[S3,/ &0 & [[X<= D = Dr5r#cXeZdZgdZej j dedZy) TestJohnsonsu))r,r r g?r%)rr r gH';vIh%,=)rr r g?x7rHrc|\}}}}}ttjj||||dttjj |||||yNrHr~)rr9 johnsonsurrrlrrXr1r2rtols r3rzTestJohnsonsu.test_sf_isf( P1aS**1a3ReD++B15qsCr5Nrrrcasesrrrrr;r5r3rGrG s0 ;E [[VU+D,Dr5rGcXeZdZgdZej j dedZy) TestJohnsonb))rr r rr&)rr r g0jA:rH)rr r gQbF5rHrc|\}}}}}ttjj||||dttjj |||||y)NrHr~r)rr9rrrrLs r3rzTestJohnsonb.test_sf_isf> rNr5NrOr;r5r3rRrR/ s0 =E [[VU+D,Dr5rRceZdZdZdZdZdZdZejjdddgd Z d Z ejjd d d gdZ dZy) TestLogisticctjdd}tjj |}tjj |}t ||yNrr)rcrRr9logisticrjrrrlrXr(rs r3rzTestLogistic.test_cdf_ppfG sD KKR  NN  q ! ^^   "2r5ctjdd}tjj |}tjj |}t ||yrW)rcrRr9rXrrrrYs r3rzTestLogistic.test_sf_isfM sD KKR  NN  a  ^^   "2r5cd}d}ttjjd|z |ttjj ||y)Ng.funcn sDAqD AqA~.RVVTAXN335689A>B$(a&&$(a014&&$(a014678:;$(#&(TAX./ &ennd;r5N)rrrrrr]r_rbrrrrorsryrr;r5r3rUrUE s  84)  [[03J3K3MNCNC,F  [[\D%=9 1: 1ror~)rcrrr)rlrMrzr^r_s r3rozTestGumbel_r_l.test_fit sH :; ;XXa[ U S!3345DAr5N) rrrrfixturerrrr9gumbel_rgumbel_lrsror;r5r3rr sV^^*%+&+ [[Vennenn%EF [[Y 3 [[[*5 [[1#UmeT];=:=64G :  [[[ENNA+>,1NNB+?+ABBBBr5rc eZdZdZdZej jdej jdddgej jdddgej jd dd gd Z ej jdd dgej jdddgej jd dd gej jd e ddgdDcgc]}d|vr| c}}e jddZ e jddZdZdZycc}}w) TestParetocJ tj5tjdttj j dd\}}}}t |tjt |tjt |tjt |tjtj j dd\}}}}t |tjt |tjt |tjt |tjtj j dd\}}}}t |dt |tjt |tjt |tjtj j dd\}}}}t |dt |tjt |tjt |tjtj j d d\}}}}t|d t|d t |tjt |tjtj j dd\}}}}t|dt|d t |tjt |tjtj j d d\}}}}t|dt|dt|dtjdzt |tjtj j dd\}}}}t|dt|dt|dtjdzt |tjtj j dd\}}}}t|dt|dt|dtjdzt|ddddy#1swYyxYw)NrlrurrrMrrryr|g?grq@rr1gffffff?gK~?g2@g۶m۶m?r UUUUUU?gqq?rr/g%I$I?gQ?gUUUUUU@grq?g88Nb@) rprqrrrsr9paretorrcrrrrrlrrrGrUs r3rzTestPareto.test_stats sJ $ $ &7 N  ! !'> :++C+@JAq!Q BFF # BFF # BFF # BFF #++C+@JAq!Q BFF # BFF # BFF # BFF #++C+@JAq!Q C BFF # BFF # BFF #++C+@JAq!Q C BFF # BFF # BFF #++C+@JAq!Q Ay ) A2 3 BFF # BFF #++C+@JAq!Q As # At $ BFF # BFF #++C+@JAq!Q Ay ) A2 3 A 2777+;; < BFF #++C+@JAq!Q Ay ) Az * A0277;3GG H BFF #++C+@JAq!Q Ay ) A2 3 A RWWW-== > AL Mo7 N7 N7 Ns Q;RR"c~d}d}d}tjj||d|}||z |z}t||y)NeAr`rrr])r9rrr)rlrXr2r_rorQs r3rzTestPareto.test_sf' sB   LLOOAqauO 5!Ga<8$r5z2ignore:invalid value encountered in double_scalarsrr r`rrr4rc 2tjjd}tjj d||||}tjj |ddd}tjj |ddd}tjj |ddd}||cxk(r |cxk(rdk(sJJtjj d|||d z|}tjj |d \} } } t| d z|j|d z } | jd} t| | tjtj| | jz z t| d y) NrrZrr2r_r^rrp= ף?)rr)rfix_b)rfbr`r) rcrrr9rrrrrr;rfr)rlrrr4rrshape_mle_analytical1shape_mle_analytical2shape_mle_analytical3 shape_mle_a loc_mle_a scale_mle_a data_shiftndatas r3rozTestPareto.test_fit/ s ii##D)||SIY$+# ?!& 0 0A$ 0 G J % 0 0AT 0 J1 M % 0 0A$ 0 G J%)>.%.)-. /. /.||SIY%,q[ E.3ll.>.>t!.>.L+ Y [1_dhhj1AX   #[RVVBFF:jnn6F+F$GHH JY"r5rVfix_shape, fix_loc, fix_scaleTFrrepeatignoreinvalidctjjd}tjj d||||}i} |r|| d<|r|| d<|r|| d<t tj|fi| y)NrrZrrrr)rcrrr9rrr rlrrr4rrr6rrrs r3rz&TestPareto.test_fit_MLE_comp_optimizerL szii##D)||SIY$+# ? "DJ "DL &DN%ellDADAr5c d\}}}tjj|||dtjj d}t tj|y)N)r rr rZið&r)r9rrrcrrr)rlr;locationr_rs r3test_fit_known_bad_seedz"TestPareto.test_fit_known_bad_seedc sR ")x||xS-/YY-B-B7-K M%ellD9r5cttjtttjj gddtttjj gdddy)Nrr`r)rr`rr rr:)rr9rrWr#rrqs r3test_fit_warningszTestPareto.test_fit_warningsm sCELL)lELL$4$4iaHlELL$4$4ia r5ctjjd}tjj ddd|}t |dtjj|}y)Nri~r rZ)r^r2rrr)rcrrr9rrr r)rlrrrs r3test_negative_datazTestPareto.test_negative_datau sSii##D)||DACcJ$" LL  T "r5N)rrrrrrrfilterwarningsrror(rcerrstaterrrr.0ros00r3rr sw:Nx% [[!12 [[[1a&1 [[YA/ [[[1a&1#2022 #0 [[[2q'2 [[YA/ [[[1a&1 [[<)0$q)I-A!&! -.R[["B#.203B R[[":#: #K-s E(rc eZdZdZdZdZdZdZdZdZ dZ d Z e jjd d gd fd dddej dz ej"gfddddej dzdgfdgdfgdZdZy) TestGenparetocbdD]c}tj|}tjj |\}}t |dt tj|etjd}tjj |\}}t||gddgy)NrMrzrzru) rcrr9 genpareto _get_supportrr isposinfr)rlrr1r2s r3test_abzTestGenpareto.test_ab s $A 1 A??//2DAq B  BKKN #  $ JJsO++A.1AS *r5cLtjd}tjddd}t |j |tj j |t |j|tj j|t |j|tj j|tjddd}t |j|tj j|y)Nrzrrrr3rMrY) r9rrcrRrrbr^rjrrrlrvrXrxs r3test_c0zTestGenpareto.test_c0 s__r " KK3 #q 5;;??1#56q 5;;??1#56a%++.."34 KKB #q 5;;??1#56r5ctjd}tjddd}t |j |tj j |t |j|tj j|t |j|tj j|tjddd}t |j|tj j|t |jd dy) Nrrrrr3rzrMrYr ) r9rrcrRrrbuniformrjrrrrs r3test_cm1zTestGenpareto.test_cm1 s __s # KK3 #q 5==#4#4Q#78q 5==#4#4Q#78a%--"2"21"56 KKB #q 5==#4#4Q#78  ! a(r5ctjd}t|jtj |j tj gddgtt j|jtj tjd}t|jtj |j tj gddgtt j|jtj tjd}t|jtj |j tj gddgtt j|jtj y)NrVrrzrMr) r9rrrbrcrrjr isneginfrrlrs r3 test_x_infzTestGenpareto.test_x_inf s __s #82r(C BIIbff-./ __r "82r(C BIIbff-./ __s #82r(C BIIbff-./r5ctjddd}dD]}tjj ||}dD]3}tjj |||z}t ||d5tjj ||}dD]3}tjj |||z}t ||d5y) NrrYr3rrrg+rr)rr)rcrRr9rrbrrj)rlrXrpdf0dcpdfccdf0cdfcs r3test_c_continuityzTestGenpareto.test_c_continuity s KK2r " 8A??&&q!,D% 8**1a"f5d7 8??&&q!,D$ 8**1a"f5d7 8 8r5c ztjtjdddtjddddd tjdddz f}d D]Z}tj j ||}d D]3}tj j |||z}t||d 5\y NrrwrVbaser r3FendpointrM)rzrrr)rcrGrrRr9rrr)rlrxrppf0rppfcs r3test_c_continuity_ppfz#TestGenpareto.test_c_continuity_ppf EE"++eT4++dArE:r{{5$S99: ; 8A??&&q!,D% 8**1a"f5d7 8 8r5c ztjtjdddtjddddd tjdddz f}d D]Z}tj j ||}d D]3}tj j |||z}t||d 5\yr)rcrGrrRr9rrr)rlrxrisf0risfcs r3test_c_continuity_isfz#TestGenpareto.test_c_continuity_isf rr5c ^tjtjdddtjddddd tjdddz f}d D]L}t t j jt j j||||d Ny) NrrwrVrr r3FrrM)r%gC]r2r}gV瞯Ҽr}r) rcrGrrRrr9rrjr)rlrxrs r3test_cdf_ppf_roundtripz$TestGenpareto.test_cdf_ppf_roundtrip s EE"++eT4++dArE:r{{5$S99: ;/ +A EOO//0C0CAq0I1ME + +r5c`tjjdddd}t|dy)Nrrwrr gpEȜ)r9rrrras r3rzTestGenpareto.test_logsf s'$$T31512r5zc, expected_statsr)r r r`r)rergqq @rYr`gqq?g?g$I$ ?rq?rgll0@r)ruUUUUUU?r333333cdtjj|d}t||ddy)Nrrrr}r_)r9rr)rlrexpected_statsrs r3rzTestGenpareto.test_stats s+&&q&&9UGr5c^tjjd}t|ddy)Nr%gvǼ ?rr~)r9rr7r)rlrs r3test_varzTestGenpareto.test_var s# OO   %,59r5N)rrrrrrrrrrrrrrrrcrrrrr;r5r3rr s + 7 ) 0 888+3  [[ \  T2gbggaj="&&1 2 ]T72771:$5v> ? " # %& H & H:r5rc<eZdZdZdZdZdZdZdZdZ dZ y ) TestPearson3cBtjjdyr.r/rqs r3r0zTestPearson3.setup_method r1r5ctjjdd}tj|dk(sJ|j j tdvsJtjjd}t|tsJtjdjd}t|tjsJ|j j tdvsJt|dk(sJy)NrVr5r4AllFloatrur) r9r,rrcr;rr<rr=rr]r r@s r3rCzTestPearson3.test_rvs s~~!!#G!4xx~(((zz)J"7777nn  %#u%%%nnS!%%a(#rzz***yy~~:!66663x1}}r5ctjjdgd}t|t j gddtjjdd}t|t j dgdtjjgd d}t|t j gd dy) Nr`rzrVrJ)gtT?g+q?g?rorrrVND}i?rrrrr )rgj?gdC?gs?g'M?)r9r,rbrrcrrs r3rKzTestPearson3.test_pdf s~~!!!_5bhh'KL! #~~!!"c*bhh |44@~~!!"4c:bhh(@AGK Mr5cPtjjdgd}t|t j gddtjjdd}t|dgdtjjgd d}t|gd dy) Nr`r)grE?gTp]0?g~?rorrrVgE&"J?r)giZ*J?gh+8w?gcK?g|g~׼=gp'+7g;rr~r)rr9r,rr)rlr8rXr~s r3rzTestPearson3.test_sfC s\% ">))!T2CeD))!Q/q1ANr5N) rrrr0rCrKrUr rrrr;r5r3rr s- MK ( -7& Or5rc6eZdZdZdZdZdZdZdZdZ y) TestKappa4cgd}d}dD]P}tjj|||}tjj|| }t ||Ry)N)rzrVrJrurM) gffffffrr皙ɿrrVrJrurMffffff?)r9kappa4rjrrrlrXrirUrA vals_comps r3test_cdf_genparetozTestKappa4.test_cdf_genparetoP sW   -A<<##Aq!,D++Ar2I D) ,  -r5ctjddd}d}tjddd}tjj |||}tj j ||}t ||y)NrrrYrzrr)rcrRr9rrj genextremerrs r3test_cdf_genextremezTestKappa4.test_cdf_genextreme[ se KKAr "  KKAr "||1a($$((A. i(r5ctjddd}d}d}tjj |||}tj j |}t ||y)NrrYrMrz)rcrRr9rrjr^rrs r3test_cdf_exponzTestKappa4.test_cdf_expond sR KK2r "  ||1a(KKOOA& i(r5ctjddd}d}d}tjj |||}tj j |}t ||y)NrrrYrz)rcrRr9rrjrrrs r3test_cdf_gumbel_rzTestKappa4.test_cdf_gumbel_rm sT KKAr "  ||1a(NN&&q) i(r5ctjddd}d}d}tjj |||}tj j |}t ||y)NrrrYrrz)rcrRr9rrjrXrrs r3test_cdf_logisticzTestKappa4.test_cdf_logisticv sT KKAr "  ||1a(NN&&q) i(r5ctjddd}d}d}tjj |||}tj j |}t ||y)NrrrYrM)rcrRr9rrjrrrs r3test_cdf_uniformzTestKappa4.test_cdf_uniform sT KKAr "  ||1a(MM%%a( i(r5c0tjddyrf)r9rrqs r3test_integers_ctorzTestKappa4.test_integers_ctor s  Qr5N) rrrrr r"r$r&r(r*r;r5r3rrO s% -)))))r5rc*eZdZdZdZdZdZdZy) TestPoissoncBtjjdyr.r/rqs r3r0zTestPoisson.setup_method r1r5ctjd}tjj gd|}d|dz |dzdz g}t ||y)Nr`rr r`rur)rcrr9r}rIr)rlln2rArQs r3test_pmf_basiczTestPoisson.test_pmf_basic sGffQi}}  C0QQq)h'r5ctjjgdd}gd}t||tjj dd}t |dy)Nr/r)r rrffffff?rr)r9r}rIrintervalr)rlrArQr5s r3test_mu0zTestPoisson.test_mu0 sG}}  A.4*==))$2Xv&r5ctjjdd}tj|dk\sJtj |dk(sJ|j jtdvsJtjjd}t|tsJtjdjd}t|tjsJ|j jtdvsJy)Nrur5r4rr7r) r9r}rrcrr;rr<rr=r\r]r@s r3rCzTestPoisson.test_rvs s}}  7 3vvdai   xx~(((zz)L"9999mm$#s###mmC $$Q'#rzz***yy~~rr9r?rrr@r)rlrXrnrArBrCrQrs r3rzTestKSTwo.test_sf s KK1b !) /A!SUAaCaAgq9:Aa%!B&&qs+B!#q266":aCxxc!"R#X!"5;;>>#q#9!9!$QrT3!45HkknnQ*G GX . /r5ctjddddd}gd}|D][}|tj|z }tjj ||}tj |}t|d]y)Nrr`rr )r6rZrJirrr%)rcrRrr9r@rjrr )rlrXns_xxnprobsdiffss r3test_cdf_sqrtnzTestKSTwo.test_cdf_sqrtn sn KK1b !!" % , +Bbggbk!BKKOOB+EGGENE eT *  +r5ctjddd}dD]Q}tjj ||}tjj ||}t |d|z SyNrr rr=)rcrRr9r@rjrr)rlrXrnrrs r3rzTestKSTwo.test_cdf_sf sY KK1b !) =A{{q!,HkknnQ*G %hG < =r5ctjddd}dD]i}|tj|z }tjj ||}tjj ||}t|d|z kyrM)rcrRrr9r@rjrr)rlrXrnrHrrs r3test_cdf_sf_sqrtnzTestKSTwo.test_cdf_sf_sqrtn sj KK1b !) =ARWWQZB{{r1-HkknnR+G %hG <  =r5ctjddd}dD]l}||d|z kD}tjj ||}d|k|dkz}tjj ||}t ||||dny) Nrr rr=rurrr~)rcrRr9r@rjrrrlrXrnrHrcondrAs r3test_ppf_of_cdfzTestKSTwo.test_ppf_of_cdf s KK1b !) =A1s1u9B{{r1-HLX_5D;;??8Q/D DJ4t <  =r5ctjddd}dD]l}||d|z kD}tjj ||}d|k|dkz}tjj ||}t ||||dny) Nrr rr=rurMrr~)rcrRr9r@rrr)rlrXrnrHvals_isfrRrAs r3test_isf_of_sfzTestKSTwo.test_isf_of_sf s KK1b !) =A1s1u9B{{r1-HLX^4D;;>>(A.D DJ4t <  =r5c<tjddd}dD]}|tj|z |d|z kD}tjj ||}d|k|dkz}tjj ||}t||||y)Nrr rr=rurM)rcrRrr9r@rjrrrQs r3test_ppf_of_cdf_sqrtnzTestKSTwo.test_ppf_of_cdf_sqrtn s KK1b !) 2Abggaj.!c!e),B{{r1-HLX^4D;;??8Q/D DJ4 1  2r5c<tjddd}dD]}|tj|z |d|z kD}tjj ||}d|k|dkz}tjj ||}t||||y)Nrr rr=rur3)rcrRrr9r@rrr)rlrXrnrHrrRrAs r3test_isf_of_sf_sqrtnzTestKSTwo.test_isf_of_sf_sqrtn s KK1b !) 2Abggaj.!c!e),BkknnR+GKGdN3D;;??7A.D DJ4 1  2r5ctjddddd}dD]N}tjj ||}tjj ||}t ||PyrM)rcrRr9r@rrjr)rlrIrnrHrs r3rzTestKSTwo.test_ppf! s\ Aq"%ab)) -A*B{{r1-H He , -r5c gd}tjgd}tjgdgdgdgdgdgdg}t|D]x\}}|tjd ztjtj d z |z z}t jj||}t|||d zy) N)rYr6rZrJrr)regUUUUUU?rur r`r)gRT>gr ?gK5 ?gn "5?gU ?gk?)g&6#>gb E>gI5?g\ ?g;?g%1?)g6>gL>g<?g䓀^?gO|6$?g qO?)g}+:>gwQ9>gH{?g]qv (?g)~/v?gmJ?)gV27J=gGk(>gWX?g Y?g{0`?gZ H?)g_R=g4>g̪?gT_@?g<e?g2?r`r3r~) rcr enumeraterrrdr9r@rjr)rlrFratiosrQidxrnrXrs r3test_simard_lecuyer_table1z$TestKSTwo.test_simard_lecuyer_table1( s+8988 - - - - - -    m @FC"RWWRUU1WQY%77A{{q!,H Hhsm$ ? @r5N)rrrr0rUrrKrrOrSrVrXrZrr`r;r5r3r:r: s?0( / +====22-@r5r:ceZdZdZdZdZy)TestZipfcBtjjdyr.r/rqs r3r0zTestZipf.setup_methodK r1r5ctjjdd}tj|dk\sJtj |dk(sJ|j jtdvsJtjjd}t|tsJtjdjd}t|tjsJ|j jtdvsJy)Nrr5r4r r7r) r9zipfrrcrr;rr<rr=r\r]r@s r3rCzTestZipf.test_rvsN szz~~c~0vvdai   xx~(((zz)L"9999jjnnS!#s###jjo!!!$#rzz***yy~~@g @gGz@c*tjjd}tjj d||||}t ttjtj"}||}tjj|}t||||dd}tjj|dd}t||ttj||tj||dz z dkDsJttj||dz ttj|dttj||tjjdd y) NrrZ)rrWr^r_rrr`)rr|rr r:) rcrrr9rrrrrrrrrand) rlrrr4rr super_fit super_fitted invgauss_fit __class__s r3rz(TestInvgauss.test_fit_MLE_comp_optimizer s9ii##D)~~!!sv&-YS"R$u~~.C   ~~))$/ \<0!A15 ~~))$QA)> \<0 &enndIvvtw{+q0111%ennd1M &enndC &ennd-/YY^^A->q-A Cr5cttjtjt 5tjj gdddddy#1swYyxYwr?)rr9rrrr#rrqs r3test_fit_raise_errorsz"TestInvgauss.test_fit_raise_errors sFENN+ ]]< ( 2 NN  yq  1 2 2 2s $A  A)cgd}gd}tjjd|}t||tjjdd}t |dtjj dd}t |d tjjd d }t |d tjjd d }t |dy)N)g4wT;?gjdV&}?g{i\0>gDV_h?gqac X?)r r r r r 皙?rWr?gfFngr^:g9̗?rgx_;:g!?gٷ ??)r9rrjrrr)rlrWrQrL cdf_actual sf_actuals r3rzTestInvgauss.test_cdf_sf s."##CB#/Xv&^^''$'7  $9:NN%%cd%3  #78 ##GV4 34##Hf5 12r5chtjjdd}t|dtjjdd}t|dtjj dd}t|dtjj dd}t|d y) NrrrgiJ.rgr^ߺrgpgFgpQ^L)r9rrrr)rlrrs r3rzTestInvgauss.test_logcdf_logsf s&&v$&7 12&&sD1 56$$Ut$456$$S$/01r5zmu, ref))rg,9)rg% !)rwg40)rgK' @)rg`p @cZttjj||dyrJ)rr9rrA)rlrWr~s r3rjzTestInvgauss.test_entropy s ..r2CeDr5c$tjtj}tjdd}d\}}t |j ||j |t |j||j|t |j||j|t |j||j|t |j||j|t |j||j|t |j||j|t |j||j|y)Nrrur)rMru)r9rrcrrrrrbrrjrrrr)rlrMdist0rXros r3test_mu_inf_gh13666z TestInvgauss.test_mu_inf_gh13666 s~~(s#.1 A Q8 UYYq\2 A Q8 UYYq\2 1 u{{1~6 EHHQK0 UYYq\2 UYYq\2r5)rrrr0rrrrorrrrrjr __classcell__rs@r3ryry s [[7')>?A>A>: [[7')>?A CA CD2 !3F2. [[Y)DE E E E3r5rycZeZdZejj dgddZdZy) TestLandauname)rbrjrrrc|dvrtjdddf}ntjdddf}ttj|}ttj |}||}|g|dd}t ||d y) N>rrrVrrrrYr rr~)rcrRr'r9landau levy_stabler)rlrrX landau_method levy_methodrr~s r3test_landau_levy_agreementz%TestLandau.test_landau_levy_agreement( s > ! Ca()A B2&'A d3 e//6 Q#1#a##Su-r5cttjjdtjfdzttjj dtjy)Nrrrr)rr9rrcrrrqs r3r#zTestLandau.test_moments8 sEU\\'''7"&&1EU\\((+RVV4r5N)rrrrrrrr#r;r5r3rr' s, [[V%GH .I .5r5rceZdZejj dgdejj dgddZejj dgdfdZd Zd Z d Z d Z d Z xZ S) TestLaplacer)rrr r`r4)r r`rrYctjjd}tjj d|||}tj |}tjtj||z t|z }tjj|\}}t||ddt||ddtjj||\}}t||ddtjj||\}}t|||dz}tjtj||z t|z }tjj||\}}t||tjj||\}}t||tttjj||| tttjjtj gtttjjtj"gy) NrrZrr}rgrrqr`r:)rcrrr9rrr>rfrr rrrrWrrrr) rlrr4rrloc_mlerr^r_s r3rozTestLaplace.test_fit? s ii##D)}}  cwi.1!3))D/FF266$.12SY> ]]&&t, UW5u=yu5A]]&&t'&: Uyu5A]]&&tI&> UW%kFF266$*-.T: ]]&&t#&6 UY&]]&&tI&> UWc" lEMM$5$5t'& ( j%--"3"3bffX>j%--"3"3bffX>r5rvs_loc,rvs_scale))rrYrYr)rurJctjjd}tjj d|||}d}tjj |\}}tttjtj|\}} ||||} ||| |} | | kstj| | ddsJyy)Nrrrc dt| tjd|zzd|z tjtj||z zz zS)Nrr`r )r rcrrfr)r^r_rs r3llz3TestLaplace.test_fit_MLE_comp_optimizer..llw sOCI%8E'266"&&*<#==>? ?r5r}rg) rcrrr9rrrrrr) rlrr4rrrr^r_loc_opt scale_optll_mlell_optrs r3rz'TestLaplace.test_fit_MLE_comp_optimizern sii##D)}}  dy.1!3 ? ]]&&t, U"4 #6#(==66:) C%GY-"++ff38u#F FF#Fr5ctjgd}tjj |d\}}t |dddtjj |d\}}t |dddy)N)rMrMrrNrrr)rrr}rgrq)rcrr9rrr)rlrr^r_s r3test_fit_simple_non_random_dataz+TestLaplace.test_fit_simple_non_random_data sgxx78]]&&t!&4 Uqu59]]&&tA&6 UQU7r5c<d}tjj| }|dk(sJtjj|}|dk(sJtjj|}|dk(sJtjj| }|dk(sJy)NrrzrM)r9rrjr)rlrXp0p1s r3test_sf_cdf_extremesz TestLaplace.test_sf_cdf_extremes s  ]]  r "Syy]]  q !Syy ]]  a Syy]]  qb !Syyr5cd}tjj|}t|t j | dz dy)NrJr`rr~)r9rrrrcr)rlrXros r3rzTestLaplace.test_sf s5  MM  Q 2661":a s [[Y 6 [[[-8+?97+?Z [[03?@F@F(8*5 5 0r5rcleZdZdZdZej jdgddZej jdgdej jdd gej jd d d gej jd d d gdZ y)TestLogLaplacectjgd}tjgd}gd}ttjj |||dy)N)ryrrN)r3r4&k C)g ?gKH9gXrL0r}r~)rcrrr9 loglaplacer)rlrrXr~s r3rzTestLogLaplace.test_sf sE HH_ % HH' (+((++Aq13UCr5cpd}gd}gd}ttjj|||dy)Nrv)rrVrrr/)gHhlh#?gH]9@?g"fj#@g11Ags!8wBrr~)rr9rr)rlrrxr~s r3rzTestLogLaplace.test_isf s4  +6((,,Q2CeDr5rr r`rrcJd|dz }tjd|dzd}ttjj ||tj tjtjtjj||rJy)Nrr rur) rcrrr9rrrrr=)rlrmomrs r3test_moments_statsz!TestLogLaplace.test_moments_stats s~QUm IIc1s7C ( ((//15rvv>66"++e&6&6&<&: [[WtUm4 [[[4-8F95;3Fr5rc eZdZejj dddgdZejddZejj dgd ejj d gd ejj d gd ejj de ddgdDcgc]}d|vr| c}}dZ dZ dZ dZ ycc}}w) TestPowerlawzx, a, sf)reryg?)g?gp?gSQ>c\ttjj|||dyr|)rr9powerlawr)rlrXr1rs r3rzTestPowerlaw.test_sf s! ))!Q/%@r5rrc@tjjdSr.rrqs r3rzTestPowerlaw.rng rr5r)rVrurr r`rrr4rrTFrrc*tjjd||||}t} |r|| d<|r6t j |j tj | d<|r|| d<ttj|fi| ddiy)Nr)rr1r^r_rrrrrT) r9rrr rc nextafterrrrrs r3rz(TestPowerlaw.test_fit_MLE_comp_optimizer s~~!!siW(1"Ev "DJ << RVVG [[Y 3 [[[*5 [[<)0$q)I-A!&! -.<.64? <$ D466{-s> C/rc,eZdZejj dgddZejj dddgdZejj dgdd Zejj dgd d Z y ) TestPowerLogNormz x, c, s, ref))rZrr ga!R()rrr g;?)rrr gE?)MDrr g=c^ttjj||||dyr)rr9r#rrlrXrrGr~s r3rzTestPowerLogNorm.test_sfYs% **--aA6%Hr5z q, c, s, ref)g?rr rw)gR4 -rr rc^ttjj||||dy)Ng|=r~)rr9r#r)rlrxrrGr~s r3rzTestPowerLogNorm.test_isfcs% **..q!Q75Ir5))rrr g?)rorr gv6)rorJr g+ 94|7)rwrJr g?c^ttjj||||dy)Ngt =r~)rr9r#rjrs r3rUzTestPowerLogNorm.test_cdfis% **..q!Q75Ir5))rrr gS^Ռe 9)@xDrr g 0g;)g\)c=Hrr g7H7c^ttjj||||dy)NgAfc=r~)rr9r#rbrs r3rKzTestPowerLogNorm.test_pdf|s% **..q!Q75Ir5N) rrrrrrrrrUrKr;r5r3rrHs" [[^EF I F I  [[^ACEFJFJ [[^AB J B J [[^GHJ HJr5rceZdZejj dgddZejj dgddZejj dgddZy ) TestPowerNormr$))rr g|<)rr`ge()rZrg%!@6)rJrwgT;-c\ttjj|||dyr)rr9 powernormrr(s r3rzTestPowerNorm.test_sfs! **1a0#EBr5r))r3rgĿ)gwJ?rZg!X)rrg缂U)r?rgͫ1@)r0r`gD@)Jz5rgU!zYr@c\ttjj|||dyNrzr~)rr9rrrs r3rzTestPowerNorm.test_isfs! ++Aq13UCr5))irg.u T9)r`r?)rrgsK-)rrgk8>)rrg^u1-c\ttjj|||dyrJ)rr9rrjr(s r3rUzTestPowerNorm.test_cdfs! ++Aq13UCr5N) rrrrrrrrrUr;r5r3rrs [[[CD C D C [[[=>D>D [[[BC D C Dr5rcreZdZdZdZdZdZdZejjdddgd Z y ) TestInvGammac tj5tjdttj j dd}gd}t ||gd}tj j |d}gdtjdd gtjd d gtjtjd gf}t||D]\}}t|| dddy#1swYyxYw) Nrlg(\O3@rrj)g~?gCX&?g*7gS?gBqFq@)r@gffffff@)rg Ey?gў3oz?g^Yb?g,r?gOD@g2*Z@gFN8@) rprqrrrsr9rrrcrrr r)rlrrQr1rXr(s r3test_invgamma_inf_gh_1866z&TestInvGamma.test_invgamma_inf_gh_1866s $ $ & *  ! !'> :>>''%'@D%H D( +A>>''!V'>!5UI9>>!#w/>>s (B5 BcDtjjddd\}}}}ttj|ttj|ttj|ttj| y)Nr@rr)r9rr rcr=rs r3test_f_momentszTestF.test_f_moments seWW]]2sF]; 1a A A ABKKN"#r5ctj5tjdttj j dgdzgdddddy#1swYyxYw)Nrlrr)r`rr)rrdfndfdr)rprqrrrsr9rrqs r3test_moments_warningszTestF.test_moments_warningssS  $ $ & H  ! !'> : GGMMrd1f,M G H H Hs AA!!A*ctjdgdgg}tjddg}tjj||d\}}}}||dz z gdz}t ||d|dzz||zdz z|z |dz dzz |dz z }t ||d|z|zdz tj d|dz zz|d z tj |||zdz zzz } t || d|d |zd z z||zdz z|dz |dz dzzzz} ||d z z|dz z||zdz z} | | z } t || y) NrrrOrr r`rrr)r)rcrr9rrr) rlrrrrrGrUrsv2s2k2numk2denk2s r3test_stats_broadcastzTestF.test_stats_broadcastsuhhbT{#hhBx WW]]sV]D 1aS1Wo q 2 aZ39q= )C /37Q, >#' J2us{Q"''!S1W+"66a2773c A #67792cQsURZ(C#IM:Qw37Q,./0sQw37+sSy1}= U]2r5N)rrrrr rrr;r5r3rrs0$H r5rc eZdZdZdZdZejjdddgdZ ejjdgd ejjd d d gd d gd d ggd gdgd d gd d ggd gd gggdZ ejjd d d gd d gd d ggd gdgd d gd d ggd gd gggdZ dZ ejjdgddZ y) TestStudentTc^ttjjddgddgy)Nrr)g?g?)rr9rrtrqs r3test_rvgeneric_stdzTestStudentT.test_rvgeneric_std*s"!%''++q!f"5 J7OPr5cttjjddtjtj tj tj fttjjdddtjtj tj fttjjdddtjtj tj fttjjddddtj tjfttjjd d tj tjfttjjd d dtjfttjjd d dtjfttjjd d dy)Nr r)rr)\(?rzr`gGz@g i@rrigGz@rg ףp= @)rzgq@)rr9rrcrrrqs r3test_moments_tzTestStudentT.test_moments_t.sXUWW]]a]8VVRVVRVVRVV4 6UWW]]dF];"&&"&&"&&1 3UWW]]a]8"&&"&&"&&1 3UWW]]dF];/266266: <UWW]]a]68HIUWW]]dD]9C=IUWW]]a]6bff FUWW]]dD]9;RSr5cjgd}gd}ttjj||dy)N)r r`r~rZ)g?@gTM]?ggY?U?rr~rr9rrA)rlrrQs r3test_t_entropyzTestStudentT.test_t_entropy=s' ;+XEBr5zv, ref)rZr!)rrcZttjj||dyrr")rlrr~s r3test_t_extreme_entropyz#TestStudentT.test_t_extreme_entropyDs *Ce?S*%z!ZK.'ABr5cTtjjdtj|t}tjj dd|j }tj||<tjj|ddd}tjjddd }tjj||ddd}td D]-}t|||||t|||||/tjj|dd }tjjdd }tjj||dd }t|||t|||y) Nrr)rYr4rr r)rr^r_rr^r_rrr*r])rcrrrr+rr;rr9rrrrrA)rlr'rr res_ex_inf res_ex_noinfrs r3test_t_inf_df_stats_entropyz(TestStudentT.test_t_inf_df_stats_entropyks` qZZ $7 YY  q":+;+;  <:ggmmrq6mBZZ%%!1f%E ww}}J;Qa,2%4 q ?A Q +Z] ; Q ,l1o > ?ggoo!o4ZZ''AQ'7 ww"j[/qJ S_j1S*%|4r5cgd}gd}gd}gd}ttjj|||dttjj |||dy)N)r rrYr )rd~QJrr )gZ_2g 9g!ǟuIgdg)g73?rgմFhAW;gm0_?rr~)rr9rrrb)rlrXr logpdf_refpdf_refs r3test_logpdf_pdfzTestStudentT.test_logpdf_pdfsS  #@ >q"-zF Ar*G%@r5 x, df, ref))gRr8guSaG)rr8r)R@r8gGn`?ctjj||}t||dtjj | |}t||dyr)r9rrrr)rlrXrr~rrs r3rzTestStudentT.test_logcdf_logsfsF 2&%0 qb"%s/r5N)rrrrrr#rrrr%r3r8r=rr;r5r3rr)sUQ TC [[X68:; =; = [[Z*<= [[\QFQFQF-6 ,B./VaV,<./S1#J,89C 9= C  [[\QFQFQF-6 ,B./VaV,<./S1#J,895 95& A [[\CD0 D0r5rcTeZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zy )TestRvDiscretecBtjjdyr.r/rqs r3r0zTestRvDiscrete.setup_methodr1r5cgd}gd}d}tjd||f}|j|}t|tj sJt ||D]0\}}tt||k(t|z |z dkr0J|j}t jt|tjsJy)N)rrr r`rr)rzrwrrzrwrzrsample)rvaluesr4r?) r9r>rr=rcr]r rrfrrrinteger)rlstates probabilitysamplesrrXrGros r3rCzTestRvDiscrete.test_rvss$4    8V[4I J EEwE !RZZ((( , >DAqs16{5>1A56= == > EEG}}T!Wbjj111r5c:tjgd}tjgd|f}t t || }|j }t||tjgdgdf}|j }t|dy)N)rer6rwr/rF)rMrrrz) rcrr9r>rfrrArr)rlrrorhris r3rjzTestRvDiscrete.test_entropysy*+   i%7 8%u-.. IIK:&   i%= > IIKQr5cgd}gd}tj||f}ddgddgg}t|j|dd gd d ggd y)NrrurwrJrLrMr rr`rurJrzrwrr)r9r>rrI)rlxkpkrrXs r3rczTestRvDiscrete.test_pmfs]     r2h /"X!W q sc$*/ 1r5cgd}gd}tj||f}gd}gd}t|j||dt|Dcgc]}|j|c}|dycc}w)NrrNrL)rrMrrryrrr)rrurururrr r rr)r9r>rrj)rlrOrPrx_valuesrQrs r3rUzTestRvDiscrete.test_cdfsf     r2h /55x((? h77 u .7A2cgd}gd}tj||f}gd}gd}t|j||dt|Dcgc]}|j|c}|dycc}w)NrrNrL)rVrur|rrrM)r r r`r`rrrr)r9r>rr)rlrOrPrq_valuesrQrxs r3rzTestRvDiscrete.test_ppfsf     r2h /0%x((? H5q5 u .5rSc gdgdf}tj|}t|j|j |j dddz|j ddy)N)r r`rrr)rVrJrwrwrVrLrr%r )r9r>rrrjrO)rlrArs r3test_cdf_ppf_nextz TestRvDiscrete.test_cdf_ppf_nextsU!:;   d +266"&&s"4t";<559 &r5cDtjdjd}tjgdgdgdg}t j ||f}t |jtj|j|jzdy)NrO)rr)rVrVrUr?)rVrVr?r?rLrr) rcrr5rr9r>rrrfrOrPrlrOrPrs r3test_multidimensionz"TestRvDiscrete.test_multidimensionss YYr] " "6 * XX---/0  r2h / RVVBEEBEEM%:Gr5cgd}ddg}tttjfit ||fgd}tttjfit ||fgd}gd}tttjfit ||fgd}gd}tttjfit ||fddg}ddg}tttjfit ||fy)NrrurL)ru333333?gffffff濩r r`rrr)rwrwrwrwrr )rWrr9r>r rlrOrPs r3test_bad_inputzTestRvDiscrete.test_bad_inputs 3Zj%"3"3MtB87LM j%"3"3MtB87LM  j%"3"3MtB87LM  'j%"3"3MtB87LMV3Zj%"3"3MtB87LMr5cntjdjdtjdd}}t t t jfit||ftjdjdtjdd}}t t t jfit||ftjdjdtjdd}}tt j||fjddy) Nrr`r`r`rgUUUUUU?rLr)rr`r) rcrr5rrWrr9r>r rrIr^s r3test_shape_rv_samplez#TestRvDiscrete.test_shape_rv_samples1%%f-rwwvs/CBj%"3"3MtB87LM1%%f-rwwvs/CBj%"3"3MtB87LM1%%f-rwwvs/CBU&&r2h7;;A>Dr5cgd}gd}tj||f}t|jt j |j |jzdy)N)r r`rr)rr)rVrJrJrJrJrVrLrr)r9r>rrrcrfrOrPrYs r3 test_expect1zTestRvDiscrete.test_expect1sG  +   r2h / RVVBEEBEEM%:Gr5c tgd}gd}tj||f}t|j|j dt|jt dt ||Ddt|jdt dt ||Ddy) N)/gi@gr@gy@g@@g@g@@g @rg0@g@gP@g@gp@g@g@g @g@rgh@g0@g@g@g@gP@g@g@g@rg8@g@gȩ@g@gX@g @g@g@gx@g@@g@gh@g̰@g0@g@g@g\@g@)/g-C6:?rzgF%uk?g:vz?rzrzg.nr?g|гY?rzrzrzg@6*?4U0*C?g@ +?gC6z?gnr?g ?gOjM?g n?g1w-!?g:pΈ?gףp= ?g_Le?rzg^)p?g~jtx?gJ4q?gGzt?gJ4q?gMb@?g@Psׂ?g@^)ˀ?rzrzgN@s?g1w-!_?rigൄ|г?rzgH}}?rzg F%u?rzrzg^)ˀ?gv?rzrLrrc3,K|] \}}||zywror;rrws r3 z.TestRvDiscrete.test_expect2..9s9daAE9sc |dzSNr`r;rs r3rHz-TestRvDiscrete.test_expect2..< AqDr5c32K|]\}}|dz|zyw)r`Nr;rks r3rmz.TestRvDiscrete.test_expect2..=s<AAqD1Hrrrrfr )rlr(pyrs r3 test_expect2zTestRvDiscrete.test_expect2s =?   q"g .  RWWYU; 9c!Rj99 G  .1<Q<<5 Jr5N)rrrr0rCrjrcrUrrWrZr_rdrfrsr;r5r3rBrBsC 2  1 . .&HN( EH#Jr5rBceZdZdZdZy)TestSkewCauchyctjddd}ttjj |dtj j |ttjj|dtj j|ttjj|dtj j|yNrrrZrrh) rcrRrr9 skewcauchyrbrrjrrs r3 test_cauchyzTestSkewCauchy.test_cauchyAs KKAs #!%"2"2"6"6qA"6">"',,"2"21"5 7!%"2"2"6"6qA"6">"',,"2"21"5 7!%"2"2"6"6qA"6">"',,"2"21"5 7r5ctjjd}|jddzdz }|jddzdz }gd}gd}t t j j|||t t j j|||t t j j|||y)NrrYr`r r) g&45?gQʶ?g-4[u?g a2?g Rn?gѦ}cي?) gN@Q?gPPz@ ?g?g; 7?glg?g!?%?gQҙ?gC"?go?g@Sg?) rcrrrrr9rxrbrjr)rlrr1rXrbrjs r3test_skewcauchy_Rz TestSkewCauchy.test_skewcauchy_RJs&ii##A& HHRL1 q  HHRL2  !%$ ((,,Q2C8((,,Q2C8((,,S!4a8r5N)rrrryr{r;r5r3ruru@s 7 9r5ruc~eZdZdZej dZejjdgddZ y) TestJFSkewTcdx}}|dz}gd}gd}tj||}tj|}t|j ||j |t|j ||j |t|j ||j |t|jd|jdy)Nrr`)rrzrMry)rzrVrerrrMr)r9 jf_skew_trrrbrjr)rlr1r2rrXrxjfrs r3test_compare_tzTestJFSkewT.test_compare_tns A U ! - __Q " GGBKq 1558,q 1558,q 1558,(!''&/:r5ctjttjdz }tj j |dS)aSample data points computed using the `ST5` distribution from the GAMLSS package in R. The pdf has been calculated for (a,b)=(2,3), (a,b)=(8,4), and (a,b)=(12,13) for x in `np.linspace(-10, 10, 41)`. N.B. the `ST5` distribution in R uses an alternative parameterization in terms of nu and tau, where: - nu = (a - b) / (a * b * (a + b)) ** 0.5 - tau = 2 / (a + b) z"data/jf_skew_t_gamlss_pdf_data.npyz x,pdf,a,bnames)rcloadr__file__parentrec fromarraysrrs r3gamlss_pdf_datazTestJFSkewT.gamlss_pdf_data~sAww N ! !$H H vv  [ 99r5za,b)rb)rr)rO c||d|k(|d|k(z}|d|d}}t|tj||j|dy)zCompare the pdf with a table of reference values. The table of reference values was produced using R, where the Jones and Faddy skew t distribution is available in the GAMLSS package as `ST5`. r1r2rXrbrr~N)rr9rrb)rlrr1r2rrXrbs r3test_compare_with_gamlss_rz&TestJFSkewT.test_compare_with_gamlss_rs_  S !Q &?3+?1+D E cDK3U__Q266q9Fr5N) rrrrrrrrrrr;r5r3r}r}msH;  ^^ : : [[U$>? G@ Gr5r}r`rg@rgףp= 1@r8gRZ@igS㥛Ԋ@rVrWg&@iQi'i0ybilHO1Zi3rirYirZikrJi1rii4i Ni(lEI.r%iceZdZdZdZdZdZdZdZdZ e jjde d Zd Zd Zd Zy ) TestSkewNormc$td|_yr.)rrrqs r3r0zTestSkewNorm.setup_methods%d+r5ctjddd}ttjj |dtj j |yrw)rcrRrr9skewnormrbrrs r3 test_normalzTestSkewNorm.test_normalsB KKAs #!%.."4"4Q!"4"<"'**.."3 5r5ctd}d}tjjd||}t ||j tjjd||}t ||j y)Nr)rrrr)r1rrr)rr9rrrr;)rlrr;rXs r3rCzTestSkewNorm.test_rvssc & NN  E  DUAGG$ NN  %c  BUAGG$r5ctd}tjjdt ddd|}t j |t j|tj|tj|g}tjjdddd}t||d tjjd t ddd|}t j |t j|tj|tj|g}tjjd ddd}t||d y) Nrrrrr`)r1rr^r_rr)r1r^r_rrPr) rr9rrr\rcrr7r8kurtosisr)rlrrrQr:s r3r#zTestSkewNorm.test_momentss  & NN  Sq,/  1GGAJq 5::a=%..:KL>>''!!V'L!(Ha@ NN  #c(,/  1GGAJq 5::a=%..:KL>>''"!1f'M!(Ha@r5cgdgdgdgdgdgdgdg}|D]4\}}}tjj||}t||d 6y) N)rvrgEAV)rvrgV|@$a)rvrg0rY)rvruZk)rrr)rrļ)r`gcrr%r~)r9rrr)rl logpdfvalsrXr1 logpdfvalrs r3test_pdf_large_xzTestSkewNorm.test_pdf_large_xsY 2 3 0 2 4 5 5  * 8OAq)>>((A.D D)$ 7 8r5ctjjgdd}t|t j ddtjjdd}t|ddy) N)rYrr3rrrr~r~r|rM)r9rrjrrconesrs r3test_cdf_large_xzTestSkewNorm.test_cdf_large_xsP NN  |R 02771:E2 NN  r3 '3U+r5cgdgdgdgdgdg}|D]d\}}}tjj||}t||dtjj | | }t||dfy)N)rr gzbLe9)rr`gn'/2;)rrg::)rrg|<)rfrr,r%r~)r9rrjrr)rlcdfvalsrXr1cdfvalros r3test_cdf_sf_small_valuesz%TestSkewNorm.test_cdf_sf_small_valuessy . + , . /  $ 2LAq&""1a(A AvD 1!!1"qb)A AvD 1  2r5z a, momentsct|dD]3\}}tjj||}t ||d5y)Nr )startrr~)r]r9rrr)rlr1rorderrQrs r3test_noncentral_momentsz$TestSkewNorm.test_noncentral_momentss>(: 7OE8..''q1C C 6 7r5c Xtjjd}d\}}}tj|||}|j d|}tjj |dd\}}} tjj |dd\} } } || cxk(rdk(sJJ|| k7sJtjj |ddd \} }}|dk(sJtj| ||}|jd }tj|tj|f}t||tjj d d|}tjj |}tjtj|sJtjj |d \}}}tj|sJtj|tj|}}t|||tjdtj z zzt||dzd dtj z z ztjj |d\}}}tjj | d\}}}t|||g| | |gtjj |d \}} }!tjj | d \}"}#}$t|"|#|$g| | |!gy)Nl# ke)rr1rurZrrQrrgmmrrmsrr rr`mle)rcrrr9rrrrr8rrrr=isinfr7rrd)%rlrr1r^r_rMra2loc2scale2a3loc3scale3a4loc4scale4dist4rr~ra5loc5scale5rra6ploc6pscale6pa6mloc6mscale6ma7ploc7pscale7pa7mloc7mscale7ms% r3rozTestSkewNorm.test_fitsii##$78$ 3~~ae,hhCch2!>>--c4a-@D& >>--c4a-@D&t q     Rxx!>>--c1Qt-LD&{{r40kk$k'ggclEJJsO+S!||#>nn  &vvbkk#&'''!>>--d4-@D&xx||wwt}bffTl14&2771RUU7+;";;<619AI 67$nn00U0CUG#nn00#e0DUGeW-ufg/FG#nn00T0BUG#nn00#d0CUGeW-ufg/FGr5cX tjgdddgzzdgz}tjj |}tjj ||}tjj |d}tjj ||}||dz ksJtj jd d d d d } fd }tjtj|||}tjj||jdy)N)rrr3rOr rT)superfitruly ND)rr)rfrY)r|rYr1r^r_c t||S)N)r)r')funrrs r3 optimizerz0TestSkewNorm.test_fit_gh19332..optimizer\s)#v3? ?r5)rrr~) rcrr9rrrrrtestingrparams) rlrXrr params_superr~rr fit_resultrs @r3test_fit_gh19332zTestSkewNorm.test_fit_gh19332Gs HH*R1#X5; <##A&nn!!&!, ~~))!d); nn!!,2S3Yii##$78y;G @YYu~~q&IN  ""6:+<+<4"Hr5c\ttjjddddy)Nrwrgi}#%?rr~)rr9rrrqs r3rzTestSkewNorm.test_ppfbs" **457HuUr5N)rrrr0rrCr#rrrrrr_skewnorm_noncentral_momentsrrorrr;r5r3rrs`,5 % A8 ,2" [[\+GH7I7 .H`I6Vr5rc$eZdZdZdZdZdZy) TestExponcVttjjddyr)rr9r^rbrqs r3 test_zerozTestExpon.test_zerojsU[[__Q'+r5cttjjddttjj tjj ddy)Nr0rv)rr9r^rjrrrqs r3 test_tailzTestExpon.test_tailms=U[[__U+U3U[[__U[[^^B%78"=r5ctjdddddtjg}ttt j j|yNo_?46@yX5ͻ@j+?UX @)rcrrrWrr9r^rrs r3test_nan_raises_errorzTestExpon.test_nan_raises_errorq5 HHfffffbffE Fj%++//15r5ctjdddddtjg}ttt j j|yr)rcrrrWrr9r^rrs r3test_inf_raises_errorzTestExpon.test_inf_raises_errorvrr5N)rrrrrrrr;r5r3rris,>6 6r5rcfeZdZdZdZdZejjdddgdZ y) TestNormctjdddddtjg}ttt j j|yr)rcrrrWrr9rrrs r3rzTestNorm.test_nan_raises_error}5 HHfffffbffE Fj%**..!4r5ctjdddddtjg}ttt j j|yr)rcrrrWrr9rrrs r3rzTestNorm.test_inf_raises_errorrr5cbgd}tttjj|dy)Nrshrimp)plate)rWrr9rrrs r3test_bad_keyword_argzTestNorm.test_bad_keyword_args i(Cr5r^rr cd}tjjd|zd|z|}t||dtjjd|z d|z | }t||dy)Ngg {F.:rrOr^rr~)r9r _delta_cdfr)rlr^rQrks r3test_delta_cdfzTestNorm.test_delta_cdfsm) %%bfbf#%>xe4 %%3i2c6%Exe4r5N) rrrrrrrrrrr;r5r3rr|s;5 5 D [[UQF+ 5, 5r5rceZdZdZdZdZy) TestUniformgh-10300ctjdddddtjg}ttt j j|yr)rcrrrWrr9rrrs r3rz!TestUniform.test_nan_raises_error7 HHfffffbffE Fj%--"3"3Q7r5ctjdddddtjg}ttt j j|yr)rcrrrWrr9rrrs r3rz!TestUniform.test_inf_raises_errorrr5N)rrr__doc__rrr;r5r3rrs8 8r5rc 6eZdZdZdZdZdZejjdgddZ ejjdgd gd gd gd gd gdZ ejjdgdgdgdgdgdgdgdZ y) TestExponNormc2d}d\}}}d||zz }tjj|||d}t|||||d\}}}d||zz }tjj|||d}t|||||d\}}}d||zz }tjj|||d}t|||||d\}}}d||zz }tjj|||d}t|||||y) Ncdd||zdzz z}d||zdzz |dzz}dd||zdzzdzz}|d|z z||zd||zz z||gS)NrMr r`rrQ@rr;)lamsigrWopK2exp_skewexp_kurts r3get_momsz,TestExponNorm.test_moments..get_momsszc#g\))DC#I>)D4L8Ha39q.0B77H3JC#s3w- 78L Lr5)rr r rMrr5)rr`rV)rrr )rrr1)r9 exponnormr)rlrrWrrKstss r3r#zTestExponNorm.test_momentss. M C 39 oo##A2S&#IC#sB!78! C 39 oo##A2S&#IC#sB!78 C 39 oo##A2S&#IC#sB!78" C 39 oo##A2S&#IC#sB!78r5ctjdddddtjg}ttt j j|ddy Nrrrrrrr r:)rcrrrWrr9rrrs r3rz#TestExponNorm.test_nan_raises_error; HHfffffbffE Fj%//"5"5qqKr5ctjdddddtjg}ttt j j|ddyr )rcrrrWrr9rrrs r3rz#TestExponNorm.test_inf_raises_errorr r5cTttjjdddttjjdddttjjdddttjjdddy)Ni|r rzrw)rr9rrbrqs r3test_extremes_xzTestExponNorm.test_extremes_xsnEOO//a8#>EOO//a8#>EOO//d;SAEOO//d;SAr5zx, K, expected))rrwg6 N-)r rwg՜n+H?)rrwgi?)rrwgbJI-)rYr gI8?)rYrgQ3|-0?c\ttjj|||dyr)rr9rrb)rlrXrrQs r3 test_std_pdfzTestExponNorm.test_std_pdfs! ++Aq18%Hr5zx, K, scale, expected)rrwr gVAҤ?)r{Gzt?r g'^ >)rwrwrZrz)rwrwrgbr ;)rrr gVMe?c~tjj|||}|dk(r|dk(sJyt||dy)Nrrzrr~)r9rrjrrlrXrr_rQros r3test_cdf_small_KzTestExponNorm.test_cdf_small_Ks= OO  1E  2 s?8O8 Axe 4r5)rYrwr gh G}$;)r`rr g ]fJ?)rrrug31"g#;)rYrrugf +-)rrrurz)rrr ga9S?c~tjj|||}|dk(r|dk(sJyt||dy)Nrrz-a=r~)r9rrrrs r3test_sf_small_KzTestExponNorm.test_sf_small_K s= OO  q!5  1 s?8O8 Axe 4r5N) rrrr#rrrrrrrrrr;r5r3rrs96L L B$ [[-BCICI [[4>D4G? AB 5 B 5& [[4B@DF3@ BC5C5r5rceZdZdZdZej jdgddZej jdgddZ y) TestGenExponcddlm}tjj t j dddddd}t||dddy) Nr)simpsonrYrwrury)dxr )scipy.integraterr9genexponrbrcrr)rlrros r3test_pdf_unity_areaz TestGenExpon.test_pdf_unity_areas?+ NN  ryyB5sC EGA$/A6r5ctjjtjdddddd}tj d|k|dkzsJy)NrrYrwruryr )r9rrjrcrr)rlrjs r3test_cdf_boundszTestGenExpon.test_cdf_bounds#sHnn  1b$!7c3GvvqCxC1H-...r5z x, p, a, b, c))r8gM((++Aq13WE((,,S!4aeDr5N)rrrrr;r5r3r'r'NsEr5r'ceZdZdZy) TestExponpowcttjjdddttjj tjj ddddy)Nrryrrr)rr9exponpowrjrrrqs r3rzTestExponpow.test_tail[sLENN..ub95AENN..u~~/@/@B/GL r5N)rrrrr;r5r3r+r+Zsr5r+ceZdZdZdZdZy) TestSkellamctjdd}d\}}tjgd}ttj j ||||dy)Nrfr8r)gYjP'?g$S?gQ`s2?gC/qF?gD<]Y?g/Xj?g86y?g]a¨?g:?g?gQ>?g?g:?g]a¨?g96?g0X?gA<]?gB/q?gQ`s?g$S?gYjP'?gX_?g+rx?gfSr?gJXx~?rP)rcrrrr9skellamrI)rlrUmu1mu2skpmfRs r3rczTestSkellam.test_pmfbsO IIc2 S - . EMM--ac:FBOr5ctjdd}d\}}tjgd}ttj j ||||dy)Nrfr8r)gƃQ?gS `X'?gVy)>?g: S?gei.f?gȼJ]x?g)?g{^'+i?gLIg>?gnZ ?g?rvͪ?gA?g0?g#J?gqSm . ?g~B?gd?gFBD?gQ9?gmF^?gcMy?gGJq?gC^c?g.){?gñݸ?rrP)rcrrrr9r1rj)rlrUr2r3skcdfRs r3rUzTestSkellam.test_cdfwsO IIc2 S - . EMM--ac:FANr5cd\}}}ttjj|||ddttjj |||ddy)N)rr gs1Crr|rr )rr9r1rIrj)rlrXr2r3s r3test_extreme_mu2zTestSkellam.test_extreme_mu2sK. 3 ))!S#6F ))!S#6Fr5N)rrrrcrUr8r;r5r3r/r/asP*O*Gr5r/c eZdZdZdZej ddZejjdddgejjd gd ejjd gd ejjd e ddDcgc]}d|vr| c}}e jddZ dZycc}}w) TestLognormctj5tjdttj j gdd}t|gddddy#1swYyxYw)Nrlrrur r )rzg~r?ge3E?)rprqrrrsr9r!rbrrlrbs r3rKzTestLognorm.test_pdfsZ $ $ & J  ! !'> :--##K3C %c+H I J J Js A A))A2c d\}}}ttjj||z |tjjt j ||z |z ttjj||z |tjjt j ||z |z y)N)g(\5i@gOn?rF)rr9r!rrrcrr)rlrirWsigmas r3rzTestLognorm.test_logcdfs* B ((B%(8 bffRUmE&9: < ++BrEU+; ((2u)<= ?r5rrc@tjjdSr.rrqs r3rzTestLognorm.rngrr5rrVr`r)rrr`r4)rJr rr)FTrrFrrctjjd||||}i} |r|| d<|r|| d<|r|| d<ttj|fi| ddiy)NrZ)rrGr_r^rrrrrT)r9r!rrrs r3rz'TestLognorm.test_fit_MLE_comp_optimizersu}}  cYi%,3!@ "DJ "DL &DN &emmT a"&&!"56r5cfgd}tttjj|dddy)NrVrur|rr r)rrr)rWrr9rrrs r3test_fit_bad_keyword_argsz"TestBeta.test_fit_bad_keyword_argss$ i1$ &r5cdgd}tttjj|ddy)NrPru)fafix_a)rWrr9rrrs r3#test_fit_duplicated_fixed_parameterz,TestBeta.test_fit_duplicated_fixed_parameters! j%**..!3Gr5zOverflow, see gh-14901reasoncfd\}}}ttjj|||dy)N)g?r?g0xAgx)>)rr9rr)rlror1r2s r3test_issue_12635zTestBeta.test_issue_12635s+71a q!Q/1FGr5c0tjgd}tjgd}d}tjj ||dzd|z }t ||tjj ||dzd|z }t ||y)N)g@3@?g^?gNC?)rYrZrrr r)rcrr9rrrr)rlinv_R count_listroinvrs r3test_issue_12794zTestBeta.test_issue_12794s~12XXo. jjnnQ Q0CDU#jjmmCa*1DEQr5cd}tjdd}d}d|z |dz||z }}}tjj |||}tjj |||}t |d|z y)Nh㈵>r rr)rcrr9rrrjr) rlalpha_2count_nobsrxr1r2r]rs r3test_issue_12796zTestBeta.test_issue_12796sq1b!g+vz4&=a1jjnnQ1%jjnnS!Q'Q[)r5chd\}}ttjjd||tj d\}}ttjjd||tj d\}}ttjjd||dttjjd||dd\}}ttjjd||dttjjd ||dy) Nrr )rJrr)r rr+ph)rr rM)rr9rrbrcr)rlr1r2s r3rzTestBeta.test_endpointss1UZZ^^Aq!,bff51UZZ^^Aq!,bff51UZZ^^Aq!,a0UZZ^^FAq1151UZZ^^Aq!,a0UZZ^^Ha3Q7r5zDoes not convert boost warningcd\}}}tjt5tjj |||dddy#1swYyxYw)N)gףp= ?gvH7B@0B)rwarnsrsr9rr)rlrxr1r2s r3test_boost_eval_issue_14606z$TestBeta.test_boost_eval_issue_14606(sB'1a \\. ) $ JJNN1a # $ $ $s "A  Ara, b)rf)@)rlrfc<d} ||||y#t$rYywxYw)Nr) OverflowError)rlrr1r2ros r3 test_beta_ppf_with_subnormal_a_bz)TestBeta.test_beta_ppf_with_subnormal_a_b.s-   1aO   s  z x, a, b, ref)rrr|g>׵NlIq)& .!>rvr|g'rOcbtjj|||}t||dyr)r9rrrrlrXr1r2r~rs r3rzTestBeta.test_logcdfGs(""1a+%0r5)rprr|gp}^U)rmrvr|g 1*c`tjj|||}t||dy)Nr)r9rrrrlrXr1r2r~rs r3rzTestBeta.test_logsfOs(   Aq)sE*r5r{))rurugο)rr g)r rg&׾k )rrg*)Mc`ttj||j|yrorr9rrArs r3rjzTestBeta.test_entropy`s"  1a(002C8r5za, b, ref, tol))r rYgCpr)rYrg8EOr)gNAgNAg(4Fr)SAgSAg8TAUr%)rg _Bg[VVuD&r)r:r:gR#Lr})r`rg?r5r)r`r\r)rYrgnQc}4r)rYrg{CEr)rYr:%\r)rr`rxr)rrryr)r:rYrzrcdttj||j||yrrv)rlr1r2r~rMs r3rzTestBeta.test_extreme_entropyhs%H  1a(002CcBr5c tjtj}tjgd}tjgd}|||j }tj||d|dj ||d|dj ||d|dj ||d|dj g}t ||y)N)rwrZrrY)rwrrZrrrr r`r)r9make_distributionrrcrrAr)rlBetar1r2rr~s r3test_entropy_broadcastingz"TestBeta.test_entropy_broadcastings&&uzz2 JJ* + JJ* +Q!n$$&jj$11.66811.66811.66811.668:; S!r5N)rrrrrNrQrUrrskipif MACOS_INTELrYr^rdrxfailrrjrr9rrrrorrrjrrr;r5r3rGrGs,7& H  [[ ,DE HF H [[ ,DE F " [[ ,DE *F *8. [[w'GH$I$  [[X  'GH [[Vnn%EFGI. [[^GCEF1F1  [[^GEGH+H+ [[[DE 9 E 9 [[ . C/. C "r5rGcfeZdZgdZdZdZejjdgddZ ejjdedZ d Z ejjd egd zd Z ejjd d dgdZ dZdZdZdZdZy) TestBetaPrime) )rY@r?D>?)rrr?m嗽?)rr?rVgPK?)rrr?g%p?)rr?rVg#|/?)rrrgsM <)rr?r$5Є*?)^ 9^;r?rVgompP?)rrrg7j"!9)rr?rz ^J?)rr?rVgܷ"+>)rrrgrNs: )rr?rgK>cXd\}}tjgd}tj||}t tj |j |jt|j|tj|j |y)NrKrL) rcrr9rr r=rrrrbrrMs r3rzTestBetaPrime.test_logpdfsn t HH_ % OOE4 ( AHHQK(,,./a"&&!"56r5c tjjddd}t|dd\}}t j gd}tjj|||}t t j|jtjj}|Dcgc]}|tj|||}}t||ddycc}w) NrrJrwrzrKrL-=rg) r9rrjrrcrr r=rr? _cdf_singler)rlrXrrrgen_cdfrBcdfs_gs r3rUzTestBetaPrime.test_cdfs OO  3 ,Q t HH_ %""1eT2 D!%%'(%%11HIJ'%//3t<JJf159Ks5 C'zp, a, b, expected))rwrr|gV)?)rrr|gWJB9*=)r0rr|gOGJ<)rre@gΣ01)?rerg8ǘ`?)>q?r?rVgMDcbtjj|||}t||dyr)r9rrr)rlror1r2rQrXs r3rzTestBetaPrime.test_ppfs( OO  1a (8%0r5z x, a, b, pc^ttjj||||dyr )rr9rr)rlrXr1r2ros r3test_ppf_gh_17631zTestBetaPrime.test_ppf_gh_17631s!++Aq!4aeDr5ctjd}tjd}tjd}ttjj |||ddy)NrMrurr~)rcrrr9r_ppf)rlr1r2ros r3 test__ppfzTestBetaPrime.test__ppfsH HHSM HHSM HHSM,,Q15sGr5zx, a, b, expected))rrrr)rr?rVgV[?)rr?rVrc^ttjj||||dyr)rr9rrj)rlrXr1r2rQs r3test_cdf_gh_17631zTestBetaPrime.test_cdf_gh_17631s# ++Aq!4hUKr5)r:r?rVg%?)r:rr?goXr?cptjj|||}|dksJt||dy)NrMgh㈵>r~)r9rrjr)rlrXr1r2rQr(s r3test_cdf_extreme_tailsz$TestBetaPrime.test_cdf_extreme_tailss3 OO  1a (3ww8$/r5cgd}gd}gd}gd}tjj|||}t||dy)N)rrr`r?r?r?r?rrr?r?r?rr)rr`r rVrVrVrVr?r?rrrrr)rrꌠ9Y>)Frrrrrrrrrrr)g/:g U/7gKH9g<![a?gw 4?g)J?g5?rrrrg%?gsM  [[ B11 [[\84E5EH [[   L L [[ . / 120 204*100 "r5rc ReZdZdZdZdZdZdZdZe jjddd gd Z e jjd gd d Z e jjdgde jjdgde jjdgde jjdddge jjdddge jjdddgdZy) TestGammactjjddd}t|dtjjddd}t|dy) NZirJrg CTb?rrYgBΖ?)r9rrbrr=s r3rKzTestGamma.test_pdfFsFkkoob#To2C-kkooa4o0C+r5c\tjjdd}t|dyr)r9rrrrIs r3rzTestGamma.test_logpdfNs$##Aq)FA&r5cdgd}tttjj|ddy)NrPrr)rr)rWrr9rrrs r3rQz#TestGamma.test_fit_bad_keyword_argsTs i!!8Lr5ctjtjj ddddsJtjtjj dddd sJy) Nrr gplC@rrrrZg1}t@r)rciscloser9rrrqs r3rzTestGamma.test_isfXs\"zz%++//%3+%9 99zz%++//%5+%9 99r5cld}d}d}tjj||}t||dy)NPrgޟ򑁺rr~)r9rrrrs r3rzTestGamma.test_logcdfns3  $##Aq)%0r5cld}d}d}tjj||}t||dy)NrrgDmrr~)r9rrrrs r3rzTestGamma.test_logsfus3  % !!!Q's/r5r_rMrNcrtjj|dz|dzd|}t|ddy)Nrrrg>S*rr~)r9rrrrlr_rks r3rzTestGamma.test_delta_cdf|s6 &&uSy%)Qe&L6UCr5z a, ref, rtol))rgt.r})r`rr})rZgX>k-־ @r)rgwM7@r})gNgmCg%og$6@r})roܘ#]@r}cZttjj|||yr)rr9rrA)rlr1r~rs r3rjzTestGamma.test_entropys  ++A.$?r5r1)rwr rr^)rwrrrTTFrr6c.tjjd}tjj |||d|}i} |r|| d<|r|| d<|r|| d<dt | z } | dk(rId } tjt| 5tjj|fd d i| dddytjj|fd d i| } tj| } | d k\r-t| jtj|| dk\r1t| jdtj|dz| dk\r2t| jdtj|dzyy#1swYyxYw)NrrZr9rSrrrrrrrrr r`)rcrrr9rrr rrrrrrr)rlr1r^r_rTrr6rrrrr=thetarMs r3 test_fit_mmzTestGamma.test_fit_mmsWii##$78{{qcS,/1 DJ DL "DNCI  A:MIz; ; :T:T: ;  :T:T:{{E" A: DIIK 7 A: DKKNBGGD!G,< = A: DKKNBGGD!G,< =  ; s #F  FN)rrrrKrrQrrrrrrrrjrr;r5r3rrEs),' M9,10 [[WsCj1 D2 D [[^BC@C@ [[S.1 [[UN3 [[Wn5 [[WtUm4 [[Yu 6 [[[4-8>975642 >r5rcd}tjd|dzz d|dzz dd}t|jddy) Nrg;f?r`r rr]rMgV{q@)r9rrrb)jitterZs r3test_pdf_overflow_gh19616rsCF 6FAI-q619}!1MAAEE#J 12r5ceZdZdZej j dgddZej j dgddZej j dgdd Z d Z y ) TestDgammactjjd}d}|jd|}|j d|}t j j||}t jjtj||dz }t||t j |}t|j||dy)NlOP($rYr_r)rrr`rr~) rcrrnormalrr9dgammarbrrr)rlrrrXr1rr~rMs r3rKzTestDgamma.test_pdfsii##$78 JJRdJ + KKRdK +llq!$kkoobffQi+a/S!||A Su5r5zx, a, expected))rr ggrU>)rr g$IC<)irg2Wj<)rrg~)A.=)rr gf?cxtjj||}t||dtjj ||}t||dtjj | |}t||dtjj ||}t|| dyr)r9rrjrrrr)rlrXr1rQrjrrrs r3test_cdf_ppf_sf_isf_tailz#TestDgamma.test_cdf_ppf_sf_isf_tailsllq!$XE2llx+QU+ \\__aR #H51llx+aRe,r5r))rgmqn@)?g?)rgx?cZttjj||dyrrr9rrArs r3rjzTestDgamma.test_entropys  ,,Q/5Ar5))rr)rg>_)r3g5i)rgo@)rg4Fa3@)rgrO]@cZttjj||dyrrrs r3test_entropy_entreme_valuesz&TestDgamma.test_entropy_entreme_valuess"  ,,Q/5Ar5ctjgd}tjj |}t t |D],}||tjj ||k(r,Jy)N)r rrr3)rcrr9rrArr )rlrXr(rs r3test_entropy_array_inputz#TestDgamma.test_entropy_array_inputsa HH' ( LL  #s1v 6AQ45<<//!55 55 6r5N) rrrrKrrrrrjrrr;r5r3rrs 6, [[-:; - ; - [[X89 B 9 B [[X:; B; B6r5rceZdZdZej j dgddZej j dgddZdZ ej j dgd d Z d Z y ) TestChi2cttjjddddttjjddddy)Nrgޞw1D?r$rPrZg6:֜?rr9chi2rbrqs r3rzTestChi2.test_precision!s@EJJNN468N$& (EJJNN346J$& (r5r>))gp@rg~#e)g^@r8g tA)rrgzĀ׿c`tjj||}t||dyr)r9rrr)rlrXrr~rs r3rzTestChi2.test_logcdf(s&""1b)%0r5))rr8r)rrvgc)rrYg]3c`tjj||}t||dyr)r9rrr)rlrXrr~rs r3rzTestChi2.test_logsf3s&   B's/r5c|d}tjjd|}t|ddtjjd|}t|ddd}tjjd |}t|d dtjjd |}t|d dy) Nr5gλm:=6g'bd5)r gƯʉ?)rZgn>@)g͔v0@)rg9:3@cbttj|j|dyr)rr9rrArs r3rjzTestChi2.test_entropyUs!  2..0#EBr5cZttjjddddy)Nrzr`rur$rrqs r3test_regression_ticket_1326z$TestChi2.test_regression_ticket_1326^sEJJNN32Cd3ej:ej<ej<fgd?d@ggdAZejjdBgdCejjdDe jBjDdEej.dFd3dGdHfe jBjFdEej.dFd3dGdHfe jBjDdIej.d3dJdGdEfe jBjFdIej.d3dJdGdHfgdKZ$ejjdLgdMdNZ%ejj"ejjdLgdOdPZ&ejdQZ'dRZ(dSZ)yT)UTestLevyStableT)autousecdtj_dtj_dtj_tj j tj_y)z2Setup default parameters for levy_stable generatorS1 piecewiseN)r9rparameterizationcdf_default_methodpdf_default_method _levy_stable _QUAD_EPSquad_epsrqs r3reset_levy_stable_paramsz'TestLevyStable.reset_levy_stable_paramssH.2*/:,/:,%*%7%7%A%A"r5ctjttjdz }tj j |jd}|S)a Sample data points for pdf computed with Nolan's stablec See - http://fs2.american.edu/jpnolan/www/stable/stable.html There's a known limitation of Nolan's executable for alpha < 0.2. The data table loaded below is generated from Nolan's stablec with the following parameter space: alpha = 0.1, 0.2, ..., 2.0 beta = -1.0, -0.9, ..., 1.0 p = 0.01, 0.05, 0.1, 0.25, 0.35, 0.5, and the equivalent for the right tail Typically inputs for stablec: stablec.exe << 1 # pdf 1 # Nolan S equivalent to S0 in scipy .25,2,.25 # alpha -1,-1,0 # beta -10,10,1 # x 1,0 # gamma, delta 2 # output file z.data/levy_stable/stable-Z1-pdf-sample-data.npyx,p,alpha,beta,pctrrcrrrrrrTrrs r3nolan_pdf_sample_dataz$TestLevyStable.nolan_pdf_sample_datasL6ww N ! ! < = vv  /C D r5ctjttjdz }tj j |jd}|S)a#Sample data points for cdf computed with Nolan's stablec See - http://fs2.american.edu/jpnolan/www/stable/stable.html There's a known limitation of Nolan's executable for alpha < 0.2. The data table loaded below is generated from Nolan's stablec with the following parameter space: alpha = 0.1, 0.2, ..., 2.0 beta = -1.0, -0.9, ..., 1.0 p = 0.01, 0.05, 0.1, 0.25, 0.35, 0.5, and the equivalent for the right tail Ideally, Nolan's output for CDF values should match the percentile from where they have been sampled from. Even more so as we extract percentile x positions from stablec too. However, we note at places Nolan's stablec will produce absolute errors in order of 1e-5. We compare against his calculations here. In future, once we less reliant on Nolan's paper we might switch to comparing directly at percentiles (those x values being produced from some alternative means). Typically inputs for stablec: stablec.exe << 2 # cdf 1 # Nolan S equivalent to S0 in scipy .25,2,.25 # alpha -1,-1,0 # beta -10,10,1 # x 1,0 # gamma, delta 2 # output file z.data/levy_stable/stable-Z1-cdf-sample-data.npyrrrrrs r3nolan_cdf_sample_dataz$TestLevyStable.nolan_cdf_sample_datasMJww N ! ! < = vv  /C D r5cdtjttjdz }|S)a&Sample data where loc, scale are different from 0, 1 Data extracted in similar way to pdf/cdf above using Nolan's stablec but set to an arbitrary location scale of (2, 3) for various important parameters alpha, beta and for parameterisations S0 and S1. z1data/levy_stable/stable-loc-scale-sample-data.npy)rcrrrrrrs r3nolan_loc_scale_sample_dataz*TestLevyStable.nolan_loc_scale_sample_datas/ww N ! ! ? @  r5 sample_sizer6r>marksrS0rz alpha,beta))rMr)rMr)rr)rruz gamma,deltar rrcc|tj_tj||||}tj|j |d|j \}} | dkDsJy)N)rrr_r^rrr?)r9rrrBrrj) rlrrrrrkrlsrros r3rCzTestLevyStable.test_rvssb(.>*   d%U || FF $F 7 14xxr5rrur ctjjdd}d}d}tjj ||||d}tj |d||||f\}}|d kDsJy ) z3Additional test cases for rvs for alpha equal to 1.h:rMrurr r^r_rrrTrwN)rcrrr9rrrB)rlrrr^r_rXstatros r3test_rvs_alpha1zTestLevyStable.test_rvs_alpha1sv y!    ! !%3e'+ " -,,q-%*D#u$=?a4xxr5czgd}tjj|\}}}}t|dddt |ddt |dd t |d d|gd z}tjj|\}}} } t |dt |d t | d d t | dd y)N)wgrrzrzrzrz羼u?rrrr67',?rrrrtA}˜.?rrrrGz?rrwr_)\(̿r`gۧ1?rg9]c?)rrrrrrgv?r)r9rrjrrr rlrXalpha1beta1loc1scale1rialpha2beta2rrs r3rozTestLevyStable.test_fit(s  ',&7&7&A&A!&D#tV148E4+FGQ/ '1 9 9&+&7&7&A&A"&E#tVVQUBFFA.D&!,r5zUnknown problem with fitstart.rVzalpha,beta,delta,gamma)rrr`r)rMrr`rparametrizationc|tj_tjj||||dd}tjj |}|\}} } } t ||||g|| | | gdy)z7Test that fit agrees with rvs for each parametrization.rrr9rwr~N)r9rrrrjr) rlrrrkrrrr alpha_obsbeta_obs delta_obs gamma_obss r3 test_fit_rvszTestLevyStable.test_fit_rvs@s-<)  $$ 4U%e$% ))$/471 8Y  D% ' )Y 7 r5cNtjgd}tjj |\}}}}tjj | \}}}} t |d|dk7sJt ||t || t || t | |y)N r r rrrYrYrYr3r3rZrZr r)rcrr9rrjrr) rlrXrrrrrrrrs r3test_fit_beta_flipz!TestLevyStable.test_fit_beta_flipYs HH? @&+&7&7&A&A!&D#tV&+&7&7&A&A1"&E#tVUAqyyFF+EE6*D4%(FF+r5c6d}tjgd}tjj | \}}}}tjj | |z\}}} } t ||t ||t | ||zt | |y)Nr r%)rcrr9rrjr) rlSHIFTrXrrrrrrrrs r3test_fit_delta_shiftz#TestLevyStable.test_fit_delta_shiftes HH? @&+&7&7&A&A1"&E#tV&+&7&7&A&A1"u*&M#tVFF+E5)D$,/FF+r5cpgd}tjj|\}}}}|dks Jd||t|ksJdt|d|gd}tjj|\}}} } |dkDs Jd|| t |kDsJdt |d| y) N) r r rrrYrYrYr3r3r+r zExpected alpha < 1, got zExpected loc < z, got ) r r rrrYrYrYr3r3r,zExpected alpha > 1, got zExpected loc > )r9rrjrrrs r3test_fit_loc_extrapz"TestLevyStable.test_fit_loc_extrapps 6&+&7&7&A&A!&D#tVz>5fX>>zc!f}DAxvdVDD} 7&+&7&7&A&A"&E#tVz>5fX>>zc"g~FR vFF~r5z pct_range,alpha_range,beta_range)rwrur)rVr r`)rrr)rwr?rur3r)rVrur rr`)grrrwr|r ) rwr?rVreffffff?ru?rrr3rrVr`rrrcP|}tj}|jdk(xr|jdk(dj |j|j|j g}ddfdgddfd gddfd gdd fd gd dfdgd dfdgg}t |D]Y\} \} } } | tj_ | || |n|} t5}|jtdtjj| d| d| ddd}tjd5t!| gd|tj"|| dz tj"|| dz tj"| dz g}ddd|d| k\tj$|z}d| d | d!|d"|j&j(d#| }t+|| d| |d$%ddd\y#1swYnxYw#1swYtxYw)&z2Test pdf values against Nolan's stablec.exe outputLinuxi686/dnir&c vtj|dtj|dztj|dz|ddk(|ddk(z|ddk\|ddk\z|ddk(zz|ddktj|dd d gzz|dd ktj|dd d gzz|ddktj|dddgzz|ddk(tj|dddgztjtj|dgdzz|ddk(tj|ddgztjtj|ddgzz|ddk(tj|dddgztjtj|dgdzz|ddk(|ddk(z|ddk(zz|ddk(|ddk(z|ddk(zz|ddk(|dd k(z|ddk(zz|ddk(tj|ddgztjtj|dgdzz|ddk(tj|dddgztjtj|dgdzz|ddk(tj|dd d gztjtj|dddgzz|ddk\zzS)Npctrrrrurrrrwrrwr?r3rJrVrer)rur|r}r.r/)gٿ333333ӿrwrrur7rMrVrJrwr)rrrMrr)rcisinrr alpha_range beta_range pct_ranges r3rHz7TestLevyStable.test_pdf_nolan_samples..sGGAeHi0GGAgJ 45GGAfIz23 vY!^uX_.vY#-wZ3.0uX_. wZ3.GGAeHsCj9: wZ3.GGAeHsCj9:$wZ3.GGAeHr2h78%,wZ3.GGAeHsCj9:GGBFF1V9$5|DE-6wZ3.GGAeHrd34GGBFF1V9$5t<=7@wZ3.GGAeHsCj9:GGBFF1V9$57MNOA#JwZ3.vY#-/uX-/K(TwZ3.vY$.0uX-/U-^wZ3.vY#-/uX-/_2hwZ2-GGAeHrd34GGBFF1V9$57GHIi7rwZ2-GGAeHsCj9:GGBFF1V9$5|DEs<|wZ2-GGAeHsCj9:GGBFF1V9$5RyAB}AF7s*GC,EHr5rrctj|dtj|dztj|dz|ddkDz|ddk7zS)Nr6rrrJrMrcr9r:s r3rHz7TestLevyStable.test_pdf_nolan_samples..snGGAeHi0GGAgJ 45GGAfIz23wZ#%'wZ2% 'r5c|ddk( ztj|dzdvztj|dzS)NrrMr6rr?)rr;r< is_linux_32r=s r3rHz7TestLevyStable.test_pdf_nolan_samples..s]wZ2%$_&GGAeHi01;&(GGAfIz2 3r5g& .=ctj|dtj|dztj|dz|ddkzS)Nr6rrrJr?r:s r3rHz7TestLevyStable.test_pdf_nolan_samples.. s[GGAeHi0GGAgJ 45GGAfIz23wZ3&(r5 fft-simpsonr3c|ddk\tj|dztj|dztj|dzS)Nrrr6rr?r:s r3rHz7TestLevyStable.test_pdf_nolan_samples..s[wZ3&GGAeHi01GGAgJ 45GGAfIz23r5roctj|dtj|dztj|dz|ddkDz|ddkzS)Nr6rrr rr?r:s r3rHz7TestLevyStable.test_pdf_nolan_samples..smGGAeHi0GGAgJ 45GGAfIz23wZ!^%wZ#% 'r5Nz2Density calculations experimental for FFT method.*rXrrr rr_r^rrcalcabserrrelerrrorJz pdf test  failed with method 'z ' [platform: z]  Ferr_msgverbose)platformunamesystemmachinejoin processorr]r9rrr recordrsrbrcrrrisnanrrr)rlrr=r;r<rrQ platform_desctestsixdefault_methodr filter_funcsubdatasuprosubdata2failuresmessagerAs ``` @r3test_pdf_nolan_samplesz%TestLevyStable.test_pdf_nolan_samples|s6% llg-I%--62I  \\5==%// :< tJL ^U% U% W' t& t& kC L"+5!1*  B3AE   0 + 7;t,=A "$%  "H%%))CLG$FO *[[h/ 04FF1ws|#34FF1ws|#34rvvgcl7KK H $H%-((1+  t#88HI""/HNN4H4H3IH:W CL#! ?% %  * $  % % s'*AHAH"A!HH HH% cz|}ddfdgddfdgddfdgdd fd gdd fd gdd fdgg}t|D]V\}\}} } |tj_| || |n|} t 5} | j t dtjj| d| d| ddd} tjd5t| gd| tj| | dz tj| | dz tj| dz g}ddd|d| k\tj| z}d|d|d|jjd|}t| | d| |d !dddYy#1swYkxYw#1swYqxYw)"z4 Test cdf values against Nolan's stablec.exe output.rrcXtj|dtj|dztj|dz|ddk(tj|dgdz|ddk(z|ddk(tj|dgdz|ddk(zzzS Nr6rrrM)r7rrrwrVrJrwrr?r:s r3rHz7TestLevyStable.test_cdf_nolan_samples..ssGGAeHi0GGAgJ 45GGAfIz23 wZ2-GGAfI/ABCuX-/ wZ2-GGAfI?@uX-/  r5r?cVtj|dtj|dztj|dz|ddk(tj|dgdz|ddk(zz|ddk(tj|dgdz|ddk(zzSrer?r:s r3rHz7TestLevyStable.test_cdf_nolan_samples..sGGAeHi0GGAgJ 45GGAfIz237r)& +=>?5T)+ 7r)& ?;<5T)+ r5rCr3ctj|dtj|dztj|dz|ddkDzS)Nr6rr333333?r?r:s r3rHz7TestLevyStable.test_cdf_nolan_samples..s[GGAeHi0GGAgJ 45GGAfIz23wZ#%'r5rctj|dtj|dztj|dz|ddkDz|ddkzS)Nr6rrrrir?r:s r3rHz7TestLevyStable.test_cdf_nolan_samples..nGGAeHi0GGAgJ 45GGAfIz23wZ#%'wZ3& (r5rctj|dtj|dztj|dz|ddkDz|ddkzS)Nr6rrrrr?r:s r3rHz7TestLevyStable.test_cdf_nolan_samples..rkr5rwctj|dtj|dztj|dz|ddkDz|ddkzS)Nr6rrrMrr?r:s r3rHz7TestLevyStable.test_cdf_nolan_samples..rkr5Nz[Cumulative density calculations experimental for FFT method. Use piecewise method instead.*rXrrr rrFrrrGrorJz cdf test rKz' rLFrM)r]r9rrr rVrsrjrcrrrrWrrr)rlrr=r;r<rrYrZr[rr\r]r^ror_r`ras ``` r3test_cdf_nolan_samplesz%TestLevyStable.test_cdf_nolan_samplesUs*4%U% ,T$ &t& t& t& t& GL \"+5!1(  B3AE   0 + 7;t,=A "$#  "@ %%))CLG$FO *[[h/ 04FF1ws|#34FF1ws|#34rvvgcl7KK H $H%-((1+'rd*??Os&nn2232hZACL#! ;# #  ( $  # # s'AF0AF$:AF0$F- )F00F: rrrrbrjc tj}|jdk(xrdtjdv}|r|dk(rt j d|}dt j_dt j_ ||d|k(}d|t j_ |d vsJ|dk(rt jjnt jj}||d |d |d d d} t| ||dy)zGTests for pdf and cdf where loc, scale are different from 0, 1 r132bitrrbz4Test unstable on some platforms; see gh-17839, 17859rrS)rbrjrXrrr`rrFr3N)rPrQrR architecturerrr9rrrrrbrjr) rlrrrrQrArr]rrAs r3test_location_scalez"TestLevyStable.test_location_scales llg-W'X=R=R=TUV=W2W  45= KKN O*0;,/:,tG}-./0[*~%%%%)U]E   ! !8I8I8M8M  CL''*GFO1!  GDM40r5zmethod,decimal_placesr4rrc tjgd}tjgd}tjgd}tjd5t5}|j t d|t j_t jj|d|dd }t||||d d d d d d y #1swYxYw#1swYy xYw) z sample points extracted from Tables and Graphs of Stable Probability Density Functions - Donald R Holt - 1973 - p 187. )rrrrr r r r r`r`r`r`rrrrrrrr)gtF_?gܵ|?gQ?g@?gec]?gHP?gPkw?g!rh?gTN?g ?gDioɴ?g r?gH?g+?gHPs?gX?g&?g 0*?gv/?ga2U0*?)rrerur rrerur rrerur rrerur rrerur rrzDensity calculation unstable.*)categoryrar rrFN) rcrrr rKrsr9rrrbr)rlrdecimal_placesxsdensitybetasr^rbs r3'test_pdf_alpha_equals_one_beta_non_zeroz6TestLevyStable.test_pdf_alpha_equals_one_beta_non_zero sXX H ((     [[X & (9(; s JJ'8  4:E   0##''AuA1'EC Wnf       s% C#'ACC#C C##C,zparams,expected)rrrr )r`rrYr)rYr/rrc|tjj|d|d|d|dd}t||y)Nrr r`rrr5)r9rr)rlrrQobserveds r3rzTestLevyStable.test_stats0sG$$** 1IvayfQivay+  Hh/r5r)rerurzfunction,beta,points,expectedrMrrYrzrr~cd|cxkrdksJJt||||tjt||y)a\Ensure the pdf/cdf routines do not return nan outside support. This distribution's support becomes truncated in a few special cases: support is [mu, infty) if alpha < 1 and beta = 1 support is (-infty, mu] if alpha < 1 and beta = -1 Otherwise, the support is all reals. Here, mu is zero by default. rr rrN)rrcrr )rlrrrrrQs r3!test_distribution_outside_supportz0TestLevyStable.test_distribution_outside_support>s@P5}1}}} V5t 4 GGCK * r5zx,alpha,beta,expected))r/iZ?s0?gz5F?)r~H?|/mg>m?)r.d5 ?L ,ٿg깃\?)r>?ЀjoؿgA]4?)rpa2?Յ пgqQ?cdtj_ttjj ||||y)aTest pdf for x equal to zeta. With S1 parametrization: x0 = x + zeta if alpha != 1 So, for x = 0, x0 will be close to zeta. When case "x equal zeta" is not handled properly and quad_eps is not low enough: - pdf may be less than 0 - logpdf is nan The points from the parametrize block are found randomly so that PDF is less than 0. Reference values taken from MATLAB https://www.mathworks.com/help/stats/stable-distribution.html Afc=rNr9rrrrbrlrXrrrQs r3test_x_equal_zetaz TestLevyStable.test_x_equal_zetals9Z&-"    ! !!5t ! <  r5) )rrrgz¶?)rrrgV?)rrrgRE)3\?)rrrgB?)rrrg/^?)-C6rrgH?)rrrgn?)rrrgx\?)rrrgVM%?)rrrgm?cdtj_ttjj ||||y)aTest pdf for x near zeta. With S1 parametrization: x0 = x + zeta if alpha != 1 So, for x = 0, x0 will be close to zeta. When case "x near zeta" is not handled properly and quad_eps is not low enough: - pdf may be less than 0 - logpdf is nan The points from the parametrize block are found randomly so that PDF is less than 0. Reference values taken from MATLAB https://www.mathworks.com/help/stats/stable-distribution.html rrNrrs r3test_x_near_zetazTestLevyStable.test_x_near_zetas9D&-"    ! !!5t ! <  r5c*tjSro) threadingLockrqs r3levy_stable_lockzTestLevyStable.levy_stable_locks~~r5c Btjj}tdddd}tj }t j d i|}|5d|_d|_|jd i|d|d d }|jd|d  }tj||k(rJd|_d|_|jd i|d|d d }|jd|d  } t| |t||dddy#1swYyxYw) NrrVrzrMrrr^r_rrrY rr;) rcrrr r9rrrrr rlrrr unfrozenfrozen unfrozen_afrozen_a unfrozen_bfrozen_bs r3$test_frozen_parameterization_gh20821z3TestLevyStable.test_frozen_parameterization_gh20821s ii##Ccs#>$$"",V,  /(,H %&*F #%UURc)nUJzzrIzGHvvh*45 55(,H %&*F #%UURc)nUJzzrIzGH : . X . / / /s B;DDc tjj}tdddd}tj }|5d|_t j d i|}|jd i|d|dd }|jd|d }t||d |_t j d i|}|jd i|d|dd }|jd|d } t| |dddy#1swYyxYw) NrrVrzrMrrrYrrrr;) rcrrr r9rrrrrs r3%test_frozen_parameterization_gh20821bz4TestLevyStable.test_frozen_parameterization_gh20821bsii##Ccs#>$$  /(,H %&&00F%UURc)nUJzzrIzGH : .(,H %&&00F%UURc)nUJzzrIzGH : . / / /s B=DD N)*rrrrrrrrrrrrrrCrrrorr#r&r)r-rcrR thread_unsaferbrnrsr{rrrr9rrjrbrrrrrrr;r5r3rrsV^^D!B"B ^^B ^^))V ^^   [[ [[ FLL lfll4v{{7G7GH   [[/$> [[C [[]VV,<=>? $ [[ [[Vc1X. / -0 [[>? [[    [[D$<  @   , , G [[ [[* FLL  FLL(#(kk&&   FLLD CB' B2&kk''  - * [[@+.@D [[* FLL  FLL(#(kk&&   FLLD CB' B2&kk''  - * [[z+,zx [[Wq!f- [[VeU^415.1@ [[ AJ !  @ [[ !RVVRVVRVV!< =  / 00 [[W&78 [['!!%% CB'  !!%% CB'  !!%% Ar2&  !!%% Ar2&  ' : ;9<  [[& )8 98 0 [[ [[   !" 0 ^^  /./r5rceZdZdZdZy)TestArrayArgumentcBtjjdyr.r/rqs r3r0zTestArrayArgument.setup_methodr1r5ctjjtjdtj dd}t |jdy)Nrrr )r9rrrcrrrr;rlrs r3test_noexceptionz"TestArrayArgument.test_noexceptions>jjnn"))A,rwwqz")+SYY(r5N)rrrr0rr;r5r3rrs )r5rceZdZdZdZy) TestDocstringc:tjj3tdtjjj vtj j4tdtj jj vyy)Nr$r)r9r$rr lowerrrqs r3test_docstringszTestDocstring.test_docstringssg >> ! ! - J%.."8"8">">"@@ A ?? " " . K5??#:#:#@#@#BB C /r5cTtjtjyro)r9r?r>rqs r3test_no_name_argzTestDocstring.test_no_name_arg s  r5N)rrrrrr;r5r3rrs Dr5rctgd}t|dkD|d\}}t|gdt|dgtddkD|d\}}t||t|dgtj|zt|dkD|d\}}t||t|dgtj|zy)N)r rr`r r`rrr r`)rr`r`rrr)rrrrcrr1r2rs r3test_args_reducers #$A a!eQ "DAqq/*q1# a!eQ "DAqq!q1# *+ a!eQ "DAqq!q1# *+r5cReZdZgdZdZgdZejjde dZ dZ dZ dZ d Zd Zd Zd Zejj$ejjd ddgdZejjd ddgdZy) TestFitMethod)ncfr?r@ irwinhallcBtjjdyr.r/rqs r3r0zTestFitMethod.setup_method%r1r5)r^rrrz dist,argsc||jvrtj|dtjdddddtj g}tjdddddtj g}tt|}tt|j|dtt|j|dy ) rz fit known to fail or deprecatedrrrrrr rqN) fitSkipNonFiniterrrcrrrr'r9rWrr)rlrMr)rXr(distfuncs r3!test_fit_w_non_finite_data_valuesz/TestFitMethod.test_fit_w_non_finite_data_values+s 4(( ( KK4& @A B HHfffffbffE F HHfffffbffE F5$'j(,,!<j(,,!.mlefuncwsAAB!"BKKA&Eufw{{1~566ufw{{1~5668DKr5)rrrerurr r:rorr`)rrrr3)rrrrur<)rrr)rrrr)rrrr) rcrr9rrrrrrWr)rlrrXr1r2r^r_dadbrirb2rrr(s r3test_fix_fit_betazTestFitMethod.test_fix_fit_betats  HH' ( ::>>!!A>>1c5S!UA1a(1a&t< HH' ( ::>>!!>D1c5QS!UAAq!BAD)U$zz~~bQQq~IBfRT1VQR$BAD)B" j%**..!#aH HHZ j%**..!!AFj%**..!!A!Lj%**..!!A!L j%**..!aQ (r5ctjgd}tjj |\}}t |dt |dtjj |d\}}t |dt |dtjj |d\}}t |dt |dy)N)r`r`rrrrrrr`rrqrrr)rcrr9r^rrrs r3test_expon_fitzTestFitMethod.test_expon_fits HH- .[[__Q' US!UA[[__Qq_1 US!UA[[__QQ_/ US!UAr5c @tjgd}tj|dz }tjj |d\}}}t ||jdt|dt |tj|jdtjj |dd\}}}t |tj|tjdz dzjdt|dt|dtjj |dd \}}}t|d t|dt |tj|jdy) N)rrrYr8rr rrr~r)r:r`r)rfix_s) rcrrr9r!rrrtrrrr)rlrXlnxm1r;r^r_s r3test_lognorm_fitzTestFitMethod.test_lognorm_fits3 HH- .q1u !MM--aa-8sEuyy{7S!rvvejjl3%@!MM--aa-BsErww):Q(>'D'D'FG" $S!UA!MM--aat-DsEUD!S!rvvejjl3%@r5ctjgd}tjj |\}}t ||j t |tj|tjj |d\}}t |dt ||jtjj |d\}}t |dt |dtttjj|dtttjj|dy)N)rMrr\r rrrYrqryrN) rcrr9rrrrrrrWrrs r3test_uniform_fitzTestFitMethod.test_uniform_fits HH) *]]&&q) US!%%'"UBFF1I&]]&&qq&1 US!UAEEG$]]&&q&4 US!UBj%--"3"3QSAj%--"3"3QsCr5rMLEMMc >d\}}tjj||dd}tjj|d|}tjj|d|}t ||dd tjj|d| }t ||dd tjj|d | }tjj|d | }t ||dd tjj|d |}t ||dd t t tjj|dd|t t tjj|dddd|tjj|ddd|} | \} } } } t| | | ggdd}tjj|d}tjj|||\} } } t| |y)N)rr rZrrr)rr)rSrrrg)rTrr )rr)rr)rrr r`)rSrrrr)rSrrrr)rSrrr)rrr r4) r9rrrrrWrrr)rlrr1r2rXres_1res_2res_3res_4res_5aabbrssrs r3 test_fshapeszTestFitMethod.test_fshapess 1 JJNN1acN = qR7 qR7u5u= q6:u5u= qR7 qR7u5u= q6:u5u= j%**..!aO j%**..!aQv 7  qRa&IBBb"b\:. {{qs+[[__Ta_? BRr5ctj}|jdd}td}t t |j |fi|d|iy)Nr`rZ)rri) enikibenikir)r9rrr rWrr)rlrrMrr(s r3test_extra_paramszTestFitMethod.test_extra_paramssCxx!#x&t$i4F3FvFr5N)rrrrr0rrrrrrrrrrrrrrrrr;r5r3rr!s 1DA [[[(3=4=@ $3L5(n A(D$ [[ [[Xt}5$6$L [[Xt}5G6Gr5rcBeZdZdZdZdZdZdZdZdZ dZ d Z y ) TestFrozencBtjjdyr.r/rqs r3r0zTestFrozen.setup_methodr1r5ctj}tjdd}|jd}|jddd}t|||j d}|j ddd}t|||j d}|j ddd}t|||j d}|j ddd}t|||jd}|jddd}t|||j}|jdd}t|||j}|jdd}t|||j}|jdd}t|||j}|jdd}t|||j}|jdd}t|||jd}|jddd}t||t|j|jt|j|jy)Nrrr]rrer`)r9rrbrrjrrrr>rr7rtrArr1r2)rlrMrresult_frs r3rzTestFrozen.test_norms zzC0::d#$D4Xv&::d#$D4Xv&::d#$D4Xv&::d#$D4Xv&99T?4s3Xv&==?S1Xv&;;=t3/Xv&::<d#.Xv&::<d#.Xv&>>#$c2Xv&==#QD4Xv&VXXtvv&VXXtvv&r5cd}tj}tj|}|jd}|jd|}t|||j d}|j d|}t|||j d}|j d|}t|||j d}|j d|}t|||jd}|jd|}t|||j}|j|}t|||j}|j|}t|||j}|j|}t|||j}|j|}t|||j}|j|}t|||jd}|jd|}t||t|j|jjt|j |jj y)Nryrrerr`)r9rrbrrjrrrr>rr7rtrArr1rMr2)rlr1rMrrrs r3 test_gammazTestFrozen.test_gammaMs {{Q::d#$"Xv&::d#$"Xv&::d#$"Xv&::d#$"Xv&99T?q!Xv&==?QXv&;;=1Xv&::<!Xv&::<!Xv&>>#aXv&==#Q"Xv&VXXv{{}}-VXXv{{}}-r5ctjd}|jd}|jd|jd}t||y)Nr r`rr)r9r!rr)rlrm1rss r3test_regression_ticket_1293z&TestFrozen.test_regression_ticket_1293sHq! ]]1  V $]]1  Rr5cd}tj|}|jj|\}}t ||gddgd}tjj d|t |jj|dt jgd}tj|}|jj|\}}t ||gddgd}tjj d|t |jj|jjftjj|tjd}t|j|judD]}t j|}tj|}|j|j}}t |dtt j|t jd}tjj|\}}t||gdd gy) NrrrzrrVrrrru)r9rrMrrrbrcrr1r2r rrr)rlrrr1r2rv1s r3rzTestFrozen.test_abs  __q !ww##A&1aVb#Y'  A#RWW))!,q"&&k:  __q !ww##A&1aVb#Y'  Aq!bggii+U__-I-I!-LMoo$'( /A 1 A1%B44qA B  BKKN # 3A??//2DAq QFRI . /r5cJtttjdy)N rv_frozen)r r0r9r:rqs r3test_rv_frozen_in_namespacez&TestFrozen.test_rv_frozen_in_namespaces++[9:r5cftj}tt|dd|_t |jj tjjdj tjjd}|jd|y)Nr*rrr) r9rr r0rr get_statercrrr)rlrrndms r3test_random_statezTestFrozen.test_random_states/0!V((224YY**2.88: <yy$$T*  -r5cTtjdd}tjd}tjgdgdf}|||fD]}d|_|j d t j|}|j d }t j|}|j d }t|||jd |jd g} t| d | d t|j| d |j| d y) Ngdsz@g@e?r)rr r`rr8rLrrr4rurr ) r9rr}r>rrpickledumpsloadsrrrj) rlrpoissrEdistfnrGr0 unpickledr1medianss r3 test_picklingzTestFrozen.test_picklings zz,.AB b!""<+?+ABUF+ 4F"&F  JJAJ  V$A#B QIA&B R zz# c(:;G WQZ 0 GAJ/"wqz2 4 4r5c d}tjddd}tjdd5|j |ddd }tjj |d ddddd }dddt tj dd }|j |}tj j |dd}t ||y#1swYlxYw)Nc|Sror;rs r3rz$TestFrozen.test_expect..funcsHr5r`rrrr)rdivider T)rub conditionalr`r)r^r_rr r r)rr)r^)r9rrcrrrr})rlrgmgm_val gamma_valrop_val poisson_vals r3 test_expectzTestFrozen.test_expects [[1!1 - [[( ; IYYtaTYBF **4d./A4+II I  * MM! #mm**4d*B {+ I Is .s1qs r5rr`r]rr$rPc|Sror;rs r3rHz&TestExpect.test_norm..sr5r?r3cyrr;rs r3rHz&TestExpect.test_norm..rr5r^r_rr rcyrr;rs r3rHz&TestExpect.test_norm.. rr5Tr^r_rr r rM)r9rrrr)rlrrrr prob90prob90cs r3rzTestExpect.test_norms JJ  3!  DAq"- JJ  m!  <Aq"- ZZ^^Daq^ 1 ZZ^^Daq^ 1"";AQ2""MFC4**##KQaB204$6GR4r5c 0tjjdddd}t|ddtjjd dd d }t|d dtjj d dddd}tjj ddddd}tjjddd d ||d}t|ddtjjdddd||d}t|ddy)Nc|dz |dz zS)NUUUUUU@r;rs r3rHz&TestExpect.test_beta..s51U7(;r5rrr`)r)r^r_qq?rrPc|Sror;rs r3rHz&TestExpect.test_beta..sr5rNryr& r3rYr]r?cy)NrMr;rs r3rHz&TestExpect.test_beta..rr5)rYrYFr rcyrr;rs r3rHz&TestExpect.test_beta..rr5TrM)r9rrrr)rlrrr rr" r# s r3 test_betazTestExpect.test_betas JJ  ;'"#1  .Avr2 JJ  kRr  JAub1 ZZ^^D"baq^ 9 ZZ^^D"baq^ 9"".&Qr5)rrYrr rrPc|dz dzSNr r`r;rs r3rHz+TestExpect.test_hypergeom..)sadQYr5r$c|dz dzSr0 r;rs r3rHz+TestExpect.test_hypergeom...sQrTAIr5r)r)r^rr r cyrr;rs r3rHz+TestExpect.test_hypergeom..5rr5r)rOcyrr;rs r3rHz+TestExpect.test_hypergeom..:rr5T)r)r^rr r cyrr;rs r3rHz+TestExpect.test_hypergeom..?rr5r)r)rr )r9rrrrIrf) rlm_truev_truerrv_bounds prob_true prob_boundsprob_bcprob_bs r3test_hypergeomzTestExpect.test_hypergeom!sx..r2qb.A OO " ";[b " IAvr2 OO " "#6[') # +Avr2??))*=/:.0Q2*? Hfb9eoo))1b'2r1!)DHHJJ oo,,[{13b-B KB?//((;B,-"$)HGQ3'' ++,(4FAr2r5ctjjdddd}dtjjddz }t ||d tjjd ddd }t |dd y) Ncyrr;rs r3rHz)TestExpect.test_poisson..Err5r rF)r)rr r r`r$rPcyrr;rs r3rHz)TestExpect.test_poisson..Jrr5T)r9r}rrjr)rlr9 prob_b_trueprob_lbs r3 test_poissonzTestExpect.test_poissonCsymm**;Ta7<+>  ))!Q// KbA--&&{!37'9GQ3r5ctj}|jd}|jd|jd}t||dy)N)rrT)rur$rP)r9genhalflogisticrr)rlhalflogr(r,s r3test_genhalflogisticzTestExpect.test_genhalflogisticNsI''~~6~*F#~~6~*D$3r5cttjtjj ddttjtjj ddttjtjj ddttjtjj ddy)NruGz?cyrr;rs r3rHz/TestExpect.test_rice_overflow..]rr5)rH rTcyror;rs r3rHz/TestExpect.test_rice_overflow..^rr5cyNrr;rs r3rHz/TestExpect.test_rice_overflow.._rr5)r rcr=r9ricerbrrqs r3test_rice_overflowzTestExpect.test_rice_overflowXs  EJJNN3567 EJJ--k-HIJ EJJ--k-HIJ EJJ--k-HIJr5cd\}}tjjd|f}t|||dz z t j d|z z dtjjd|f|}t|||zdy) N)rwrc|Sror;rUs r3rHz(TestExpect.test_logser..dar5rTrMr}rc|Sror;rQ s r3rHz(TestExpect.test_logser..jrR r5r )r9rrrrcr)rlror^res_0res_ls r3 test_logserzTestExpect.test_logseras~3 ##Kqd#;QV rvvb1f~5E C ##Kqd#Dus{7r5cd\}}tjjd||f}tjjd||f}t|||z dt||dzz ||zdy)N)rrc|Sror;rs r3rHz)TestExpect.test_skellam..qsAr5rTc |dzSror;rs r3rHz)TestExpect.test_skellam..rrpr5rrr`)r9r1rr)rlrp2rrss r3 test_skellamzTestExpect.test_skellammsoB ]] ! !+RH ! = ]] ! !.Bx ! @BG%0RU BG%8r5c d\}}tjjd||f}t|t dt ||D||z z dy)N)rqc|Sror;rs r3rHz)TestExpect.test_randint..zr. r5c3 K|]}|ywror;rrs r3rmz*TestExpect.test_randint..|s5!A5s r}r)r9r:rrrfr)rlr)r*rs r3 test_randintzTestExpect.test_randintvsQBmm"";R95uR}55bA Or5cZtttjjddy)Nc |dzSror;rs r3rHz&TestExpect.test_zipf..s q!tr5r )r rsr9rerrqs r3 test_zipfzTestExpect.test_zipf~s ^UZZ%6%6#T +r5ctjjdd}tjjddddd}t||d y) Ncyrr;rs r3rHz/TestExpect.test_discrete_kwds..rr5r rTcyrr;rs r3rHz/TestExpect.test_discrete_kwds..rr5r r%)r)maxcount chunksize tolerancer$rP)r9r}rr)rln0n1s r3test_discrete_kwdszTestExpect.test_discrete_kwdssL ]] ! !+D ! 9 ]] ! !+D+/2"OBB/r5cd}dD]6}tjjd|}t|||d8y)NcH|dzd|dzzzd|dzzzd|dzzz|zS)NrrYrr~rr8r`r;rs r3 poiss_moment5z-TestExpect.test_moment..poiss_moment5s8q52b!e8#bQh.BE9B> >r5)rrrrr~)r9r}rr)rlrq rWm5s r3 test_momentzTestExpect.test_moments? ? ?B%%a,B B b 1 > ?r5cttjjdddttjjdddttjjdddttjjdd ttj jd d y) NrErMr]rvrYrV)rTru Ur)rr9rrrrXrqs r3test_challenging_cases_gh8928z(TestExpect.test_challenging_cases_gh8928s  ))b)>$2!IIOOD!4 #56H!I(*@*C" $)+A" $99>>&!,IIOOFA. ,.@A."3%@ >=r5c lttjjddt ddy)Nr`ir)rr9r} rjrrqs r3test_cdf_large_nczTestNct.test_cdf_large_ncs! aE%L91=r5zx, df, nc, expected)rrYrlgAs69)rfrrlgV1c^ttjj||||dyr)rr9r} rb)rlrXrr rQs r3test_pdf_large_nczTestNct.test_pdf_large_nc s!  aR0(Gr5N) rrrr~ r r r r r rrrr r;r5r3r{ r{ sTC2$  >,>6 [[2.+5  H  Hr5r{ c$eZdZdZdZdZdZy)TestRecipInvGausscRtjjdd}|dk(sJy)Nrr|rz)r9 recipinvgaussrbrs r3test_pdf_endpointz#TestRecipInvGauss.test_pdf_endpoints%    # #As +Cxxr5cptjjdd}|tj k(sJy)Nrr|)r9r rrcrras r3test_logpdf_endpointz&TestRecipInvGauss.test_logpdf_endpoints,""))!S1wr5cdtjjdd}d}t||dy)Nr?rug9V9s;rr~)r9r rjrrlrorQs r3test_cdf_small_xz"TestRecipInvGauss.test_cdf_small_xs-    # #D# .(8%0r5cbtjjdd}d}t||dy)NrruglH EJJNN1N3488:; EJJ--a2-67;;=>  EJJNN1N3488:;zz62 D!%%'(  q!,ejjnnQ.BQ (r5ctjj}t|djdt|ddj dy)Nrr r )rr)r2r)r9rM rrrr;rs r3 test_rice_rvszTestRice.test_rice_rvsOs8jjnnS2Y^^Q'S2F+116:r5ctjjtjdddtjddd}gd}t ||tjddd}tjj |dd}gd }t ||tjjj d tjdd d}gd }t ||y) NrY)g/ Ƹ?g[jNJ\?g ?g9LJ?g#O?gXx?glO?g٥a%?gVzӯ?gTQ+xQ?g?`J?go?gbu=?gIo|?g"Z6?rVr g@_@rr) g<~@gwd @gC?@gb 0@g` A@@g'NxP@g33-a@g4pv@g$F@ru)gJ-$@g+f4@gce*D>@g$D@gnHGI@grN@g< uQ@giffT@g9r[V@g3bXQY@gq xJ[@g`*DD^@g@`@gdAa@)r9rM rjrcrrrr8)rlrjcdf_exp probabilitiesrppf_exps r3test_rice_gh9836zTestRice.test_rice_gh9836TsjjnnRYYr33RYYr35KL O W% #q#. jjnn]En; L W%kk""3 "c2(>? ; W%r5N)rrrr r r r;r5r3r r 9s(*; '&r5r ceZdZdZdZdZy) TestErlangcBtjjdyr.r/rqs r3r0zTestErlang.setup_methodr1r5c tj5tjdtt tt j jddddgd}t j j|d}t jj|d}t||d dddy#1swYyxYw) Nrlrrr rr )rurMryr r~rr~) rprqrrrsrWr9erlangrrrr)rlr result_erlang result_gammas r3test_erlang_runtimewarningz%TestErlang.test_erlang_runtimewarnings $ $ & D  ! !'> : .,,**CQaa I (D!LL,,Ta,8M ;;??4A?6L M.scale_mles,FFD4KA-.!c$i-@RG Gr5rr|rq)r9r$rrr)rlrr4rr scale_expectr^r_s r3rozTestRayleigh.test_fits~~!!sy!I H!w/ ^^''7'; US'"UL)^^''R'8 UUB ^^''- UUIdC01r5rH rwg̡=E?g@1d?c|tjjd||}ttj|y)Nrrd)r9r$rr)rlrr4rs r3 test_fit_comparison_super_methodz-TestRayleigh.test_fit_comparison_super_methods- ~~!!sy!I%ennd;r5c6ttjyro)rr9r$rqs r3rzTestRayleigh.test_fit_warningssENN+r5ctjjd}d\}}}tjj ||||}tjj |\}}|tj|ksJtjj ||\}}|tj|ksJ||k(sJy)Ni)r6rrrrq)rcrrr9r$rrr) rlrr^r_rrrrrs r3test_fit_gh17088zTestRayleigh.test_fit_gh17088sii##C('UDnn  e$S I^^'', $$$"^^//E/B$$$E!!!r5N) rrrr0rrrrrror rr r;r5r3r r s"0" [[03K3K3MN2N2. [[0D$<4> 3K3MN<N< , "r5r c>eZdZdZdZdZejjdgddZ ejjdgdd Z ejjdd d gd Z ejjdd dgdZ y) TestExponWeibcd}d}d}tjj|||}tjj|||}t ||gddgy)NrVrMrg:23W+g~`9k)r9 exponweibrbrr)rlrXr1rrors r3test_pdf_logpdfzTestExponWeib.test_pdf_logpdfsY    OO  1a (%%aA.D /1DE Gr5cntjddd}d}d}tjj |||}tj j ||}t ||tjj|||}tj j||}t ||y)Nrrrr rZ)rcrr9r rb weibull_minrrrlrXr1rrorQrs r3 test_a_is_1zTestExponWeib.test_a_is_1s KKB "   OO  1a ($$((A.8$%%aA.$$++Aq1h'r5cjtjddd}d}d}tjj |||}tj j |}t ||tjj|||}tj j|}t ||y)Nrr rY)rcrr9r rbr^rrr s r3test_a_is_1_c_is_1z TestExponWeib.test_a_is_1_c_is_1s KKAr "   OO  1a (;;??1%8$%%aA.;;%%a(h'r5z x, a, c, ref))r r|rg=J ?)r6r|rg$+PR>)rr|rg ><)rr|rggX.X:)r?rgRy9)rr rg'vR0=)g_QPrrgQ: [[ 5 - -* [[ 4..  [[^AGIJ1J1  [[^IFHI0I0r5r ceZdZdZdZy)TestFatigueLifec`tjjdd}t|ddy)Nrhr|X9rr~)r9rrrrs r3 test_sf_tailzTestFatigueLife.test_sf_tailRs)     ,0u=r5cdd}tjj|d}t|ddy)Nr r|rhrr~)r9rrr)rlrorxs r3 test_isf_tailzTestFatigueLife.test_isf_tail`s+ !    ! !!S )5u-r5N)rrrr r r;r5r3r r Ps  >.r5r ceZdZdZdZej jdddgdZdZ ej jdd d gd Z y ) TestWeibullc\tjjdd}t|dyr)r9r rrr s r3rzTestWeibull.test_logpdfis$    $ $Q *Qr5cXd}d}d}tjj|||}t|t j ddz tjj |||}t|dt jdz tjj|||}t|tjd tjj|||}t|t jtjd tjj|||}t|t j dtjj|||} t| dtjjddd}t|t j d tjjddd} t| d d }tjj|||}t|t j ddz tjj |||}t|dt jdz tjj|||}t|t j dtjj|||}t|dtjj|||}t|tjd tjj|||} t| t jtjd tjjd dd}t|tjd  tjjd dd} t| t jtjd  y) Nrryrrrrr3r`rrQg& .gCe)r9r rbrrcrrrrjrrrrr weibull_max) rlrXr1r2ror-rlcrGr s r3test_with_maxima_distribz$TestWeibull.test_with_maxima_distribns?.       ! !!Qa ! 0266%=?+    % %a! % 4EBFF1I-.    ! !!Qa ! 0GMM%001    % %a! % 4BFFGMM%$8#89:    AQ /266%=)    $ $Q $ 3E"    Qa 0266$<(    $ $R! $ 4D!     ! !!Qa ! 0266%=?+    % %a! % 4EBFF1I-.    ! !!Qa ! 0266%=)    % %a! % 4E"    AQ /GMM%001    $ $Q $ 3BFFGMM%$8#89:     3GMM*@AAB    $ $UAQ $ 7BFFGMM2H$I#IJKr5r_rMrVcntjj|dz|dzd|}t|dy)Nrrrrg>)r9r rrrs r3rzTestWeibull.test_delta_cdfs;"!!,,U3Ya38-:56r5ctjjd}d\}}}tj|||}|j d|}tjj |dd\}}} tjj |dd\} } } || cxk(rdk(sJJ|| k7sJtjj |ddd \} }}|dk(sJtj| ||}|jd }tj|tj|f}t||y) Nl>)r`r1rurZrrrrrrrrr) rcrrr9r rrrr8r)rlrrr^r_rMrc2rrc3rrc4rrrrr~s r3 test_fit_minzTestWeibull.test_fit_mins2ii##$78# 3  C/hhCch2!,,00c0BD& ,,00c0BD&t q     Rxx!,,00a$0OD&{{!!"dF3kk$k'ggclEJJsO+S!r5r$)r6r r)rrgq뮕qH)cttjj|||dttjj |||dyrJ)rr9r rrr(s r3rzTestWeibull.test_sf_isfsB )),,Q2CeD))--c15quEr5N) rrrrr rrrrr rr;r5r3r r gsu RLh [[WsCj1727("< [[[+J,D+EFFFFr5r ceZdZdZdZy) TestDweibullc2tjjd}d|jddz}tj j |}tjj |tjdz }t||dy)Nq>~).rYrZrrur}r~) rcrrrr9dweibullrAr rr)rlrrrr~s r3rjzTestDweibull.test_entropyssii##$78  2 . .nn$$Q'''*RVVC[8Su-r5c6tjjd}d|jddz}d|j z}t j j||}dt jj||z}t||dy)Nr rYr rrur}r~) rcrrrrr9r rr r)rlrrrXrr~s r3rzTestDweibull.test_sf sii##$78   , ,  nn1%E%%((A..Su-r5N)rrrrjrr;r5r3r r s  ..r5r cBeZdZdZdZdZdZdZdZdZ dZ d Z y ) TestTruncWeibullchtjjddgddd}t|ddgy)NrVryg)\(?gףp= ?rz)r9truncweibull_minrbrr s r3test_pdf_boundsz TestTruncWeibull.test_pdf_boundss0  " " & &Sz3d CQc #r5ctjjdddtj}t |dtjjdddd}t |dy)NryrMrzr g~?)r9r rrcrrrr s r3rzTestTruncWeibull.test_logpdfsU  " " ) )#sC @Q  " " ) )#sC =./r5chtjjddgddd}t|ddgy)NrzrMryrV)r9r rrr s r3test_ppf_boundsz TestTruncWeibull.test_ppf_bounds%s0  " " & &Sz3S AQc #r5cgd}tjj|ddd}tjj|ddd}t ||yN)rzrVrerurrrMryrzr)r9r rrjrrlrxrXq_outs r3test_cdf_to_ppfz TestTruncWeibull.test_cdf_to_ppf*sI 0  " " & &q"b" 5&&**1b"b95!r5cgd}tjj|ddd}tjj|ddd}t ||yr )r9r rrrr s r3test_sf_to_isfzTestTruncWeibull.test_sf_to_isf0sI 0  " " & &q"b" 5&&))!RR85!r5c d d d fdtjjd }t|dtjjd }t fd \}}t ||tjjd }t fd  \}}t ||tjjd }t fd  \}}t ||tjjd } t fd  \} }t | | y)NryrMrcT||ztjj|zSro)r9r rb)rXrnr1r2rs r3xnpdfz)TestTruncWeibull.test_munp..xnpdf;s)a4..221aA>> >r5rr c|dSrr;rXr s r3rHz,TestTruncWeibull.test_munp..B a r5r`c|dSror;r s r3rHz,TestTruncWeibull.test_munp..Fr r5rc|dSrL r;r s r3rHz,TestTruncWeibull.test_munp..Jr r5rc|dS)Nrr;r s r3rHz,TestTruncWeibull.test_munp..Nr r5)r9r rrrr)rlrr m1_expectedrrs m2_expectedm3 m3_expectedrt m4_expectedr1r2rr s @@@@r3 test_munpzTestTruncWeibull.test_munp6s#    ? # # * *1aA 6R  # # * *1aA 63Q: QK(  # # * *1aA 63Q: QK(  # # * *1aA 63Q: QK(  # # * *1aA 63Q: QK(r5c 8d}d}d}tjdtjdtjdtjdz zz }tj j ||||}t|dtj j||||}t|tjd tj jd|||}t||tj j||||}t|dtj j||||} t| tjd tj jd|||} t| |y)NrMrryr rur) rcrrrr9r rjrrrrrr) rlr1r2rx_medrjr rrr rs r3test_reference_valuesz&TestTruncWeibull.test_reference_valuesQsB   BFF3"rvvbz/0B)C#CDDE$$((1a8S!  # # * *5!Q :RVVBZK($$((aA6U#  # # & &uaA 6C  # # ) )%Aq 9RVVBZK($$((aA6U#r5cd}d}d}tj}d}tjj |||}tj j |||||}t ||tjj|||}tj j|||||} t || tjj|||} tj j|||||} t | | tjj|||} tj j|||||} t | | tjj|||}tj j|||||}t ||tjj|||}tj j|||||}t ||tj jdd||d}t |tjd tj jdd||d}t |d y) Nrryrzrrr3r`rr) rcrr9r rbr rrrjrrrr)rlrXrr1r2r_rop_truncr-lp_truncrj cdf_truncr lc_truncrGs_truncr ls_truncs r3test_compare_weibull_minz)TestTruncWeibull.test_compare_weibull_minis1    FF    ! !!Qe ! 4((,,Q1au,E7#    % %a% % 8))00Aq!50IH%##Aq#6**..q!Q.G Y'    % %a% % 8))00Aq!50IH%    AU 3((++Aq!Qe+D7#    $ $Q $ 7))//1a%/HH%  " " % %b!Q % ;266$<(  # # ) )"aAQ ) ?D!r5cd\}}}tj||d}tjj ||||}tjj ||||}tj j ||tj j ||z }tj j |||z }tj j ||tj j ||z |z } tjj||tjj|| y)N)r|rerrZ) rcrRr9r rbrjr rr) rlrr1r2rXrrorrrqs r3test_compare_weibull_min2z*TestTruncWeibull.test_compare_weibull_min2s"1a KK1c "%%))!Q15%%))!Q15  $$Q*U->->-B-B1a-HH  $$Q*T1!!%%a+e.?.?.C.CAq.II4O ""4. ""4.r5N) rrrr rr r r r r r r r;r5r3r r s0$ 0$ " " )6$0'"R/r5r c`eZdZdZdZej jdgddZy) TestRdistctj}gd}t|j|j |dd|dy)Nrg@rrP)r9rdistrrjr)rlr rFs r3test_rdist_cdf_gh1285zTestRdist.test_rdist_cdf_gh1285s5$FJJvzz&%'@%H"A /r5ctjddd}d}tdtj|dz |dz j |dzdz ztj |j |y)NgGzrrYg@rur`r )rcrRrr9rrbr )rlrXrs r3test_rdist_betazTestRdist.test_rdist_betasd KKtR ( C 1Q3! 4 8 8!a% CC!KKN..q1 3r5r$))rig?)rVg;|bZ?)ruig79)riUg޻S/c\ttjj|||dyrJ)rr9r rr(s r3 test_rdist_sfzTestRdist.test_rdist_sfs  q!,c>r5N) rrrr r rrrr" r;r5r3r r s7/3 [[ ??r5r c*eZdZdZdZdZdZdZy) TestTrapezoidcHgd}|D]}d|dg}ttjj|||tjj||ttjj |||tjj ||y)N)rrwrur rr )rr9rrbtriangrj)rlmodesmoderXs r3test_reduces_to_triangz$TestTrapezoid.test_reduces_to_triangs  ;DD! A  3 3AtT B % 0 0D 9 ;  3 3AtT B % 0 0D 9 ;  ;r5cRtjddd}ttjj |ddtj j |ttjj|ddtj j|y)Nrr rY)rcrRrr9rrbrrjrs r3test_reduces_to_uniformz%TestTrapezoid.test_reduces_to_uniformsl KK1b !EOO//1a8%--:K:KA:NOEOO//1a8%--:K:KA:NOr5c ttjjddddttjjddddttjjddddttjjddddttjjd ddd ttjjdddd ttjjd ddd ttjj d ddd ttjj ddddttjj ddddttjj d dddttjj ddddy)Nrr`r rurrrJrMrVg?rrr rrg?)rr9rrbrjrqs r3 test_caseszTestTrapezoid.test_casessfEOO//1a8!<EOO//1a8!<EOO//Q</ 1EOO//S#>/ 1 EOO//S#>FEOO//S#>EEOO//S#>FEOO//S#>HEOO//S#>FEOO//S#>DEOO//S#>HEOO//S#>Dr5cV d\ z z z z z z z f\}}}}d z z z z fd}|d}|d|dzz }d z z z z z z z z tjd z z z zz}ttjj |||||dttjj |||||dttjj|||||dttjj ddd d d dttjj ddd d ddttjj ddd d d dy) N)rrr`rr`c|dzz|dzzz z z |dzz|dzzz z z z z|dzz |dzz S)Nr`r r;)rnr1r2rdris r3rz6TestTrapezoid.test_moments_and_entropy..momentsn!ac(Q1X-!A#6!Hq1Q3x/AaC89:qSqS" #r5r rurrPrrr)rr)rcrrr9rrr7rA)rlrrZ r^r_rrr7rAr1r2rr0 ris @@@@@r3test_moments_and_entropyz&TestTrapezoid.test_moments_and_entropys" 1acac]QqSQqSM1acABU 1QqM # # ayQi$'!1Qq/QqSU1W-sac!eAg0GGEOO00ReD " .EOO//BUC -EOO33BCG#R 1 EOO00Ar1=r2NEOO00Ar1=q"MEOO//1b!r5N)rrrr) r+ r- r1 r; r;r5r3r$ r$ s;P E(M6?r5r$ ceZdZdZy) TestTriangcJtjd5ttjj dddttjj dddttjj dddttjj dddttjj dddttjj ddd ttjj dddttjj ddd ttjj dddttjj dddttjj ddd ttjj ddddddy#1swYyxYw) NraiserurryrurMr rzr`rre)rcrrr9r& rbrjrqs r3test_edge_caseszTestTriang.test_edge_cases sg [[W % 6 ))!Q/ 4 ))#q12 6 ))!Q/ 4 ))!Q/ 3 ))#q12 6 ))!Q/ 3 ))"b12 6 ))#r2D 9 ))#r2C 8 ))"b12 6 ))#r2D 9 ))"b11 5 6 6 6s G9HH"N)rrrr@ r;r5r3r= r= s6r5r= ceZdZejj dddgdZejj dgddZdZd Z y ) TestMaxwellr)rgCR5&.)rwg7q?cZttjj||dyr)rr9maxwellrr2s r3rzTestMaxwell.test_sf8s  ((+Su=r5rM))rg1!@)g?g?)gr5cbd}tjjd}t||dy)Ngi6urrr~)r9rD rr)rlr~rs r3rzTestMaxwell.test_logcdfHs'%%%a(%0r5cbd}tjjd}t||dy)Ng_OԺr%rr~)r9rD rr)rlr~rs r3rzTestMaxwell.test_logsfNs'% ##D)s/r5N) rrrrrrrrrrr;r5r3rB rB 3sf  [[X::<=>=>  [[X:;? ;?1 0r5rB ceZdZdZdZy) TestMielkecd\}}ttj||jdtj ttj|djdtj t t jtj|djdy)N)g rh@gv?r rMr)rr9mielkerrcrr r=)rlrUrGs r3r#zTestMielke.test_momentsVsz1U\\!Q'..q1266:U\\!S)003RVV< ELLD188;<=r5ctjddd}d\}}ttjj ||||z tj j |||y)NrwrZr6)g@gHzG@)rcrRrr9burrrbrK )rlrXrUrGs r3test_burr_equivalencez TestMielke.test_burr_equivalence]sO KKc2 &1 q!QqS15<<3C3CAq!3LMr5N)rrrr#rN r;r5r3rI rI Us >Nr5rI c$eZdZdZdZdZdZy)TestBurrc tjddgtjddgtjddgtjddgtjddgtjddgtjd d gg}|Dcgc]#\}}}|j|j g|%}}}}|Dcgc]\}}}| }}}}t |||Dcgc]#\}}}|j|j g|%}}}}|Dcgc]\}}}tj|}}}}t ||ycc}}}wcc}}}wcc}}}wcc}}}w) N)r r )rur`)r r )r`rurrurM)r r`ry) r9fiskrM burr12rbr1rrrcr)rlrrrrrrrs r3test_endpoints_7491zTestBurr.test_endpoints_7491ds7ZZq ! ZZ1 % ZZ # ZZ1 % \\8S ) \\63 ' \\63 ')9=== E1vrvvbdd#U#==9=>>!5UI9>>!#w/;?@@<2uayryy&&@@AEFF)=UI266)$FF!#w/ >>AFs(D?9 E(E  Ecd\}}tj||j\}}d\}}t||t||y)N)rNr)g4U?g&MI?)r9rM r)rlrr0 rvariancemean_hc variance_hcs r3test_burr_stats_9544zTestBurr.test_burr_stats_9544xsI1Aq)//1h Gg&+.r5c<d\}}tj||j\}}ttj|ttj|d\}}tj||j\}}ttj |ttj|d\}}tjj tjgd||\}}}}ttj|ttj|ttj|ttj|d\}}tjj gd||\}}}}ttj |ttj|ttj|ttj|d\}}tjj gd||\}}}}ttj |ttj |ttj|ttj|d\}}tjj gd||\}}}}ttj |ttj |ttj |ttj|d\}}tjj gd||\}}}}ttj |ttj |ttj |ttj |y)N)rur)rrr)r|r)r1r)r/r)r9rM r rcrWr=rr) rlrr0 rrV e1e2e3e4s r3test_burr_nan_mean_var_9544z$TestBurr.test_burr_nan_mean_var_9544s1Aq)//1h"#1Aq)//1h D!""#1))"((<*@!QGBB    1)),1=BB B    1)),1=BB B  B   1)),1=BB B  B  B  1)),1=BB B  B  B  B r5cxd\}}gd}gd}ttjj||||dy)N)rNr)rVrrr/)g+&?gI$_@gKT@gؗVArr~)rr9rM r)rlrr0 rxr~s r3 test_burr_isfzTestBurr.test_burr_isfs61 &# q!Q/5Ar5N)rrrrT rY r_ ra r;r5r3rP rP cs0( /(!TBr5rP ceZdZejj dddgdZdZejj dgddZy ) TestBurr12zscale, expected)rMgd~)r1gR톇T chtjjdddd|}t||dy)NgjAgjArrrrr~)r9rS rr)rlr_rQrks r3rzTestBurr12.test_delta_cdfs/( ''S!Qe'Dxe4r5c0d\}}tjdz }dtjdzdz z }tjdzd|dzzz }tj}||||g}tj||jd }t ||d y) Nrarr r`rlrrh rrrr~)rcrdrr9rS r) rlrr0 rr7r8rr~rs r3test_moments_edgezTestBurr12.test_moments_edges 1uuQw"%%(2+ouuaxCH%66S$)ll1a &&v.Su-r5z p, c, d, ref))rrruggx4/@)gҶOɃ;rrugI8aS@)rre#gj\/@)g#aMR/rerg g!GAcbtjj|||}t||dyr)r9rS rr)rlrorr0 r~rXs r3test_isf_near_zerozTestBurr12.test_isf_near_zeros( LL  Q1 %3U+r5N) rrrrrrrrf ri r;r5r3rc rc sa [[.<;=>5>5( .  [[ 0,,r5rc c eZdZgdZgdZgdZejeeefZgdZ ddddd ejgZ gd Z e eee e e eZd d ddejd fddejdfddejdfgZej&j(dZej&j,dZej2j5eZdZeej2j?ee5Z e!jDe Z#dddej&jIde#ddZ%ej&jIde#ddZ&ej&j,ej&jOdej&jIde#ddZ(ej&j(dZ)ej&j,dZ*ej&jIded Z+ej&j,ej&jOdd!Z,ej&j,d"Z-d#Z.d$Z/d%Z0y#1swYjxYw)&TestStudentizedRange)gQ1@g33333F@g ףp=*K@gHzM@g/$@g~j!@g33333$@g{Gz&@gh|?5 @gQ8@g&1@g|?5@g@gOn@g!rhm@gB`"@rggʡEs@g|?5^@g/$@gV-@g/$@gF@g?5^I @)gRV@gffffffl@gp@gr@gʡ @gHzG/@gQ82@gQ3@g!rh@g@g +@gʡEs @gjt@gB`"[@g@gnJ@gV- @gFx@gsh|?@g+N@g/$ @g @g@gGz@)gfffff"@ii i gHzG2@g(\A@gQC@gfffffE@g @gNbX9"@gHz$@g(\&@g-@gn@@gw/@g= ףp @gJ +@g-'@gn@gHz@gV-@gnJ@g$@g/ݤ@)r3rrr rrYrx)r`rr$r)rVri)#gupm1f?)r rYrg?<-=A?gv"?rgd暕?ga-A?c|jD]:\}}|\}}}tjj|||}t ||d<y)Nrr~)rr9studentized_rangerjr)rlpvkrx p_expectedrrUres_ps r3test_cdf_against_tablesz,TestStudentizedRange.test_cdf_against_tables sKii :FC" J1++//1a8E E:D 9 :r5c|jD]:\}}|\}}}tjj|||}t ||d<y)Nrr~)rr9rn rr)rlro q_expectedrorrUres_qs r3test_ppf_against_tablesz,TestStudentizedRange.test_ppf_against_tables sJ#yy :OCGAq!++//1a8E E:D 9 :r5z&data/studentized_range_mpmath_ref.jsonN case_resultcdf_datac|d}|d}|d|d|df}tjj|}t|||d|dy Nsrc_case mp_resultrxrUr expected_atol expected_rtolrg)r9rn rjrrlrw r{ r| qkvrs r3test_cdf_against_mpz(TestStudentizedRange.test_cdf_against_mp+ `z* , smXc]HSM9%%))3/Y%o6%o6 8r5pdf_datac|d}|d}|d|d|df}tjj|}t|||d|dyrz )r9rn rbrr s r3test_pdf_against_mpz(TestStudentizedRange.test_pdf_against_mp6 r r5z+intermittent RuntimeWarning: invalid value. moment_datac|d}|d}|d|d|df}tjd5tjj|}dddt ||d|d  y#1swYxYw) Nr{ r| rrUrrrr} r~ rg)rcrr9rn rr)rlrw r{ r| mkvrs r3test_moment_against_mpz+TestStudentizedRange.test_moment_against_mpA sz* , smXc]HSM9[[ * 7))00#6C 7 Y%o6%o6 8 7 7s A**A3cd\}}ttjjdtj ||f}t |ddy)NrrYrrTr )rr9rn rbrcrr)rlrUrrs r3test_pdf_integrationz)TestStudentizedRange.test_pdf_integrationR s=15**..266AGA"r5cd\}}tjddd}tjj |||dd}tjj |||}t ||}t||dy) Nr rrYrw)stepr rr~)rcrr9rn rjrbrr)rlrUrrXy_cdf y_pdf_rawy_pdf_cumulatives r3test_pdf_against_cdfz)TestStudentizedRange.test_pdf_against_cdfY sv1 IIa$ '''++Aq!4QR8++//1a8 / 1= (%d;r5 r_case_resultc|\}}}}tjd5tjj |||}dddt |y#1swYxYw)Nrr)rcrr9rn rjr)rlr rxrUrr_resrs r3test_cdf_against_rz'TestStudentizedRange.test_cdf_against_ri sV'1a [[ * 7))--aA6C 7U# 7 7s "AAc~tjd5tjj ddgddgddg}dddt j d tjtd 5tjj dddggd dddy#1swYixYw#1swYyxYw) Nrrr r`rrrYrr z...could not be broadcast...r)rYrrO) rcrr9rn rrr;rrrrs r3test_moment_vectorizationz.TestStudentizedRange.test_moment_vectorizationq s[[ * H''--q!fq!fr2hGA H & ]]:-K L C  # # ) )!aV\ B C C  H H  C Cs(B'8&B3'B03B<c`t5}tjd5|jtt j jgd\}}}}ddddddtt j jy#1swY;xYw#1swY?xYw)Nrrr) r rcrrKrr9rn rjr _argcheck)rlr^rUrrs r3test_fitstart_validz(TestStudentizedRange.test_fitstart_valid s   GCX)F G JJ) *11;;IFKAr1a G G ''11!R89  G G G Gs"B$ Zd>%%))!R8,,00B> Zd>r5c0tjjddd}tjjddd}tjjddd}ttt ||ddt ||ddtjj ddd}tjj ddd}tjj ddd}ttt ||ddt ||ddy)NrrYrr irorg)r9rn rbrWAssertionErrorrrj)rlrr res_sanitys r3test_df_cutoffz#TestStudentizedRange.test_df_cutoff s%%))!R8,,00B> ,,00B> nosJd , JTE%%))!R8,,00B> ,,00B> nosJd , JTEr5c|d\}}}tjj|||}t|dd|dk\sJy)N)gaRA@riSrrr)r9rn rr)rlrxrUrros r3 test_clippingz"TestStudentizedRange.test_clipping s@.1a  # # & &q!Q /15)Av vr5)1rrrq05q01q001rcrnqspsrvskslistr r(rr_datarrrrr rrv ospathdirnamer path_prefix relative_pathopenrTfilejsonrpregenerated_datarr r xfail_on_32bitr r r r r r r r r r;r5r3rk rk s 'C  'C  (D c4( )B B QBRVV $B B GBB', -D *( Arvv() Arvv() B)* F [[::  [[:: ''//(+Kg}XEQ=gѭEG,,RVVS9:;..rvvs;<=++BFFC89:,,RVVS9:;//<=>,,RVVS9:;,,RVVS9:;#<<Fa0 XXemm''d': ;Fa0 XXemm''d'; H!4)99s :5IIctjjd}tjj d|}tjj |}d}t||dy)Ni rZr)g ףp= ?gʡE?r rP)rcrrr9rrrr)rrrrQs r3test_regression_ticket_1530r ~!sT ))   'C ,,  #  6C \\  c "FH!4r5ctjjd}|jd}dD]C}tj j ||z\}}t||dt|ddEy)Nrr)rg6ArMrr|)rcrrr,r9rrr)rrXoffsetr^r_s r3test_gh_pr_4806r !sf ))   %C " A'.\\%%a&j1 UV#.s-.r5c|ttjtjj ddy)Nr>rJ)r rcr=r9r}r3r;r5r3test_poisson_logpmf_ticket_1436r !s$ BKK ,,T37 89r5czddg}|D]2\}}tjj|d}t||4y)aTest the powerlaw stats function. This unit test is also a regression test for ticket 1548. The exact values are: mean: mu = a / (a + 1) variance: sigma**2 = a / ((a + 2) * (a + 1) ** 2) skewness: One formula (see https://en.wikipedia.org/wiki/Skewness) is gamma_1 = (E[X**3] - 3*mu*E[X**2] + 2*mu**3) / sigma**3 A short calculation shows that E[X**k] is a / (a + k), so gamma_1 can be implemented as n = a/(a+3) - 3*(a/(a+1))*a/(a+2) + 2*(a/(a+1))**3 d = sqrt(a/((a+2)*(a+1)**2)) ** 3 gamma_1 = n/d Either by simplifying, or by a direct calculation of mu_3 / sigma**3, one gets the more concise formula: gamma_1 = -2.0 * ((a - 1) / (a + 3)) * sqrt((a + 2) / a) kurtosis: (See https://en.wikipedia.org/wiki/Kurtosis) The excess kurtosis is gamma_2 = mu_4 / sigma**4 - 3 A bit of calculus and algebra (sympy helps) shows that mu_4 = 3*a*(3*a**2 - a + 2) / ((a+1)**4 * (a+2) * (a+3) * (a+4)) so gamma_2 = 3*(3*a**2 - a + 2) * (a+2) / (a*(a+3)*(a+4)) - 3 which can be rearranged to gamma_2 = 6 * (a**3 - a**2 - 6*a + 2) / (a*(a+3)*(a+4)) )rM)rurrzr)ry)gUUUUUU?r' g^cQg333333rrN)r9rr)rPr1 exact_mvskrs r3test_powerlaw_statsr !sG>, = ?E4 :~~##Av#6!$ 34r5c\tjjdd}t|dy)Nrr rz)r9rrrros r3test_powerlaw_edger !s" a#ACr5cvtjjdd}t|dtjj dgd}t|t j ddgtjjdgd}t|t j dt j gy)Nrr rz)rerMrrM)r9r-rrrbrcrr s r3test_exponpow_edger !s a#AC 1./ARVVS#&' a!12ARVVS266'*+r5c^tjjddd}t|dy)Nrr rM)r9gengammarbrr s r3test_gengamma_edger !s$ 1a#ACr5za, c, ref, tol))g`6Ar g2j!@r})rr ggA@r})rr rr})rr g#@r)g`FArgI~mr})gl$W}Lrg.I#Ur}c\ttjj||||yr)rr9r rA)r1rr~rMs r3test_gengamma_extreme_entropyr !s!"ENN**1a0#C@r5ctjjddd}|dk(sJtjjddd}|tj k(sJy)Nrr rrz)r9r rbrrcr)rors r3!test_gengamma_endpoint_with_neg_cr !sO 1a$A 8O8 >> Ar *D BFF7??r5ctjjddd}t|dtjjddd}t|dy)NrrJrMg>rYgqq?)r9r rrr s r3test_gengamma_munpr !sF Rb)A:& RR(A6"r5c\tjgd}tjd5t5}|j t d|j t dtjj|ddddddy#1swYxYw#1swYyxYw)N)0g>X*ȿgPix#?g=?g&^?goϿg뵏˿gO_ZQ?g\?g~?g)/?gRܶ?g핚οgH߃[g?g S"gm_ пg7k?g#BF?g KU= ?gT?gZg[Qs?g2?g6Hwƭ8?g*- ?ga]?g'?g޻?g?J_?g~sw?g0FfͿgg"@ӿg?%:˿g&zM?g?Gg F?g~,g HgW2ҿgTzy?gwm ǿg@gW=ֿg 't?g".v1glg.Hꮿg,?g*˿rrz:The maximum number of subdivisions .50. has been achieved.z-floating point number truncated to an integer) rcrrr rKrrsr9r?r)r0 r^s r3test_ksone_fit_freezer !s  / 0A X &   C JJ)# $ JJ~F H KKOOA     s# B"A BB"B B""B+c Ttjttddd }gd}t t j j||dt t j j|dzj|dt j j|dzd z j}tjt j j|t j j|z }t ||d y) Nrrl r)gDB.g8_$g%`OAgjhwHRgWMB@v`g7VY}igۦx\Arg xg#g/dg3$gegd)gNq{3g يGǓgr 4g37' gfFg?dJgضg2, gm%gӅJgz;pg ɿ{gk2gij<%giVSͶgBR4g Q/Mr%ry+=y|=r) rcrr rrr9rrrealimagrr)rXrQderivderiv_expecteds r3test_norm_logcdfr "s Dq#q)* ++A0HEJJL''*H4@EJJL''F 388(NZZ  q6z *5 0 6 6EVVEJJ--a05::3D3DQ3GGHNE>6r5ctjgd}tjgd}tjj |}t ||dy)N)gMb{Gzg{Gztg~jtX)g#]g~6UZZ^^Aryyc':A>B""1biiS&91=>  BKK  # # %&  "Mg~6UZZ^^E1b115 ))%B79KLMM>>MMsBE&,A1E2&E/2E;zmethod, expectedrjg u%>g ;Q=rbggRz\R>rgʎK$/gԆX1rgfHu@ge:@cjttj|dddgd}t||dy)NrVrrrY)r rr}r)r'r9r r)rrQrs r3test_ncx2_zero_ncr "s/ )WUZZ (!QB ?FFH51r5ctjjddd}tjjdd}t ||dy)NrYrr )rr r)rrr}r)r9r rrr)rrQs r3test_ncx2_zero_nc_rvsr "s>ZZ^^raa^ 8Fzz~~!~4HFH51r5cdtjddz}ttjj dd|dy)NrYrrr rr r)rcrrr9r rj)r s r3test_ncx2_gh12731r "s4 RYYq"  Bb115r5ctjgd}d\}}tjj |||}gd}t ||dy)N) gю] @gj%@gb y/7@gH@gIZ@g Xl@g'/2?8@gݰmА@gU @gy]`'@g@g*\@g48c@)rgh?8@r ) rMrMrMrMrMg?gy[qD?rzrzrzrzrzrzrr)rcrr9r rr)rXnurr sf_expecteds r3test_ncx2_gh8665r "sM " #A %GB qRC (B'K B %0r5c d}d}tjtjj d||tjj d||d}tjj |||}tj j |||ztjd|zd|zz}t||d y) Ni,irrrr r`rrr) rcrRr9r rrbrrr)rr rXncx2_pdf gauss_approxs r3test_ncx2_gh11777r "s B B EJJNN5"b1JJNN5"b1u >Azz~~aR(H::>>!R"Wbgga"fq2vo.FGLHl6r5zx, c, expected))r`r g|1q?)r`r`g~?)rhr V<3T1=)7yQCr u lY<)rhgvHGBg^b!*1=)rrrJgS?c^tjj||}t||dyNrx)r9 foldcauchyrrrXrrQrs r3test_foldcauchy_sfr% "s(     Q "BB%(r5r))r`g?)rhr )r r )g6ްPg8R#/c\tjj|}t||dyr" )r9rErr)rXrQrs r3test_halfcauchy_sfr' "s&     Q BB%(r5z p, expected))g?g*wӄZ>)333333?gN9?)rurM)rwg8<,O@)rg:B)gl ׶w/gMb}[PcZtjj|}t||yro)r9rErr)rorQrXs r3test_halfcauchy_isfr* #s$ QAAx r5chtjdd}t|jddy)Nrr r)r9r'rrj)rs r3test_foldnorm_zeror, #s$  #BAr5))r`r gwo {?)rr gGd-P/)rYr8gof?)r~r8g Oul";c^tjj||}t||dy)Nr)r9r'rrr$ s r3test_foldnorm_sfr. #s&   1a BB%(r5ctjjgddd}tjjddgdd}td|D}t||tjjgd}tjjddg}td |D}t||y) N)rzrurMr rurMc3bK|]'}tjtj|f)ywrorcrGrr` s r3rmz-test_stats_shapes_argcheck../#s!8q"%% *8-/)r`r3rr`r3c3bK|]'}tj|tjf)ywror1 r` s r3rmz-test_stats_shapes_argcheck..5#s!8q"%%266 *8r2 )r9rtuplerr!)mv3mv2 mv2_augmenteds r3test_stats_shapes_argcheckr8 *#s ..  3 7C ..  Sz1c 2C8C88M$ --  l +C --  q#h 'C8C88M$r5ceZdZdZy) _distr_gencyNrr;rlrXr1s r3_pdfz_distr_gen._pdf@#sr5Nrrrr> r;r5r3r: r: ?#sr5r: ceZdZdZy) _distr2_gencd|z|zSr< r;r= s r3_cdfz_distr2_gen._cdfE#Avzr5N)rrrrC r;r5r3rA rA D#sr5rA ceZdZdZdZy) _distr3_genc ||zSror;rlrXr1r2s r3r> z_distr3_gen._pdfJ#s 1u r5cd|z|zSr< r;r= s r3rC z_distr3_gen._cdfM#sAvzr5Nrrrr> rC r;r5r3rF rF I#s r5rF ceZdZdZdZy) _distr6_genc||z|zSror;rH s r3r> z_distr6_gen._pdfU#ssQwr5cd|z|zSr< r;rH s r3rC z_distr6_gen._cdfX#rD r5NrJ r;r5r3rL rL S#s r5rL creZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZy)TestSubclassingExplicitShapescXtdd}t|jdddy)Ndummyr1rr r rhrr: rrbrl dummy_distrs r3test_correct_shapesz1TestSubclassingExplicitShapes.test_correct_shapes_#s% gc: [__Q!_,b1r5cjtdd}tt|jdfit dy)NrR ArS r rh)r: rWrrbr rU s r3test_wrong_shapes_1z1TestSubclassingExplicitShapes.test_wrong_shapes_1c#s' gc: i!AtayAr5crtdd}tddd}tt|jdfi|y)NrR za, b, crS r r`rr)r: r rWrrb)rlrV r(s r3test_wrong_shapes_2z1TestSubclassingExplicitShapes.test_wrong_shapes_2g#s1 gi@ Q!q!i!;s;r5cHtdd}tttfi|y)NrR rrS )r rWrr: rlr(s r3test_shapes_stringz0TestSubclassingExplicitShapes.test_shapes_stringl#s+i3s3r5cHtdd}tttfi|y)NrR z(!)rS r rW SyntaxErrorr: r^ s r3test_shapes_identifiers_1z7TestSubclassingExplicitShapes.test_shapes_identifiers_1q#s.k:55r5cHtdd}tttfi|y)NrR 4chanrS ra r^ s r3test_shapes_identifiers_2z7TestSubclassingExplicitShapes.test_shapes_identifiers_2v#0k:55r5cHtdd}tttfi|y)NrR zm(fti)rS ra r^ s r3test_shapes_identifiers_3z7TestSubclassingExplicitShapes.test_shapes_identifiers_3z#s1k:55r5cHtdd}tttfi|y)NrR za=2rS ra r^ s r3"test_shapes_identifiers_nodefaultsz@TestSubclassingExplicitShapes.test_shapes_identifiers_nodefaults~#s.k:55r5cHtdd}tttfi|y)NrR z*argsrS ra r^ s r3test_shapes_argsz.TestSubclassingExplicitShapes.test_shapes_args#rg r5cHtdd}tttfi|y)NrR z**kwargsrS ra r^ s r3test_shapes_kwargsz0TestSubclassingExplicitShapes.test_shapes_kwargs#s 3k:55r5cHtdd}tttfi|y)NrR za, b, c, lambdarS ra r^ s r3test_shapes_keywordsz2TestSubclassingExplicitShapes.test_shapes_keywords#s(9:k:55r5cGddtj}|d}t|jddtjjddzy)NceZdZdZy)FTestSubclassingExplicitShapes.test_shapes_signature.._dist_gencFtjj||zSror9rr> r= s r3r> zKTestSubclassingExplicitShapes.test_shapes_signature.._dist_gen._pdf#zzq)A--r5Nr? r;r5r3 _dist_genrt # .r5rx r1r rur`rhr9r?rrbrrlrx rMs r3test_shapes_signaturez3TestSubclassingExplicitShapes.test_shapes_signature#sI .++ .$TXXcQX')?r5cGddtj}|d}tt|jdfit ddy) NceZdZdZy)STestSubclassingExplicitShapes.test_shapes_signature_inconsistent.._dist_gencFtjj||zSrorv r= s r3r> zXTestSubclassingExplicitShapes.test_shapes_signature_inconsistent.._dist_gen._pdf#rw r5Nr? r;r5r3rx r #ry r5rx rkrz rur r`r)r9r?rWrrbr r| s r3"test_shapes_signature_inconsistentz@TestSubclassingExplicitShapes.test_shapes_signature_inconsistent#s; .++ .'i3A$a.Ar5cGddtj}|d}t|jddtjjddzt|jddtjjddzt t |jdfitdy) NceZdZdZy)?TestSubclassingExplicitShapes.test_star_args.._dist_gencP|d}tjj||zSNrrv )rlrXr) extra_kwargs r3r> zDTestSubclassingExplicitShapes.test_star_args.._dist_gen._pdf#s#"1g zzq)K77r5Nr? r;r5r3rx r #s 8r5rx r rz ru!r )xxx)r9r?rrbrrWrr r| s r3test_star_argsz,TestSubclassingExplicitShapes.test_star_args#s 8++ 8  .TXXcrX2EJJNN34G4JKTXXc2& s(;B(>?i3?$2,?r5cJGddtj}|d}t|jdddtjjddzdzt|jdddtjjddzdzy) NceZdZdZy)ATestSubclassingExplicitShapes.test_star_args_2.._dist_gencV|d}tjj||z|zSr rv )rlrXr r)r s r3r> zFTestSubclassingExplicitShapes.test_star_args_2.._dist_gen._pdf#s("1g zzq)K7&@@r5Nr? r;r5r3rx r #s Ar5rx zoffset, extra_kwargrz ruor )r r r{ r| s r3test_star_args_2z.TestSubclassingExplicitShapes.test_star_args_2#s A++ A  56TXXc#2X>ZZ^^C(+c1 3TXXc3+ZZ^^C(+c1 3r5cGddtj}|d}t|jddtjjdy)NceZdZdZy)BTestSubclassingExplicitShapes.test_extra_kwarg.._distr_gencj|jdd}tjj||zS)Nr r )popr9rr> )rlrXr)kwargsr s r3r> zGTestSubclassingExplicitShapes.test_extra_kwarg.._distr_gen._pdf#s,%jj: zzq)K77r5Nr? r;r5r3r: r #s 8r5r: r rz r rr r{ )rlr: rMs r3test_extra_kwargz.TestSubclassingExplicitShapes.test_extra_kwarg#sD 8,, 8/TXXaQX/1BCr5cGddtj}|d}t|jdtjjdy)NceZdZdZy)ITestSubclassingExplicitShapes.test_shapes_empty_string.._dist_genc@tjj|Sro)r9rrbrs r3r> zNTestSubclassingExplicitShapes.test_shapes_empty_string.._dist_gen._pdf#szz~~a((r5Nr? r;r5r3rx r #s )r5rx rz rur{ r| s r3test_shapes_empty_stringz6TestSubclassingExplicitShapes.test_shapes_empty_string#s? )++ )#TXXc]EJJNN3$78r5N)rrrrW rZ r\ r_ rc rf ri rk rm ro rq r} r r r r r r;r5r3rP rP \#s\2B< 4 6 666666 @B @ 3 D9r5rP ceZdZdZdZej jeddZ ej jeddZ dZ dZ d Z d Zy ) TestSubclassingNoShapescVtd}t|jdddy)NrR rr rhrrT rU s r3test_only__pdfz&TestSubclassingNoShapes.test_only__pdf#s# g. [__Q!_,b1r5cVtd}t|jdddy)NrR r r rh)rA rrbrU s r3test_only__cdfz&TestSubclassingNoShapes.test_only__cdf#s#!w/ KOOAO3Q7r5docstring strippedrVctd}t|jdt|jdt j d|j }tt|dk(y)NrR r r r1zlogpdf\(x, a, loc=0, scale=1\)) r: rnumargsr refindallrr r rlrV rs r3test_signature_inspectionz1TestSubclassingNoShapes.test_signature_inspection#sX!g. [((!,[''-jj:$,,.CA r5ctd}t|jdt|jdt j d|j }tt|dk(y)NrR r r`rkz!logpdf\(x, a, b, loc=0, scale=1\)r ) rL rr r r r rr r r s r3test_signature_inspection_2argsz7TestSubclassingNoShapes.test_signature_inspection_2args#sX"w/ [((!,[''0jj=$,,.CA r5c0tttdy)NrR r )rWrrF rqs r30test_signature_inspection_2args_incorrect_shapeszHTestSubclassingNoShapes.test_signature_inspection_2args_incorrect_shapes#si7;r5clGddtj}tt|fit dy)NceZdZddZy)>TestSubclassingNoShapes.test_defaults_raise.._dist_gencyr< r;r= s r3r> zCTestSubclassingNoShapes.test_defaults_raise.._dist_gen._pdf#r5N)rr? r;r5r3rx r #s r5rx rR r r9r?rWrr rlrx s r3test_defaults_raisez+TestSubclassingNoShapes.test_defaults_raise#* ++  iAd.@Ar5clGddtj}tt|fit dy)NceZdZdZy)>TestSubclassingNoShapes.test_starargs_raise.._dist_gencyr< r;)rlrXr1r)s r3r> zCTestSubclassingNoShapes.test_starargs_raise.._dist_gen._pdf$r r5Nr? r;r5r3rx r $ r5rx rR r r r s r3test_starargs_raisez+TestSubclassingNoShapes.test_starargs_raise$r r5clGddtj}tt|fit dy)NceZdZdZy)._dist_gencyr< r;)rlrXr1r s r3r> zATestSubclassingNoShapes.test_kwargs_raise.._dist_gen._pdf $r r5Nr? r;r5r3rx r $r r5rx rR r r r s r3test_kwargs_raisez)TestSubclassingNoShapes.test_kwargs_raise$r r5N)rrrr r rrrDOCSTRINGS_STRIPPEDr r r r r r r;r5r3r r #sy28  [[+4HIJ [[+4HIJ<BBBr5r r cgd}tjD]p}tt|}t|tjtj zs?|D]-}t tj||jdu/ry)N)z,\s*,z\(\s*,z^\s*:) r9rJr'r=r>r?r r searchr)badonesdistnamerMregexs r3rr$sp-GMM@uh' dU..1D1DD F  @ %6$>? @@r5cttjjtj dddttj jtj dddy)NrYrrrrVr )rr9r1rrcrr rC r;r5r3test_infinite_inputr $sB ((R8!< 37;r5ctjjtjjddd}t |dyr)r9lomaxrrjrr s r3test_lomax_accuracyr $s/  2A6AAvr5ctjjtjjddd}t |dyr)r9r)rrjrr s r3test_truncexpon_accuracyr $$s7 U--11&!>,,Q2A6A3+r5ctjd5}tjdtjj ddtjj ddtjjddtjjtj dt|}t|ddddy#1swYyxYw)zregression test for gh-6219T)rValwaysrurrzN) rprqrrr9rrjrbrrrcrr r)rlnumber_of_warnings_throwns r3 test_genextreme_give_no_warningsr 0$s   -3h' R# R# R# -$'F!.2333s B$s **U%%++S"&&!T,BF+S TC >>D %%(Q,C  ?W\\!_ ,ruuax 7D D 3d #EVVHQJEE EC1Iu51QTE"C1Iu51QTE"r5cd}tjjd}t|d|zdzdtjjd}t||dzdtjjd}t |dtjjd d }t||d zt j d zdzdtjjd }t|d |zdzdtjjd}t|d|zdzdy)Ngox?rr`r rr~rrMrrYrrrrfr)r9rrArrrcr)r ris r3test_genextreme_entropyr T$s $K   &AAq}q(u5   #AA{QU3   %AA   R 0AA{1}rvvbz1A5EB   $AAr+~)6   %AAr+~)6r5c d}tjj|d}t|dtjj |d}t||d}tjj|d}t|dtjj |d}t||d}tjj|d}t|dtjj |d}t||y) Nrrtg'b%4gQ@rrgؗҜ;rg.l6?)r9rrrr)rXrGris r3test_genextreme_sf_isfr k$s2 A Av&AA-.     a (BB A Au%AA()     a 'BB A Aq!AA-.     a #BBr5cbd}tjj|dd}t|dy)Nr|r`rgH&8>)r9rS rr)probrs r3test_burr12_ppf_small_argr $s, D||a+HH45r5cd d}tjgd}tjj |d|\}}}t |dd|dk(sJt |ddy ) a? Test fitting invweibull to data. Here is a the same calculation in R: > library(evd) > library(fitdistrplus) > x = c(1, 1.25, 2, 2.5, 2.8, 3, 3.8, 4, 5, 8, 10, 12, 64, 99) > result = fitdist(x, 'frechet', control=list(reltol=1e-13), + fix.arg=list(loc=0), start=list(shape=2, scale=3)) > result Fitting of the distribution ' frechet ' by maximum likelihood Parameters: estimate Std. Error shape 1.048482 0.2261815 scale 3.099456 0.8292887 Fixed parameters: value loc 0 rc$t||||ddS)Nr)r)dispxtolftol)r&)rx0r)r s r3rz&test_invweibull_fit..optimizer$sD"4dUKKr5)r rr`r|rgrrrrrrYrO@c)rrg`?r`r~g [@N)r;r)rcrr9rrr)rrXrr^r_s r3test_invweibull_fitr $s_.L HIA$$((i(HMAsEAxd+ !8O8E8$/r5))rrg7Ըh?)rrgz]r>)rg"@goBڱ9)rrg$=cC;c`tjj||}t||dyr|)r9rrr)rXrrQr:s r3test_invweibull_sfr $s( ""1a(HHhU3r5zp, c, expected)rur|g9?)geK@g&4I,)?)decimals)r9rrjrrcround) scipy_val check_vals r3test_ncf_cdf_spotcheckr $s6  b!R.IIIrxx A>?r5ctjddd}d|d<d}tjj|g|}|Dcgc]"}tjj|g|$}}t ||ycc}w)Nrr rr|)rVr`rrr )rcrRr9rrr)rXparrxxiq0s r3test_ncf_ppf_issue_17026r %sm Aq#A AaD C a#A,- .b%))-- !S ! .B .Ar /s'A9c0eZdZdZdZdZdZdZdZy) TestHistogramcPtjjdtjgdd}t j ||_tjjdddd }tj|d }t j ||_ y) Nr)r r`r`rrrrrrrrrrrrr)r)r)r)rrrrrrrbinsrMr|r{r9r6) rcrr histogramr9r@templaterr norm_template)rlr rnorm_histograms r3r0zTestHistogram.setup_method%s{ tLL"@FGI **95 zz~~#Su3~Od4"//?r5ctjgd}tjgd}t|jj ||t |jj ddt |jj ddt |jj ddt |jj ddtjd d d }t|jj |tjj |d d dy)NrzrurMrryr|rr1r r/rN@rr rrr!@r r#)rzrzrFrF{Gz?r Q?r {Gz?r rJrJr r r r r r rzrzrr r r rzrrr`rYrMr|r]rVr~) rcrrrr rbrrRr r9r)rlrF pdf_valuesrXs r3rKzTestHistogram.test_pdf %sMNZZ!IJ  ))&1:> DMM--c2H=DMM--c2H= DMM--c2H=DMM--d3X> KKAr "**..q1 qc=C Ir5ctjgd}tjgd}t|jj ||t|jj |dd|ddtjddd}t|jj |jj ||tjddd}t|jj |jj ||tjd dd }t|jj |tjj |dd d y)Nr )rzrzrzrrFr r ףp= ?Q?{Gz?rrur|(\?RQ?= ףp=?)\(?r rMrMr`rrMr rZrzrrYr|r]rVr~) rcrrrr rjrrRr r9r)rlrF cdf_valuesrXs r3rzTestHistogram.test_cdf_ppf:%s)MNZZ!MN  ))&1:> ))*Qr*:;VAb\J KKS# & ))$--*;*;A*>?C KKS# & ))$--*;*;A*>?C KKAr "**..q1 qc=C Ir5cd}|jj|d}ttj|dkdt tj|dkd|zd t tj|d kd |zd t tj|d kd |zd t tj|dkd|zd t tj|dkd|zd t tj|dkd|zd t tj|dkd|zd t tj|dkd|zd t tj|dkd|zd t tj|dkd|zd t tj|dkd|zd t tj|d kd!|zd t tj|d"kd#|zd t tj|d$kd%|zd t tj|d&kd|zd t tj|d&kd|zd ttj|d&kDdy)'Nrr rrMrzryrFrJr~r|r rr rVr1r r r r/r rNrr?r rurr|r r rr rr! rr" r r r )r rrrcrfr)rlr+rEs r3rCzTestHistogram.test_rvsP%s """<RVVFSL)3/v}-x!|#Fv}-x!|#Fv}-x!|#Fv}-x!|#Fv}-x!|#Fv}-x!|#Fv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4Hv}-y1}4HRVVFSL)3/r5ctdD]L}t|jj|t j ddj |dNy)NrrMr|r?r~)rrr rr9rrrys r3r zTestHistogram.test_munpf%sNq GA D..44Q7!JJsC077: G Gr5ct|jjtjjdddy)NrMr|r]r?r~)rr rAr9rrqs r3rjzTestHistogram.test_entropyk%s5**224 **s#*>T Kr5N) rrrr0rKrrCr rjr;r5r3r r %s%@ I4I,0,G Kr5r cddggd}}tj||fd}tjj |j ddgddg|j dk(sJtj||fd}tjj |j ddgd |j d k(sJd }tjt| 5tj||f}|j d k(sJ dddtj|gd f}|j dk(sJy#1swY8xYw)Nr )rr rF)ryrurJrTg'^P?gH@z(Bin widths are not constant. Assuming...rr/) r9r@rcrrrbr>rrirs)countsr rMras r3test_histogram_non_uniformr) p%s&FLDF   vtne )rlrrrrv2rrArs r3 test_aliaszTestLogUniform.test_alias%sii##K0   h 0ff%cf2ii##K0x1wwEw4c",,rxx}26adhhj6DHHJ6$66666vvbiio,-333r5rrrc>tjjd}tjj ddd|}tjj ||\}}}}|dk(sJtjj |d|\}}}}|dk(sJy) Nr- rVr rrrr`r)rcrrr9r. rr)rlrrrr1r2r^r_s r3test_fit_overridez TestLogUniform.test_fit_override%sii##K0""33"G ++//F/C1c5zz ++//Af/M1c5zzr5ctjjd}d\}}tj||}|j ddd}t |j|j|||jd}t |j|j||dtjdd z}|j|}t |dd |ddz d ||z tj|tj|z z } t |j| y) NleVi P)gN~hrrr rr4ri8rJrrY)rcrrr9r. rrrjrrrrbrr) rlrr1r2rMrjrrXrbrs r3 test_overflowzTestLogUniform.test_overflow%sii##$7811%kk!QTk*#/5hhDh!#/5 4% %hhqkCRQR("-Aq BFF1I-. T*r5N) rrrr2 rrrr4 r6 r;r5r3r+ r+ %s54" [[Xt}5 6 +r5r+ ceZdZdZej j dddgddgddggd Zej j d d d gd Zej j dgddZ ej j dgddZ ej j dgddZ ej j dgddZ ej j dgddZ ej j dgddZej j dgdd Zej j dgd!d"Zy#)$ TestArgusctjjddd}ttjdj |j dy)Nr6rErrrP)r9argusrrrrs r3test_argus_rvs_large_chiz"TestArgus.test_argus_rvs_large_chi%s= KKOOBSsO ;EKKO002AFFHaHr5zchi, random_staterVr: rr1ctjj|d|}tj|d|f\}}t |dkDy)Nrrr; r?r9r; rrBr )rlrrrXrros r3rCzTestArgus.test_rvs%s@ KKOOCc O E||Aw01Dr5rrroctjj|dd}tj|d\}}t |dkDy)Nrie rcdd|dzz dzz S)Nr r`rr;rs r3rHz.TestArgus.test_rvs_small_chi..%sa!Q$h#->)>r5r?r@ )rlrrrros r3test_rvs_small_chizTestArgus.test_rvs_small_chi%s= KKOOCcO ?||A>?1Dr5zchi, expected_mean))r gщi?)rYg.憃?)rvg\paP?)rwg ?)r g,6?cbtjj|d}t||dy)Nr rrr~)r9r; rr)rlr expected_meanrs r3rzTestArgus.test_mean%s) KK  S  *=u5r5zchi, expected_var, rtol))r gLH'B?r)rYgo$?r)rvg =>r%)rwg2W>r%)r gb~P>r%cbtjj|d}t|||y)Nr rr~)r9r; r7r)rlr expected_varrrs r3rzTestArgus.test_var%s& KKOOCqO )r})rgF=r)rg߹Q#B=r)rog0ޟ)rNr|g=~L]=)rNrgD,G '=c`tjj||}t||dyr)r9r; rr)rlrXrrQrs r3test_sf_near_1zTestArgus.test_sf_near_1&s$[[^^As #H51r5))ru)g+&?gk?gμm/?)rJ)g?CL\f?g^N?g]AͭR?)rV)ga>$?g;Lf?gaW?)rw)gx?g43n?gwY?)r)go7🤎?g +-oGn?gIQ9‹Y?)r)g T?gGn?g@̋Y?)ro)gU?g{Gn?giG͋Y?)r)gDU?g{Gn?gH͋Y?ctjgd}ttjj |||dy)NrK rr~)rcrrr9r; rjrL s r3test_cdf_small_chizTestArgus.test_cdf_small_chi#&rN r5))ru)g Q)?g6{?r)gB`"۹?)g?g8%?r)rV)g388?gV%?r)rw)g*j?gRS%?r)r)g! |?gZ%?r)r)gy[|?gG%?r)ro)g"3|?gW%?r)r)g!3|?gW%?rcbtjj|d}t|||y)Nrrr~)r9r; r)rlrrQrrBs r3test_stats_small_chizTestArgus.test_stats_small_chi2&s)kkT2XD1r5N)rrrr< rrrrCrC rrrI rM rP rS rU rW r;r5r3r8 r8 %sI  [[0 #J #J #J3      [[UT4L12 [[189 6 9 6  [[6BC 4 C 4  [[2DE>E> [[ M NG NG  [[ N OF OF  [[ 67 2 7 2  [[ P QG QG  [[ C D2 D2r5r8 ceZdZdZdZdZdZejjdgddZ ejjdgdd Z d Z ejjd gd d Z ejjdejjdgdejjdgdejjdgddZejjdgdejjdgddZy) TestNakagamicdd}d}tjj||}t|dy)Nr|r~gM+)r9nakagamirr)rlr rXrs r3rzTestNakagami.test_logpdfC&s/ ~~$$Q+12r5cd}d}tjj||}t|ddtjj ||}t||dy)Nr|rNg"S+:rr~)r9r[ rrr)rlr r rrhs r3rzTestNakagami.test_sf_isfT&sS  ^^  r2 &1> ^^  B 'BU+r5cld}d}d}tjj||}t||dy)NrrugU iּrr~)r9r[ rr)rlrXr r~rs r3rzTestNakagami.test_logcdfg&s3  %&&q"-%0r5cld}d}d}tjj||}t||dy)Nr?rOgD&`Urr~)r9r[ rr)rlrXr r~rs r3rzTestNakagami.test_logsfo&s3  %$$Q+s/r5zm, ref))rg|Bd븿)rur)rYg/ۿcZttjj||dy)Ng^~z=r~rr9r[ rArlrr~s r3rjzTestNakagami.test_entropyw&s ..q13WEr5))rg}Ô%I)rgq_)gScAgB4U)gcAgu1U)rgb >%)rgWҙ\cVttjj||yror` ra s r3test_extreme_nuzTestNakagami.test_extreme_nu&s ..q137r5ctjtjj dsJtjtjj dsJy)Nrr)rcr=r9r[ _entropyrqs r3test_entropy_overflowz"TestNakagami.test_entropy_overflow&sD{{5>>2259:::{{5>>226:;;;r5znu, ref))rg2H?)rg:U?)rg>cZttjj||dyr)rr9r[ r)rlr r~s r3rzTestNakagami.test_mean&s ++B/5Ar5z+Fit of nakagami not reliable, see gh-10908.rVr )rr|rr^)rxrYrg r_)rrrc d tjj |||d tjj \}}}t ||dt ||dt ||d fd} fd} fd} t ||||d d t ||||d d t | |||d d y) NrZ9rr r^r_rrJr~cd|zdztjd|z z zd|z|dzz tj|z zzS)Nrr r`rcrf)r r^r_rJs r3 dlogl_dnuz(TestNakagami.test_fit..dlogl_dnu&sPUQY"&&GcM):";;d5!8mbffWs]&;;< =r5cdtj|ztd|z zdtjtj|z |z zztj|z |z dzz S)Nr rr`)rcrrrfr r^r_r+rJs r3 dlogl_dlocz)TestNakagami.test_fit..dlogl_dloc&spRVVBZ)Ar*::;rvvw}&=>??@ffw}59:; .dlogl_dscale&sF!GbL5("fuz)BFFGcMa3G,HHI Jr5rrr)r9r[ rrr) rlr r^r_nu_estloc_est scale_estrm rp rr r+rJs @@r3rozTestNakagami.test_fit&s ..$$!+0t%E%*^^%7%7%@"-3/ 5s3 = <  J  &'9=qtL 67I>M VWi@!$Or5cxd}d}tjj||||d}tjj||\}}}t j |} t j t j||z dz} t||dt|| dt|| dy) NrurZri rj r~r`r&r~) r9r[ rrrcrrrr) rlr^r_r rnrJrs rt ru loc_theo scale_theos r3 test_fit_nuzTestNakagami.test_fit_nu&s  ..$$!+0t%E%*^^%7%7B%7%G"66'?WWRWWg&7A%=>? .5 :D9r5N)rrrrrrrrrrrjrc rf rrrory r;r5r3rY rY A&sS3",&10 [[X %& F & F [[X DE8 E8< [[Y>?B ?B [[KL [[T?3 [[UN3 [[Wk2P344MP8 [[UN3 [[Wk2:34:r5rY c ReZdZdZdZdZejjdddgejjddd e jze j d e jd e jzd gejjd gddZ y)TestWrapCauchyctjddgddgg}tjdgdgg}tjj ||}|j dk(sJtj ||fDcgc]%\}}tjj ||'}}}t|j|d ycc}}w) NQ?rerurrMr rarr~) rcrr9 wrapcauchyrjr;nditerrr5 )rlrrXrorhr9 scalar_valuess r3test_cdf_shape_broadcastingz*TestWrapCauchy.test_cdf_shape_broadcasting&s HHtTlS$K0 1 HHsecU^ $    A &ww&   )+Aq6):<%b"))--b"5< < =u=?!a"))Brvvbeebdl/C,C"DRUU"JJKr5rrrVr^rrrr`rZr_)rr rctjj|||d}tj|dk\sJtj|dtj zksJy)Nr)rr^r_rrr`)r9r~ rrcrrd)rlrr^r_rXs r3test_rvs_lie_on_circlez%TestWrapCauchy.test_rvs_lie_on_circle&sU    1#U Fvva1f~~vva1ruu9n%%%r5N) rrrr r rUrrrrcrdr r;r5r3r{ r{ &s >,L [[S5$-0 [[UT2bee8beeVQqwPS$TU [[W&67&8V1&r5r{ cGddtj}|d}ttd5|j dddy#1swYyxYw)NceZdZdZy)/test_rvs_no_size_error..rvs_no_size_gencyrr;rqs r3_rvsz4test_rvs_no_size_error..rvs_no_size_gen._rvs&sr5N)rrrr r;r5r3rvs_no_size_genr &s r5r rvs_no_sizer z_rvs\(\) got (an|\d) unexpectedr)r9r?rWrr)r r s r3test_rvs_no_size_errorr &sJ%--"}5K y(J Ks AAzdistname, argsct|tvrtjd|dtt|}t |tj rt|dk7rF|j|\}}t|tjt|tjd\}}|jg|||\}}t|tjt|tjy|j|\} } t| tjt| tjy)Nz6skipping test for the support method for distribution .rr) $skip_test_support_gh13294_regressionrrr'r9r=r?r r rrcr) r r)rMa0b0rra1b1r1r2s r3test_support_gh13294_regressionr 's77 $$,:Q0 1 5( #D$++, t9>!T\\4(FB RVV $ RVV $  f2t2T262BR R t||T"1QQr5ctjjgdgd\}}tjtj tj tj tj g}tjtj tj tj tj g}t||t|||j|jk(sJ|j|jk(sJtjjgg\}}tjgtjg}}t||t|||j|jk(sJ|j|jk(sJtjjgddg\}} tjdtj gz} tjdtj gz} t|| t| | |j| jk(sJ| j| jk(sJy)N)rrrr )r r r rrr) r9rr rcrrrrr;) r r ex_a0ex_b0r r ex_a1ex_b1rrex_a2ex_b2s r3,test_support_broadcasting_gh13294_regressionr 's ZZ   m >#u % + +v 55 5r5)gn! g:I"<)gQ @gE?cttjj||ttjj | |yro)rr9cosinerjr)rXrQs r3test_cosine_cdf_sfr G's6ELL$$Q'2ELLOOQB'2r5))rogkM6O)rg0ӭ! )r( g;'u(@cttjj||ttjj || yro)rr9r rr)rorQs r3test_cosine_ppf_isfr O's8 ELL$$Q'2ELL$$Q'(3r5ctjjtj tjg}t |dy)NgrB)r9r rrcrdr )rs r3test_cosine_logpdf_endpointsr X's1 <<   /Dd./r5c0tDchc]\}}t|tr|}}}tDchc]\}}| }}}||k(sJtDchc]\}}| }}}t Dchc]\}}| }}}||k(sJycc}}wcc}}wcc}}wcc}}wro)r!r=rDr"rr)rrdiscrete_distnamesinvdiscrete_distnamescont_distnamesinvcont_distnamess r3test_distr_params_listsr _'s/;474'c2441@AgdATAA !6 66 6*23wtQd3N3-89'$99 . .. .4A49sB B B ) Bctjjddtjjdddk(sJtjj dddk(sJy)NrrUrjr)rr1r)r9r_statsrrr;r5r3test_moment_order_4r m's` NNAs+ >> qA .# 55 5 >>  1 % ,, ,r5c &eZdZejdZej jdgddZej jdgddZ ej jej jdejd d ej j ejd d ej j ejddej j gdZ y)TestRelativisticBWctjttjdz }tj j |jd}|S)a&Sample data points for pdf computed with CERN's ROOT See - https://root.cern/ Uses ROOT.TMath.BreitWignerRelativistic, available in ROOT versions 6.27+ pdf calculated for Z0 Boson, W Boson, and Higgs Boson for x in `np.linspace(0, 200, 401)`. z-data/rel_breitwigner_pdf_sample_data_ROOT.npyzx,pdf,rho,gammarrrrs r3ROOT_pdf_sample_dataz'TestRelativisticBW.ROOT_pdf_sample_data'sLww N ! ! ; < vv  /@ A r5zrho,gamma,rtol))qVEB@gj+@rH)‰FC@Gz@r)ND@_LU?rc||d|k(|d|k(z}|d|d}}t|tjj||||y)NrhorrXrbrr~)rr9rel_breitwignerrb)rlr r rrrrXrbs r3test_pdf_against_ROOTz(TestRelativisticBW.test_pdf_against_ROOT'sg$ !% (C /#G,5 7 cDK3 &&**1c*?d r5zrho, Gamma, rtol))r r r)r r r)r r g& .>cd}tjddd}tjj |||}tjj |||}||||z|}t |||y)Nc tj|dz|dz|dzzz}dtjdz|z|z|ztjtj|dz|zzz }||dz|dzz dz|dz|dzzzz Sro)rcrrd)ErGammarrUs r3rbzFTestRelativisticBW.test_pdf_against_simple_implementation..pdf'sGGAqDAqD5!8O45ERWWQZ!#e+e3EEBGGAqD5L113AA1q(1a4q=89 9r5r?r3rYrr~)rcrRr9r rrbr) rlr r rrbrorXrr~s r3&test_pdf_against_simple_implementationz9TestRelativisticBW.test_pdf_against_simple_implementation'ss : KKdB '  ! ! % %aE % :##''3e'<!SY&St,r5z rho,gammar r rr r r r cd}tjj|}tjj ||d|}tjj |d}t|d|df||fd|d dk(sJtjj |d| }t|d|d |d |dfd|fk(sJy ) zpTests fit for cases where floc is set. `rel_breitwigner` has special handling for these cases. ls ; rl#rrrrr`rJr~r r:rwN)rcrrr9r rrr)rlr rrrrrs r3 test_fit_flocz TestRelativisticBW.test_fit_floc's&#ii##D)$$(( u4c) ##''1'5QQ(3,TB1v{{##''1U'CA$/AAAu:---r5N)rrrrrr rrr r rrrr r;r5r3r r 's  ^^$ [[    [[/2  -  - [[ [[ FLL"F&++2B2B  FLL!5 0A0A  FLL & 0A0A    . .r5r cTeZdZejj dddgdZy) TestJohnsonSUr)r rrrg={?g?5mV>gn?g\}\1@)g`fo@g$ں _@rr gvUg Nv>T!"XE2r5N)rrrrrrr r;r5r3r r 's9 [[V O J&KL 3 L 3r5r c eZdZdZej j dddgej j dddgej j dddgej j dddgdZy ) TestTruncParetoc.d\}}tjdd}tj||j |}tj |j |tj |j |z }t||y)N)?333333@r r )rcrRr9 truncparetorbrrjr)rlr2rrXrr~s r3rKzTestTruncPareto.test_pdf'sr1 KKS !1%))!,ll1o!!!$u||A':':1'==S!r5rTFr6rrctjjd}d\}}}} tj|||| } | j d|} i} |r|| d<|r| | d<|r|| d<|r|| d <|rM|rK|rI|rGd } t jt| 5tjj| fi| dddyttj| fi| y#1swYyxYw) NlZ #Lm)r r r r|r]rrrrrrrr) rcrrr9r rrrrrr)rlrr6rrrr2rr^r_rMrrras r3rozTestTruncPareto.test_fit's ii##$78+1c5  A3e<xxSsx3 DL "DN DJ DJ yUuKG|7; 4!!%%d3d3 4 4 *%*;*;T JT J 4 4s !CC%N)rrrrKrrrror;r5r3r r 's" [[Yu 6 [[[4-8 [[WtUm4 [[WtUm4K5597Kr5r ceZdZdZy) TestKappa3cdtjjddz }tjjdd}t ||y)Nr rugj@)r9kappa3rjrr)rlsf0rps r3rzTestKappa3.test_sf(s=%,,""3,,llooc3'S!r5N)rrrrr;r5r3r r (s"r5r ceZdZejddZej dZej dZdZ dZ dZ dZ dZ d Zd Zd Zd Zy ) TestIrwinHallrr rYcNt|jjddy)Nr)rg?rgQ)r ih10r9rqs r3test_stats_ih10zTestIrwinHall.test_stats_ih10 (s TYY__V46JKr5cgd}tt|Dcgc] }|jj|dz"}}t |||jjd}d}t ||ycc}w)N) rgUUUUU9@g0a@igx@gn۶mˠ@g:PAg8)AgSAr r6g2⍚H)rr r rr )rlrArnrm50 m50_exacts r3test_moments_ih10zTestIrwinHall.test_moments_ih10&(sm-38D 2BCQ499##AaC(CCWd+iir"H S), Ds%A8ctjddd}|jj|}|jj|}t ||dyNrr rZrYmaxulp)rcrRunifrbih1r )rlptspdf_unifpdf_ih1s r3test_pdf_ih1_unifzTestIrwinHall.test_pdf_ih1_unif4(sFkk!Q$99==%((,,s#Whr:r5ctjd}d}tjdd|}tjdd|}d||dzdzdz ||dzdzd|j |}t ||dy)Nr`rWrr rYr )r9rrcrRrbr )rlih2nptsr rQpdf_ih2s r3test_pdf_ih2_trianglez#TestIrwinHall.test_pdf_ih2_triangle@(s|ooa kk!Q%;;q!T*%&4!8/2B)C%C$(q!"''#,Whr:r5ctjddd}|jj|}|jj|}t ||dyr )rcrRr rjr r )rlr cdf_unifcdf_ih1s r3test_cdf_ih1_unifzTestIrwinHall.test_cdf_ih1_unifJ(sDkk!Q$99==%((,,s#Whr:r5ctjdd}tj|}|j |dz }tj dt |}t||dy)Nr rYr`rur )rcrr9rrjrr r )rlrnihih_cdfexacts r3rUzTestIrwinHall.test_cdfR(sQ IIa  __Q A #s1v&VU26r5c gd}t|jjtjd|dt|jjdddd}t|jjd|dy) N) rg\xO~>g-P2?g8ʝi?gg{Ȇ?rug&M?g׈Y?gB?gD l?r rrYr rVg+|gP3NV?g*8f?gNgX?gjS?rrrYr )r r rbrcrrs r3test_pdf_ih10_exactz!TestIrwinHall.test_pdf_ih10_exactk(sDJ $tt*,,TYY]]299R=94Kr5c $t|jjtjdd|jj tjdz d}t |jjd|dy)Nrr rMrVrYr )rr rrcrrjr )rlr~s r3test_sf_ih10_exactz TestIrwinHall.test_sf_ih10_exactr(s\ RYYr]3QryyQS}9U5UV2TYY\\$/R@r5N)rrrr9rr rr r r r r r r rUr r r r;r5r3r r (se 5==A D %//! C 5??2 DL - ;;;7C LAr5r ceZdZdZy)TestDParetoLognormcd\}}}}}tj||||}tjj |j |dtjj |j |dy)N)rrr\rr`g6Z?g@# ?)r9dpareto_lognormrcrrrbrj)rlrXrrGr1r2rMs r3test_against_Rz!TestDParetoLognorm.test_against_R|(sc, 1aA$$Q1a0 ""488A;0CD ""488A;0CDr5N)rrrr r;r5r3r r {(sEr5r r))r NNNN)rNNNN)r!NNNN)r NNNN)rNNNNc|\}}}}}tjd}|xsd}|xsd}|xsd}|xsd}tt|}t t |}||} tj ||} | j| j| } t| | ||dtj ||dz } | j| j| } t| | ||y) Nruiirrrgr r) rcr0 r'r9r rrrrr) rr lp1lp2rrlpmrMr dist_frozenr~rs r3test_sf_isf_overridesr (s&*"Hc3d ((3-C +C *C 91D =5D 5( #D (^H %F-K ++c3 C ..- .CC4d3 bkk#sB' 'C ..- .CC4d3r5ro)NF(rrpr rr rpathlibrr r rP numpy.testingrrrrrr r r r r rrrrWnumpyrcrrnumpy.lib.recfunctionsrr8rscipy._lib._utilrrrrrr scipy.statsr9!scipy.stats._distn_infrastructurerscipy.stats._constantsrscipy.stats.distributions scipy.specialrrrscipy.stats._distr_paramsrrtest_discrete_basicr!r"scipy.stats._continuous_distnsr#r$scipy.optimizer%r&r' itertoolsr(flagsoptimizer rSrr r4r<rRrTrrrrr*r,rWrrrrrrr.r:rarrrrrr rr#r*rCrHr[reryrrr#rGrRrUrrrrrrr,r:rbrlryrrrrrrrrrrBrur}rrdrrrrrrrr'r+r/r:rGrrrrrrrrrrrrrr r{ r r r r r r r r r r r$ r= rB rI rP rc rk r r r rr 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, r. r8 r?r: rA rF rL rP r rr r r r r r r r r r r r r r r r r r) r+ r8 rY r{ r r r r r r r r r r r r r r r r r;r5r3r s2   :::: *"4/338( 00;>C==ii((1,||x'M.>h.>.>.@H.L )6z'B$$ 8 G@G@T4D..>? 6 ? 699>G,G,T**>O,O,d<B<B~D/D/N##>*7D7Dt C CA2A2H44DI6I6X**. G GFK"K"\=I=I@`&`&FhDhDVDD,DD,U<Uw>t 3P6P6fB=B=J&&>$$*_ /_ /D))   , mGmG`e,e,Px;x;v]H]H@",",JB&B&J668;";"|u0u0p...SFSFl..2J/J/Z ? ?FV?V?r66(00D N NRBRBj2,2,jCCL>6>6BD0D0N <'0EF/G/ <*585.:#4L , )JK AK A#072 -& 9%&P-M"+ HBHHo7 89 HBHHo7 89 xrxx|456 HBHHk;/ 01 . 2  226 16 7:);<)<):; ) ; );<!<! ();< ) < ) %*$$ %%% %%%%%%u9u9p8B8Bv'0DE@F@<   , 3#,7.)X 60D)FG 4 G 4 )<<>?4?4  !" "#_ =  = *@^K^KB.3+3+lA2A2HP:P:f"&"&J )?[+HI J 4#26;467373 784 84 0 /-(W.W.t 3 3 #K#KL""]A]A@EE*"GH 4 H 4r5