B @` @sddlZddlZejdddddZejdddddZedeZdd d gd d dggZdd dgd d dggZ ej j eed Z ej j ee d Z ej j eed Zejddd d d Zejddd d d ZedeZed kZedkZej j eed Zej j eed Zej j eed Zd4ddZdee eefddZdddee eefddZddee ee eeeef ddZedkreejeejeejeejeej eej!eddddeddddded ddded!ddded"d#dded"d$dded"d%dded&d'dd d(ed&d)dd d(e"d*e"d+ed,d-d de"d*e"d.ed/d-d de"d*e"d0ed1d-dde"d*e"d2ed3d-d ddS)5Ny?TF)maski'dg?gc Csddddg}ddddg}td ||fd d d d dD}dd|}tj||d}t||||} | dkrtttt | d d} nd} td||d| || || fdS)Nsmsuµsnsrg@@g.AgeAz %s : %-50s :  )endcSsg|]}dt|dqS)z%ss,nm%ss,%sl,nm%sl)tuple).0xr2/tmp/pip-unpacked-wheel-ecq9wray/numpy/ma/bench.py +sztimer..Zxyzz"from __main__ import numpy, ma, %s,)Zstmtsetupgrz&%d loops, best of %d: %.*g %s per loop) printjointimeitTimerminrepeatintnumpyfloorlog10) r vnloopZnrepZunitsZscalingvarnamesrrbestorderrrrtimer's  " r(c Csl|j}tdt|dd\}}tdtd||dtd|d\}}tdtd||ddS) Nz2--------------------------------------------------z on small arrays)znumpy.manmxsz!%(module)s.%(funcname)s(%(data)s)z%11s)r#r$z%s on large arrays)znumpy.manmxl)__name__rr(locals) funcr$xsr)xlr*funcnamemoduledatarrrcompare_functions_1v9s r3rc Csntdt|dd|dd} } tdt| |dtd|d |d} } tdt| |ddS) Nz2--------------------------------------------------z on small arraysnmlznumpy.maz!%(data)s.%(methodname)s(%(args)s))r#r$z%s on large arraysznm%sl)rr(r,) methodnameargsvarsr$testr.r)r/r*r2verrrrcompare_methodsFs r;c Csn|j} tdt| dd\} } tdtd| |dt| dd\} } tdtd| |ddS) Nz2--------------------------------------------------z on small arrays)znumpy.maz nmxs,nmysz!%(module)s.%(funcname)s(%(data)s)z%11s)r#r$z on large arrays)znumpy.maz nmxl,nmyl)r+rr(r,)r-r$r9r.r)ysnmysr/r*ylnmylr0r1r2rrrcompare_functions_2vRsr@__main__Zraveli)r$ conjugatezZ transpose compressed __getitem__0z(0,0)z[0,-1] __setitem__z0, 17)r$r9z (0,0), 17z2--------------------------------------------------z__setitem__ on small arraysz(nmxs.__setitem__((-1,0),numpy.ma.masked)z numpy.ma z__setitem__ on large arraysz(nmxl.__setitem__((-1,0),numpy.ma.masked)zwhere on small arraysz numpy.ma.where(nmxs>2,nmxs,nmys)zwhere on large arraysz numpy.ma.where(nmxl>2,nmxl,nmyl))r r r)#rr randomuniformZreshaper.r<Zzsm1m2maarrayr)r=Znmzsr/r>ZzlZmaskxZmaskyr*r?Znmzlr(r3r;r@r+sinlogsqrtmultiplydividepowerrrrrrsn