ó 2ÄÈ[c@`sµddlmZmZmZddlZddlZddlZddlZddl j j Z ddl mZmZmZmZejddƒPejeejdƒƒjdkpÛejeejdƒƒjejkZWdQXejjdƒ púeZejjeddƒZd e fd „ƒYZ!d e fd „ƒYZ"d e fd„ƒYZ#de fd„ƒYZ$de fd„ƒYZ%de fd„ƒYZ&e'd„Z(e'd„Z)dS(i(tdivisiontabsolute_importtprint_functionN(t assert_raisest assert_equaltassert_array_equaltassert_almost_equaltalltignoretlinuxtreasonsInadequate C99 complex supporttTestCexpcB`s>eZd„Zed„ƒZejjddƒd„ƒZRS(cC`s­t}tj}||ddtjdƒdtƒ||ddtjdƒtjdƒtƒtjdƒttjdƒtjdƒƒ}||dd|j|jtƒdS(Nii( tcheck_complex_valuetnptexptFalsetcostsintcomplextrealtimag(tselftchecktftref((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt test_simple"s  "+.c`sZt}tj‰|ˆtjdddtƒ|ˆtjdddtƒ|ˆdtjtjtjƒ|ˆdtjtjtjƒ|ˆdtjtjtjƒ|ˆtjdtjdƒ|ˆtj dtjtjƒ|ˆtj dtjtjtjƒ|ˆtjdtjtjƒ|ˆtjdtjtj tjƒ‡fd†}|dƒ‡fd†}|dƒ‡fd†}|dƒ‡fd†}|dƒ|ˆtjdtjtjƒ|ˆtjdtjtjƒ|ˆtjtjtjtjƒ|ˆtjtj tjtjƒ|ˆtjtjtjtjƒdS( Niiiÿÿÿÿgè?c `s…d}tjddƒgˆtjttj tjƒƒƒ}|jdks\|jdkr{t||j|jfƒ‚nWdQXdS(Ns0cexp(-inf, inf) is (%f, %f), expected (+-0, +-0)tinvalidRi(R terrstatetarrayRtinfRRtAssertionError(tdummytmsgformtz(R(sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt_check_ninf_infIs %c `sŒd}tjddƒnˆtjttjtjƒƒƒ}tj|jƒ sctj|jƒ r‚t ||j|jfƒ‚nWdQXdS(Ns1cexp(inf, inf) is (%f, %f), expected (+-inf, nan)RR( R RRRRtisinfRtisnanRR(RR R!(R(sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt_check_inf_infSs $&c `s…d}tjddƒgˆtjttj tjƒƒƒ}|jdks\|jdkr{t||j|jfƒ‚nWdQXdS(Ns0cexp(-inf, nan) is (%f, %f), expected (+-0, +-0)RRi( R RRRRtnanRRR(RR R!(R(sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt_check_ninf_nan]s %c `sŒd}tjddƒnˆtjttjtjƒƒƒ}tj|jƒ sctj|j ƒ r‚t ||j|j fƒ‚nWdQXdS(Ns2cexp(-inf, nan) is (%f, %f), expected (+-inf, nan)RR( R RRRRR&R#RR$RR(RR R!(R(sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt_check_inf_nangs $&( R R RtPZERORtNZERORR&tpitNone(RRR"R%R'R(((RsB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyttest_special_values,s2  ''    "#R s)cexp(nan + 0I) is wrong on most platformscC`s/t}tj}||tjdtjdƒdS(Ni(R R RR&(RRR((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyttest_special_values2|s ( t__name__t __module__Rt platform_skipR-tpytesttmarktskipR.(((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR !s PtTestClogcB`sDeZd„Zeejjejƒdkddƒd„ƒƒZ RS(cC`sƒtjddgƒ}tjtj|ƒƒdtj|ƒ}tj|ƒ}x/tt|ƒƒD]}t||||ƒq`WdS(Niyy@yð?yð?yð?@(R RtlogtabstangletrangetlenR(Rtxty_rtyti((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR†s )tarmv5telR s See gh-413.cC`spg}g}tjddƒItjtjgdtƒ}ttj tjƒ}tttj |ƒWdQXtjddƒt tj |ƒ|ƒWdQX|j |ƒ|j |ƒtjddƒCtjdgdtƒ}ttj dƒ}tttj |ƒWdQXtjddƒt tj |ƒ|ƒWdQX|j |ƒ|j |ƒtjtdtjƒgdtƒ}ttjdtjƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjtdtjƒgdtƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjd dƒ>tjtd tj ƒgdtƒ}ttj tj ƒ}WdQXtjd dƒt tj |ƒ|ƒWdQX|j |ƒ|j |ƒtjd dƒ+tjtjd tj gdtƒ}WdQXtjd dƒt tj |ƒ|ƒWdQX|j |ƒ|j |ƒtjtj d gdtƒ}ttjtjƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjtjd gdtƒ}ttjdƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttj tjƒgdtƒ}ttjd tjƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttjtjƒgdtƒ}ttjd tjƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttjtj ƒgdtƒ}ttjtj ƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttj tj ƒgdtƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttj dƒgdtƒ}ttj tj ƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttj tjƒgdtƒ}ttjtj ƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtjttj tj ƒgdtƒ}ttj tj ƒ}t tj |ƒ|ƒ|j |ƒ|j |ƒtj|dtƒ}tj|dtƒ}tjddƒLxDt t|ƒƒD]0}t tj ||jƒƒ||jƒƒq2WWdQXdS(NtdividetraisetdtypeRiigà?iÿÿÿÿRgð?yð?gè?gÐ?(R RRR*RRR+RtFloatingPointErrorR6RtappendR&R9R:tconj(RtxltylR;R=txatyaR>((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR-s²    $  $  $  ,       (  '  '  (  $  '  '  ( R/R0RR1R2R3tskipiftplatformtmachineR-(((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR5…s t TestCsqrtcB`s)eZd„Zd„Zed„ƒZRS(cC`skttjddddƒdtjdƒ}|}ttjdd||tƒttjddddƒdS(Niigà?iiÿÿÿÿ(R R tsqrtR(Rtrrestires((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRs cC`sMtjtjtddƒƒƒ}d„}t|dd|j|jtƒdS(NicS`stjtj|ƒƒS(N(R RNRE(R!((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR's(R RERNRR RRR(RRR((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyttest_simple_conjugate$s! cC`s`t}tj}||tjdddƒ||tjdddƒ||dtjtjtjƒ||dtjtjtjƒ||tjtjtjtjƒ||tjtjtjtjƒ||tjtjtjtjƒ||tj tjtjtjƒ||tj tjtjtjƒ||dtjtjtjƒ||dtjtjtjƒ||dtjtjtjƒ||tj dtjtjƒ||tjdtjtjƒd„}|dƒ||tjtjtjtjƒ||tjdtjtjƒ||tjdtjtjƒ||tjtjtjtjƒdS(NiiiÿÿÿÿcS`sŽd}tjtjttj tjƒƒƒ}tjddƒHtj|jƒobtj |j ƒs„t ||j|j fƒ‚nWdQXdS(Ns3csqrt(-inf, nan) is (%f, %f), expected (nan, +-inf)RR( R RNRRRR&RR$RR#RR(RR R!((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR'Ps ($(R R RNR)R*RR&R,(RRRR'((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR-/s, """##   "(R/R0RRQR1R-(((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRMs tTestCpowcB`s5eZd„Zd„Zd„Zd„Zd„ZRS(cC`stjddƒ|_dS(NRR(R tseterrtolderr(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pytsetupgscC`stj|jdS(N(R RSRT(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pytteardownjscC`svtjdddtjtjgƒ}|d}tj|dƒ}x/tt|ƒƒD]}t||||ƒqSWdS( Niyð?iy@iyð?ð?y@yð?@(R RRR&tpowerR9R:R(RR;R<R=R>((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRms $ cC`stjdddd tjtjgƒ}tjddd dddgƒ}ttt|ƒƒƒ}g|D]$}t||ƒt||ƒ^qg}ttjtjƒ|d tp_rtn_r((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt test_scalarts'!1% cC`sètjdddd tjtjgƒ}tjddd dddgƒ}ttt|ƒƒƒ}g|D]$}t||ƒt||ƒ^qg}ttjtjƒ|d <||}x-|D]%}t||||d d |ƒq»WdS(Niyð?ig@y®Gáz®×?gà¿yø?iiRXsLoop %d y@®Gáz®×?yà¿ø?yà¿ø?( R RRR&RYR9R:RR(RR;R=RZR>R[R\((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt test_arrays'!1  (R/R0RURVRR]R^(((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRRfs     tTestCabscB`s5eZd„Zd„Zd„Zd„Zd„ZRS(cC`stjddƒ|_dS(NRR(R RSRT(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRUscC`stj|jdS(N(R RSRT(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRV’scC`sŸtjdd d tjtjgƒ}tjtjdƒdtjdƒtjtjgƒ}tj|ƒ}x/tt|ƒƒD]}t||||ƒq|WdS( Niyð?iy@g@iiyð?ð?y@yð?@( R RRR&RNR7R9R:R(RR;R<R=R>((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR•s $6cC`s tjdgdtƒ}ttj|ƒtj|ƒƒtjtdtjƒgdtƒ}ttj|ƒtj|ƒƒtjttjtjƒgdtƒ}ttj|ƒtj|ƒƒtjttjtjƒgdtƒ}ttj|ƒtj|ƒƒdS(NiyRByð?( R RRRR7RR*RR&(RR;((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt test_fabsœs$''cC`s‡gg}}|jtjƒ|jtjƒttjtjtjtjƒ|jtjƒ|jtj ƒttjtj tjtjƒ|jtjƒ|jtjƒttjtjtjtjƒ|jtj ƒ|jtjƒttjtj tjtjƒd„}d„}tj|dtƒ}xLtt |ƒƒD]8}|||||ƒ}t||||||ƒqGWdS(NcS`stjtj|ƒƒS(N(R R7RE(ta((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRÁscS`stjt||ƒƒS(N(R R7R(Ratb((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pytgÄsRB( RDR R&tcheck_real_valueR7RRRR9R:(RR;R=RRcRHR>R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyttest_cabs_inf_nanªs&     (R/R0RURVRR`Re(((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR_Žs     tTestCargcB`s8eZd„Zejjddƒd„ƒZd„ZRS(cC`s|ttjdddtƒttjdddtjtƒttjdddtjtƒttjtjtjtjƒdS(Niigà?gÐ?(Rdtncut_argRR R+R)(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRÍs  R s;Complex arithmetic with signed zero fails on most platformscC`sttjtjtjtjtƒttjtjtjtj tƒttjtjtjtjƒttjtjtjtjƒttjdtjtjtƒttjdtjtjtƒttjdtjtjtƒttjdtjtj tƒttjtjddtjtƒttjtjddtjtƒttjtjddtjtƒttjtjddtjtƒdS(Niiÿÿÿÿgà?gà¿(RdRgRhR R*R)R+R(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyt test_zeroÕs"# ###cC`sèttjtj dtjtƒttjtj dtj tƒttjtjdtjtƒttjtjdtjtƒttjdtjdtjtƒttjdtj dtjtƒttjtj tjdtjtƒttjtj tj dtjtƒttjtjtjdtjtƒttjtjtj dtjtƒttjtj d tj tƒttjd tj tj tƒttjtj tjtj tƒttjtjtj tj tƒdS( Niiÿÿÿÿgà?gà¿gè?gè¿gÐ?gпi( RdRgRhR RR+RR)R*R&(R((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR-ós !#$'(&'"(R/R0RR2R3R4RiR-(((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRfÌs  cC`sNtjt||ƒgƒ}|r7t||ƒ|ƒnt||ƒ|ƒdS(N(R RRRR(Rtx1ty1R;texacttz1((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyRdscC`svtjt||ƒgƒ}t||ƒ}tjddƒ4|rYt||ƒ|ƒnt||ƒ|ƒWdQXdS(NRR(R RRRRR(RRjRktx2ty2RlRmtz2((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyR s (*t __future__RRRtsysRKR2tnumpyR tnumpy.core.umathtcoretumathRgt numpy.testingRRRRRRRRRR6R*R+tfunctions_seem_flakyt startswithtxfail_complex_testsR3RJR1tobjectR R5RMRRR_RftTrueRdR (((sB/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_umath_complex.pyts(    " $- d‘P(>D