Skip to content
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

Add basic support for WCS pixelization. #567

Merged
merged 12 commits into from
Jun 12, 2022
Merged

Add basic support for WCS pixelization. #567

merged 12 commits into from
Jun 12, 2022

Conversation

tskisner
Copy link
Member

  • Add a new PixelsWCS operator

  • Add I/O routines

  • Add unit tests for a couple of projections

Currently this work adds a dependency on pixell, which is used
only to build the WCS parameters. This is something we could
implement internally if needed. For example, if we want to
support more architectures than are currently supported by
pixell wheels.

@tskisner tskisner force-pushed the toast3_wcs branch 2 times, most recently from ae00caa to 09c0eb2 Compare June 7, 2022 05:36
@tskisner
Copy link
Member Author

tskisner commented Jun 7, 2022

The unit test failures on MacOS are reproducible (a segfault inside the lapack routines of the Apple accelerate framework), but I have not tracked down what is triggering them. In addition to the standard WCS projections added to this PR, the pixels class now supports specifying a shared data object containing the variable Lon/Lat center of the projection. This allows us to make maps in source-centered coordinates. As an example, here are some plots from the unit tests showing the same data with a moving point source. One map was made in fixed RA/DEC coordinates and the other specified the fake source ephemeris as the center offset:
source_CAR_notrack_map fits_I
source_CAR_map fits_I

@tskisner tskisner requested a review from keskitalo June 7, 2022 06:55
* Add a new PixelsWCS operator

* Add support for source-centered projection

* Add ScanWCSMap and ScanWCSMask operators

* Add I/O routines

* Add unit tests for use of projections in mapmaking

Currently this work adds a dependency on pixell, which is used
only to build the WCS parameters.  This is something we could
implement internally if needed.  For example, if we want to
support more architectures than are currently supported by
pixell binary wheels.
when autoscaling.  Several unrelated small fixes.
Copy link
Member

@keskitalo keskitalo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent. This makes a great addition to TOAST portfolio of capabilities.

src/toast/ops/mapmaker.py Show resolved Hide resolved
src/toast/ops/noise_estimation.py Show resolved Hide resolved
src/toast/ops/pixels_wcs.py Show resolved Hide resolved
src/toast/ops/pixels_wcs.py Show resolved Hide resolved
src/toast/ops/scan_wcs.py Show resolved Hide resolved
@tskisner tskisner merged commit d0cd6b6 into toast3 Jun 12, 2022
@tskisner tskisner deleted the toast3_wcs branch June 12, 2022 23:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants