-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multidimensional Arrays #3
Comments
I know we are crossing the streams here a little, and I apologize for the lapse in communication. I do think that fits-parse or a sister library could be opinionated in providing nice convience apis for using good off-the-shelf array processing libraries. Maybe this means having a fits-parse-massiv and fits-parse-hmatrix, etc. Maybe we just keep the core unopinionated... I'm not sure. I continue to stay on the fence here because I'm not doing analysis these days so I'm a little removed from understanding what the end user really needs when they get to the analysis phase. Is it more useful to just give a big Boxed Vector and let the end-user transform that into the native array processing structure they want to use or would it be better to have interfaces that already provide the Massiv or HMatrix or Accellerate or what-have-you structures ready to use? This is where I'd really take a lot of input from you (@seanhess ) or other library users. Maybe we can even schedule a short call to talk through some options and see what would make the most sense long-term. As a first take I like this approach and the idea of providing some generic implementations for 6, 7, 8 dimensions or more is probably just fine. If someone has a need for more later, we can always add them (maybe even get a free patch out of it :) ). |
Thanks for getting back to me! I'm neck deep in FITS for my current project. I need enough autonomy to iterate and refactor to support my work. I think another repo is the easiest way to accomplish that, but I'm open to alternative ideas. I've started a new package/repo called "telescope", with a more opinionated and less focused approach. Take a look at some work-in-progress docs here: https://hackage.haskell.org/package/telescope-0.1.0/candidate/docs/Telescope-Fits.html
I had to experiment for a few days to figure out how to delay evaluation on a big (3GB) file I was working on. It takes 10 seconds or so to convert the whole thing into a vector or anything similar. Using a delayed array (
Sure, I'd be down for a call! |
Hi @krakrjak!
I'm finally at the point where I need to use the library to rewrite some FITS files. Specifically, I'm reading a 4d single-HDU FITS image, and then writing out multiple files, each with multiple HDUs containing 2d images.
I did some research on options for working with multidimensional data, and also attempted to write something super simple. I settled on Data.Massiv being the best option. It's easy to use, performant, actively maintained, and popular.
I wrote an example of how to decode images into arrays of various shapes. See below.
Do we want to incorporate something like this into the library? Have you put any thought into more robust reading and writing of data?
The text was updated successfully, but these errors were encountered: