From barrett at stsci.edu Tue Jul 6 08:59:20 2004 From: barrett at stsci.edu (Paul Barrett) Date: Tue, 06 Jul 2004 08:59:20 -0400 Subject: [AstroPy] ANN: numarray-1.0 released Message-ID: <40EAA228.2010508@stsci.edu> Release Notes for numarray-1.0 Numarray is an array processing package designed to efficiently manipulate large multi-dimensional arrays. Numarray is modeled after Numeric and features c-code generated from python template scripts, the capacity to operate directly on arrays in files, and improved type promotions. I. ENHANCEMENTS 1. User added ufuncs There's a setup.py file in numarray-1.0/Examples/ufunc which demonstrates how a numarray user can define their own universal functions of one or two parameters. Ever wanted to write your own bessel() function for use on arrays? Now you can. Your ufunc can use exactly the same machinery as add(). 2. Ports of Numeric functions A bunch of Numeric functions were ported to numarray in the new libnumeric module. To get these import from numarray.numeric. Most notable among these are put, putmask, take, argmin, and argmax. Also added were sort, argsort, concatenate, repeat and resize. These are independent ports/implementations in C done for the purpose of best Numeric compatibility and small array performance. The numarray versions, which handle additional cases, still exist and are the default in numarray proper. 3. Faster matrix multiply The setup for numarray's matrix multiply was moved into C-code. This makes it faster for small matrices. 4. The numarray "header PEP" A PEP has been started for the inclusion of numarray (and possibly Numeric) C headers into the Python core. The PEP will demonstrate how to provide optional support for arrays (the end-user may or may not have numarray installed and the extension will still work). It may also (eventually) demonstrate how to build extensions which support both numarray and Numeric. Thus, the PEP is seeking to make it possible to distribute extensions which will still compile when numarray (or either) is not present in a user's Python installation, which will work when numarry (or either) is not installed, and which will improve performance when either is installed. The PEP is now in numarray-1.0/Doc/header_pep.txt in docutils format. We want feedback and consensus before we submit to python-dev so please consider reading it and commenting. For the PEP, the C-API has been partitioned into two parts: a relatively simple Numeric compatible part and the numarray native part. This broke source and binary compatibility with numarray-0.9. See CAUTIONS below for more information. 5. Changes to the manual There are now brief sections on numarray.mlab and numarray.objects in the manual. The discussion of the C-API has been updated. II. CAUTIONS 1. The numarray-1.0 C-API is neither completely source level nor binary compatible with numarray-0.9. First, this means that some 3rd party extensions will no longer compile without errors. Second, this means that binary packages built against numarray-0.9 will fail, probably disastrously, using numarray-1.0. Don't install numarray-1.0 until you are ready to recompile or replace your extensions with numarray-1.0 binaries because 0.9 binaries will not work. In order to support the header PEP, the numarray C-API was partitioned into two parts: Numeric compatible and numarry extensions. You can use the Numeric compatible API (the PyArray_* functions) by including arrayobject.h and calling import_array() in your module init function. You can use the extended API (the NA_* functions) by including libnumarray.h and calling import_libnumarray() in your init function. Because of the partitioning, all numarray extensions must be recompiled to work with 1.0. Extensions using *both* APIs must include both files in order to compile, and must do both imports in order to run. Both APIs share a common PyArrayObject struct. 2. numarray extension writers should note that the documented use of PyArray_INCREF and PyArray_XDECREF (in numarray) was found to be incompatible with Numeric and these functions have therefore been removed from the supported API and will now result in errors. 3. The numarray.objects.ObjectArray parameter order was changed. 4. The undocumented API function PyArray_DescrFromTypeObj was removed from the Numeric compatible API because it is not provided by Numeric. III. BUGS FIXED / CLOSED See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. 979834 convolve2d parameter order issues 979775 ObjectArray parameter order 979712 No exception for invalid axis 979702 too many slices fails silently 979123 A[n:n] = x no longer works 979028 matrixmultiply precision 976951 Unpickled numarray types unsable? 977472 CharArray concatenate 970356 bug in accumulate contiguity status 969162 object array bug/ambiguity 963921 bitwise_not over Bool type fails 963706 _reduce_out: problem with otype 942804 numarray C-API include file 932438 suggest moving mlab up a level 932436 mlab docs missing 857628 numarray allclose returns int 839401 Argmax's behavior has changed for ties 817348 a+=1j # Not converted to complex 957089 PyArray_FromObject dim check broken 923046 numarray.objects incompatibility 897854 Type conflict when embedding on OS X 793421 PyArray_INCREF / PyArray_XDECREF deprecated 735479 Build failure on Cygwin 1.3.22 (very current install). 870660 Numarray: CFLAGS build problem 874198 numarray.random_array.random() broken? 874207 not-so random numbers in numarray.random_array 829662 Downcast from Float64 to UInt8 anomaly 867073 numarray diagonal bug? 806705 a tale of two rank-0's 863155 Zero size numarray breaks for loop 922157 argmax returns integer in some cases 934514 suggest nelements -> size 953294 choose bug 955314 strings.num2char bug? 955336 searchsorted has strange behaviour 955409 MaskedArray problems 953567 Add read-write requirement to NA_InputArray 952705 records striding for > 1D arrays 944690 many numarray array methods not documented 915015 numarray/Numeric incompatabilities 949358 UsesOpPriority unexpected behavior 944678 incorrect help for "size" func/method 888430 NA_NewArray() creates array with wrong endianess 922798 The document Announce.txt is out of date 947080 numarray.image.median bugs 922796 Manual has some dated MA info 931384 What does True mean in a mask? 931379 numeric.ma called MA in manual 933842 Bool arrays don't allow bool assignment 935588 problem parsing argument "nbyte" in callStrideConvCFunc() 936162 problem parsing "nbytes" argument in copyToString() 937680 Error in Lib/numerictypes.py ? 936539 array([cmplx_array, int_array]) fails 936541 a[...,1] += 0 crashes interpreter. 940826 Ufunct operator don't work 935882 take for character arrays? 933783 numarray, _ufuncmodule.c: problem setting buffersize 930014 fromstring typecode param still broken 929841 searchsorted type coercion 924841 numarray.objects rank-0 results 925253 numarray.objects __str__ and __repr__ 913782 Minor error in chapter 12: NUM_ or not? 889591 wrong header file for C extensions 925073 API manual comments 924854 take() errors 925754 arange() with large argument crashes interpreter 926246 ufunc reduction crash 902153 can't compile under RH9/gcc 3.2.2 916876 searchsorted/histogram broken in versions 0.8 and 0.9 920470 numarray arange() problem 915736 numarray-0.9: Doc/CHANGES not up to date WHERE ----------- Numarray-1.0 windows executable installers, source code, and manual is here: http://sourceforge.net/project/showfiles.php?group_id=1369 Numarray is hosted by Source Forge in the same project which hosts Numeric: http://sourceforge.net/projects/numpy/ The web page for Numarray information is at: http://stsdas.stsci.edu/numarray/index.html Trackers for Numarray Bugs, Feature Requests, Support, and Patches are at the Source Forge project for NumPy at: http://sourceforge.net/tracker/?group_id=1369 REQUIREMENTS ------------------------------ numarray-1.0 requires Python 2.2.2 or greater. AUTHORS, LICENSE ------------------------------ Numarray was written by Perry Greenfield, Rick White, Todd Miller, JC Hsu, Paul Barrett, Phil Hodge at the Space Telescope Science Institute. We'd like to acknowledge the assitance of Francesc Alted, Paul Dubois, Sebastian Haase, Tim Hochberg, Nadav Horesh, Edward C. Jones, Eric Jones, Jochen K"upper, Travis Oliphant, Pearu Peterson, Peter Verveer, Colin Williams, and everyone else who has contributed with comments, bug reports, or patches. Numarray is made available under a BSD-style License. See LICENSE.txt in the source distribution for details. -- Todd Miller jmiller at stsci.edu _________________________________________________ AstroPy mailing list - astropy at stsci.edu http://www.astro.washington.edu/owen/AstroPy.html From stephen.walton at csun.edu Tue Jul 6 12:16:15 2004 From: stephen.walton at csun.edu (Stephen Walton) Date: Tue, 06 Jul 2004 09:16:15 -0700 Subject: [AstroPy] ANN: numarray-1.0 released In-Reply-To: <40EAA228.2010508@stsci.edu> References: <40EAA228.2010508@stsci.edu> Message-ID: <1089130574.6696.6.camel@localhost.localdomain> On Tue, 2004-07-06 at 05:59, Paul Barrett wrote: > Release Notes for numarray-1.0 What are the chances of numarray-1.0 being integrated with SciPy, replacing numeric? My quick read of the release notes indicates that the first two of the issues in http://www.scipy.org/documentation/numarraydiscuss.html have been addressed in the new version of numarray. -- Stephen Walton Dept. of Physics & Astronomy, CSU Northridge _________________________________________________ AstroPy mailing list - astropy at stsci.edu http://www.astro.washington.edu/owen/AstroPy.html From perry at stsci.edu Mon Jul 12 16:01:56 2004 From: perry at stsci.edu (Perry Greenfield) Date: Mon, 12 Jul 2004 16:01:56 -0400 Subject: [AstroPy] ANN: numarray-1.0 released In-Reply-To: <1089130574.6696.6.camel@localhost.localdomain> Message-ID: > -----Original Message----- > From: owner-astropy at stsci.edu [mailto:owner-astropy at stsci.edu]On Behalf > Of Stephen Walton > What are the chances of numarray-1.0 being integrated with SciPy, > replacing numeric? My quick read of the release notes indicates that > the first two of the issues in > http://www.scipy.org/documentation/numarraydiscuss.html have been > addressed in the new version of numarray. > > -- > Stephen Walton > Dept. of Physics & Astronomy, CSU Northridge There are really two different issues that are raised by your question: 1) numarray being integrated with scipy 2) Numeric being replaced with numarray Doing 2 would presumably handle 1, but 1 can be done without doing 2. The single biggest sticking point to 2 is the small array performance issue (the three others referred to by the url above are not serious obstacles and should be dealt with before long). Removing the remaining difference in performance for small arrays is likely to be a lot of work and requires resources we (STScI) don't have to deal with an issue that isn't (currently anyway) a problem for us. To the extent that there is a large enough community of users unwilling to suffer the slower performance for small arrays (at least to the extent that they are willing to continue maintaining Numeric) then both Numeric and numarray may coexist for a while. The current move seems to be to unify their behavior so that they can be used interchangeably. That being said, we still are very interested in making scipy work with numarray as well as Numeric. We were hoping to do that in the past year. Our efforts along those lines have been sidetracked by work on contributing to a plotting package that will work with numarray (that being matplotlib) which we are still treating as a higher priority than scipy functionality. I'm hoping that in the next few months that some of the effort being devoted to that and other projects can be redirected to making scipy work with numarray. A small part of work along those lines has been done, and the next week or two is being set aside to complete work with f2py and numarray (f2py is used by a large part of scipy). I see the scipy effort as being done in phases. It could take a while to see all of it ported. It would be useful to get feedback about what is most important to astronomers, so feel free to let us know. Perry _________________________________________________ AstroPy mailing list - astropy at stsci.edu http://www.astro.washington.edu/owen/AstroPy.html From barrett at stsci.edu Wed Jul 14 19:10:16 2004 From: barrett at stsci.edu (Paul Barrett) Date: Wed, 14 Jul 2004 19:10:16 -0400 Subject: [AstroPy] ANN matplotlib-0.60.2: python graphs and charts Message-ID: <40F5BD58.1050600@stsci.edu> matplotlib is a 2D plotting library for python. You can use matplotlib interactively from a python shell or IDE, or embed it in GUI applications (WX, GTK, and Tkinter). matplotlib supports many plot types: line plots, bar charts, log plots, images, pseudocolor plots, legends, date plots, finance charts and more. What's new since matplotlib 0.50 This is the first wide release in 5 months and there has been a tremendous amount of development since then, with new backends, many optimizations, new plotting types, new backends and enhanced text support. See http://matplotlib.sourceforge.net/whats_new.html for details. * Todd Miller's tkinter backend (tkagg) with good support for interactive plotting using the standard python shell, ipython or others. matplotlib now runs on windows out of the box with python + numeric/numarry * Full Numeric / numarray integration with Todd Miller's numerix module. Prebuilt installers for numeric and numarray on win32. Others, please set your numerix settings before building matplotlib, as described on http://matplotlib.sourceforge.net/faq.html#NUMARRAY * Mathtext: you can write TeX style math expressions anywhere in your figure. http://matplotlib.sourceforge.net/screenshots.html#mathtext_demo. * Images - figure and axes images with optional interpolated resampling, alpha blending of multiple images, and more with the imshow and figimage commands. Interactive control of colormaps, intensity scaling and colorbars - http://matplotlib.sourceforge.net/screenshots.html#layer_images * Text: freetype2 support, newline separated strings with arbitrary rotations, Paul Barrett's cross platform font manager. http://matplotlib.sourceforge.net/screenshots.html#align_text * Jared Wahlstrand's SVG backend (alpha) * Support for popular financial plot types - http://matplotlib.sourceforge.net/screenshots.html#finance_work2 * Many optimizations and extension code to remove performance bottlenecks. pcolors and scatters are an order of magnitude faster. * GTKAgg, WXAgg, TkAgg backends for http://antigrain.com (agg) rendering in the GUI canvas. Now all the major GUIs (WX, GTK, Tk) can be used with a common (agg) renderer. * Many new examples and demos - see http://matplotlib.sf.net/examples or download the src distribution and look in the examples dir. Documentation and downloads available at http://matplotlib.sourceforge.net. John Hunter _______________________________________________ SciPy-user mailing list SciPy-user at scipy.net http://www.scipy.net/mailman/listinfo/scipy-user _________________________________________________ AstroPy mailing list - astropy at stsci.edu http://www.astro.washington.edu/owen/AstroPy.html