-
Notifications
You must be signed in to change notification settings - Fork 6
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
Prioritize date_start
when defining WCS and coordinate frame
#98
Prioritize date_start
when defining WCS and coordinate frame
#98
Conversation
In addition, it seems that the solar rotation compensation is not always on. I did not find helpful information in the FITS header indicating whether the solar rotation is compensated, except for |
Great questions! We do have all of the pointing and timing information in the EIS level-1 HDF5 files, which are loading into As to @yjzhu-solar's point about solar rotation, I am told that adjustments for rotation are done on the spacecraft side, rather than the instrument side. Almost all on-disk rasters should be taken while the spacecraft actively tracking and adjusting for rotation while off-limb observations are typically taken without tracking. The tracking mode is indicated by the Thanks for catching this! Since correcting the default timestamps may affect coordinate conversions to/from an |
It's a fair point that this is a breaking change, but I would claim this is really a bugfix and is the way it should've worked from the start (I really should have read the accompanying software note before assuming these were defined at |
.. note:: This property is overridden because `sunpy.map.GenericMap` sets | ||
this to be the ``.date_average`` which in this case is the midpoint | ||
of the raster. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Isn't this the syntax for this?
.. note:: This property is overridden because `sunpy.map.GenericMap` sets | |
this to be the ``.date_average`` which in this case is the midpoint | |
of the raster. | |
.. note:: | |
This property is overridden because `sunpy.map.GenericMap` sets | |
this to be the ``.date_average`` which in this case is the midpoint | |
of the raster. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe either works
Thank you for pointing out the correct FITS keyword! Should we determine the timestamp to use based on this keyword? Is it better to issue a warning about the solar rotation tracking status and the decision on which timestamp to use? |
Co-authored-by: Stuart Mumford <stuart@cadair.com>
Finally merging this in and will start work on updating the fits header for better compliance with the FITS-4 standard (see #100) and include more spacecraft- and instrument-specific keywords (such as the |
As pointed out by @yjzhu-solar, in EIS SW Note 9, Section 2.4, it states that,
Previously,
EISMap
was overriding.date
in order to prioritizedate_average
, the midpoint of the raster, clearly in contrast to the above statement about how the pointing keywords are defined. As such, this PR does two things:.date
. Now,EISMap.date
will fall back to that insunpy.map.GenericMap
which will prioritizeDATE-OBS
andDATE-BEG
beforeDATE-AVG
.reference_date
property which always prioritizesdate_start
. (see below for rationale of why this was added).This fix is somewhat complicated by the fact that date handling in
sunpy
was recently overhauled (see sunpy/sunpy#7682 for more information). However, with these fixes,EISMap
should still use the correct date in both current and future versions of sunpy:.date
is used to to define the WCS as well as coordinate frame. As such, with this PR,.date_start
will now be used to define the WCS and coordinate frame..reference_date
is used to define the coordinate frame. Additionally, on the WCS, thedateavg
property is set to to.reference_date
such that the start date of the raster is appropriately prioritized.I've also adjusted and simplified the tests for the date handling in
EISMap
as most of that testing is now covered inGenericMap
anyway.Regarding the definitions of the EIS pointing keywords, two questions: