TL;DR
Cygrid is a high-performance Python library for data gridding that uses convolution and parallel processing to efficiently resample irregular data onto regular grids, outperforming existing methods.
Contribution
Introduction of cygrid, a fast, versatile, and parallelized gridding module for Python that supports arbitrary kernels and the FITS standard, with performance analysis.
Findings
Cygrid scales between O(n) and O(n log n) with input size.
It significantly outperforms SciPy's interpolation methods.
Parallelization with multiple CPU cores improves speed.
Abstract
Data gridding is a common task in astronomy and many other science disciplines. It refers to the resampling of irregularly sampled data to a regular grid. We present cygrid, a library module for the general purpose programming language Python. Cygrid can be used to resample data to any collection of target coordinates, although its typical application involves FITS maps or data cubes. The FITS world coordinate system standard is supported. The regridding algorithm is based on the convolution of the original samples with a kernel of arbitrary shape. We introduce a lookup table scheme that allows us to parallelize the gridding and combine it with the HEALPix tessellation of the sphere for fast neighbor searches. We show that for input data points, cygrids runtime scales between O(n) and O(n log n) and analyze the performance gain that is achieved using multiple CPU cores. We also…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
