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-4iou4664/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 Csj|j}tdtd|d\}}tdtd||dtd|d\}}tdtd||ddS) Nz2--------------------------------------------------z%s 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 Cshtdtd|d|d} } tdt| |dtd|d|d} } tdt| |ddS) Nz2--------------------------------------------------z%s on small arraysznm%ssznumpy.maz!%(data)s.%(methodname)s(%(args)s))r#r$z%s on large arraysznm%sl)rr(r,) methodnameargsvarsr$testr.r)r/r*r2verrrrcompare_methodsFs  r9c Csj|j} tdtd| d\} } tdtd| |dtd| d\} } tdtd| |ddS) Nz2--------------------------------------------------z%s on small arrays)znumpy.maz nmxs,nmysz!%(module)s.%(funcname)s(%(data)s)z%11s)r#r$z%s on large arrays)znumpy.maz nmxl,nmyl)r+rr(r,)r-r$r7r.r)ysnmysr/r*ylnmylr0r1r2rrrcompare_functions_2vRs  r>__main__Zraveli)r$ conjugatezZ transpose compressed __getitem__0z(0,0)z[0,-1] __setitem__z0, 17)r$r7z (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(r3r9r>r+sinlogsqrtmultiplydividepowerrrrrrsn