[Numpy-discussion] Advice on converting Numarray C extension?
Russell E. Owen
Tue Jun 30 13:31:35 CDT 2009
Charles R Harris <email@example.com> wrote:
> On Mon, Jun 29, 2009 at 4:17 PM, Russell E. Owen
> > In article
> > <firstname.lastname@example.org>,
> > Charles R Harris <email@example.com> wrote:
> > > On Mon, Jun 29, 2009 at 3:03 PM, Russell E. Owen
> > > <firstname.lastname@example.org>wrote:
> > >
> > > > I have an old Numarray C extension (or, rather, a Python package
> > > > containing a C extension) that I would like to convert to numpy
> > > > (in a way that is likely to be supported long-term).
> > >
> > > How big is the extension and what does it do?
> > It basically contains 2 functions:
> > 1: radProfile: given a masked image (2d array), a radius and a desired
> > center: compute a new 1d array whose value at index r is the sum of all
> > unmasked pixels at radius r.
> > 2: radAsymm: given the same inputs as radProfile, return a (scalar)
> > measure of radial asymmetry by computing the variance of unmasked pixels
> > at each radius and combining the results.
> > The original source file is about 1000 lines long, of which 1/3 to 1/2
> > is the basic C code and the rest is Python wrapper.
> It sounds small enough that you should be able to update it to the numpy
> interface. What functions do you need? You should also be able to attach a
> copy (zipped) if it is small enough, which might help us help you.
It is the PyGuide package
a 525k zip file. The extension code is in the src directory.
I would certainly be grateful for any pointers to how the old numarray C
API functions map to the new numpy ones. I would prefer to use the new
numpy API if I can figure out what to do.
More information about the Numpy-discussion