This is the mail archive of the gsl-discuss@sourceware.org mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: interp2d discussion


On 01/05/2014 01:31 PM, David Zaslavsky wrote:
I just noticed this message seems not to have made it out to the list
when I originally sent it on Friday. So I'm trying again.

-----

Hi Patrick,

Thanks for the feedback. First let me say that texinfo documentation
will not be a problem. I'm happy to add it, but it's just a matter of
time - I have a lot of other things going on so it will probably take on
the order of some weeks for me to find time to do that.


On the indexing issue: interp2d treats the x index as the column
coordinate and the y index as the row coordinate, so that xsize is the
number of columns and ysize is the number of rows. This is done for
compatibility with Cartesian coordinates: most people envision x as the
horizontal coordinate and y as the vertical one. Given this
interpretation, the current implementation of INDEX_2D does use
row-major order.

This makes sense, we can probably leave it the way it is, we'll just
need to make sure the documentation is very clear on how to construct
the z array so users aren't confused with the indexing.



Also, I should mention that I don't consider interp2d to be
feature-complete, nor am I in any particular rush to make it complete.
There are some features I'm interested in adding, including additional
interpolation schemes, more interpolation methods without boundary
checks (for extrapolation), etc. How would this move affect my ability
to continue to add features?

It already has bilinear and bicubic implemented. This is more than
enough to make it useful to people so I think we can put it in now and
continue adding features.

I saw from some comments that you used some code from ALGLIB - can we assume you're using the GPL v2 version of ALGLIB? In that case there shouldn't be any problem putting it in GSL under GPL v3.

The next steps would be to get the code ready for inclusion in GSL. This includes:

1. renaming external functions to have the gsl_ prefix and make sure all
   other functions are declared static
2. documentation
3. tests
4. I suggest checking out the 'master' branch of gsl and making your own branch 'interp2d' or similar. Once your branch is ready we can discuss how to merge it - you could either post it to somewhere like github or if you'd like, I don't see any problem with giving you access to savannah git so you can continue to add features, etc.

Patrick


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]