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

Make a new instrument object for the NIRC2 post electronics upgrade? #32

Open
abhimat opened this issue May 17, 2024 · 2 comments
Open

Comments

@abhimat
Copy link
Contributor

abhimat commented May 17, 2024

I'm currently updating the pipeline to handle the changes to the output data since the new electronics upgrades on NIRC2. I'm not sure if it's best to leave NIRC2 as one Instrument object, or to have separate NIRC2 Instrument objects for NIRC2 pre-upgrade and post-upgrade.

Namely, several of the FITS header keywords have changed, so it would be easiest to start a new Instrument object with new hdr_keys. But I'm not sure if that's the cleanest way to approach this, or how I should name the new and old Instrument objects for least confusion for other users!

@jluastro : do you have any thoughts on how to best approach implementing the necessary changes for the NIRC2 electronics upgrade?

@jluastro
Copy link
Contributor

jluastro commented May 17, 2024 via email

@abhimat
Copy link
Contributor Author

abhimat commented May 17, 2024

Thanks! The main challenge I'm having with using the existing NIRC2 object is that the hdr_keys dictionary is set up during object instantiation (when the object doesn't yet know what's in the file headers). There aren't many header changes that affect KAI, but I would want to specify some of the new header name changes there.

As it is, we don't pass in the FITS header as a keyword during instrument object instantiation in __init__() (lines 66--92 here), so I couldn't figure out a good way to determine if we're working with the old or new NIRC2 electronics during this stage of the instrument call. Perhaps having an optional keyword in the __init__() function of the NIRC2 instrument object would allow determining if we're working with pre-upgrade or post-upgrade files?

In the other functions, we pass in the FITS header to the function. So determining the date from the header to determine pre- or post-upgrade is pretty straightforward in the existing NIRC2 object!

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

No branches or pull requests

2 participants