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

Change ssb_to_psb_xyz_ICRS to not pass PINT a quantity #382

Merged
merged 4 commits into from
Apr 21, 2024

Conversation

tcromartie
Copy link
Contributor

@vhaasteren
Copy link
Member

vhaasteren commented Apr 18, 2024

Thank you for fixing this @tcromartie. I just looked at this, and I'm not convinced Enterprise should be changed in this way. It depends a bit on what is meant with the docstring. As I said in the PINT issue, PINT is inconsistent between Equatorial and Ecliptic coordinates. PINT should be accepting units, and Enterprise is providing them. But apparently the 'quantity' that works for Ecliptic coordinates is not ok. Why would the Ecliptic coordinate model accept quantities, and the Equatorial coordinate model not accept them?

Perhaps the best way to make this consistent is to fix PINT, and in Enterprise do this:

self._pos_t = model.components[which_astrometry].ssb_to_psb_xyz_ICRS(Time(model.get_barycentric_toas(toas),format='mjd')).value

Want to change the PR in that way @tcromartie ?

Copy link
Member

@vhaasteren vhaasteren left a comment

Choose a reason for hiding this comment

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

Thanks!

Change according to review and I'll merge

@@ -367,7 +367,7 @@ def __init__(self, toas, model, sort=True, drop_pintpsr=True, planets=True):
"AstrometryEquatorial" if "AstrometryEquatorial" in model.components else "AstrometryEcliptic"
)

self._pos_t = model.components[which_astrometry].ssb_to_psb_xyz_ICRS(model.get_barycentric_toas(toas)).value
self._pos_t = model.components[which_astrometry].ssb_to_psb_xyz_ICRS(model.get_barycentric_toas(toas).value)
Copy link
Member

Choose a reason for hiding this comment

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

Add at the top:

from astropy.time import Time

Then change this line to:

self._pos_t = model.components[which_astrometry].ssb_to_psb_xyz_ICRS(Time(model.get_barycentric_toas(toas),format='mjd')).value

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Seems good, will do this afternoon! Sorry for the delay

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@vhaasteren I thought my second commit was failing because I didn't run black, but it looks like that induced way more changes. I didn't see anything official about this in the contributing guidelines. What are best practices here?

Copy link
Member

Choose a reason for hiding this comment

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

Definitely need black! But can't be the latest version, I think.... Check the dev requirements? I'm on my phone and will look after I respond here...

Copy link
Member

Choose a reason for hiding this comment

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

Yeah. v23.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks so much Scott! I actually ran test/lint/docs this time (with correct black ver) so hopefully it'll be ok now :)

Copy link
Member

Choose a reason for hiding this comment

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

Yeah, some of the old committed code was from before black. So if you run black on the whole file yourself, you re-format more than just what you changed. Not very neat. But it' not wrong to put it in, let's just commit it.

@vhaasteren vhaasteren merged commit 6ab5d06 into nanograv:master Apr 21, 2024
11 checks passed
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.

3 participants