This pull includes a fairly major reworking of the TargetList and OpticalSystem prototypes, and updates to multiple downstream implementations. The OpticalSystem prototype is updated to perform a basic set of integration time calculations assuming a non-photon counting model (a photon counting model is provided by the Nemati implementation). This replaces the original behavior where the prototype generated fake integration times unrelated to the inputs. The OpticalSystem initialization is restructured to allow for easier expansion of inputs in downstream implementations, and to also keep track of allowed keywords in the various OpticalSystem dictionaries.
In TargetList, calculation of stellar fluxes is significantly updated via the inclusion of the synphot package as an upstream dependency. All relevant calculations using stellar template spectra and blackbody spectra are offloaded to synphot. There are also numerous updates to caching mechanisms to ensure proper caching of computed products.
This pull also includes extensive additions and updates to the documentation, detailing all of the changes.
Type of change
Please delete options that are not relevant (and this line).
Bug fix (non-breaking change which fixes an issue)
New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)
This change requires a documentation update
Reference any relevant issues (don't forget the #)
128 - The new stellar flux calculation uses the closest available catalog band value (to the observing band).
163 - The updates to the optical system allow for use of stellar-diameter dependent core mean intensity inputs.
164 - The OpticalSystem now includes two new keywords: input_angle_units and core_platescale_units. These default to arcseconds and l/D units, respectively, but can be changed to allow for any arbitrary unit inputs.
252 - The new processing of core_mean_intensity and core_contrast close this bug.
253 - The new get_coro_param no longer uniformly enforces a maximum value of 1 on all inputs, closing this bug.
274 - Fixed by new starFlux calculation.
275 and #280 - Fixed by updates to spectral template library
316 - All photometry calculations are now handled by synphot.
Checklist before requesting a review
[x] I have verified that all unit tests pass in a clean virtual environment and added new unit tests, as needed
[x] I have run e2eTests and added new test scripts, as needed
[x] I have verified that all docstrings are properly formatted and added new documentation, as needed
Describe your changes
This pull includes a fairly major reworking of the TargetList and OpticalSystem prototypes, and updates to multiple downstream implementations. The OpticalSystem prototype is updated to perform a basic set of integration time calculations assuming a non-photon counting model (a photon counting model is provided by the Nemati implementation). This replaces the original behavior where the prototype generated fake integration times unrelated to the inputs. The OpticalSystem initialization is restructured to allow for easier expansion of inputs in downstream implementations, and to also keep track of allowed keywords in the various OpticalSystem dictionaries.
In TargetList, calculation of stellar fluxes is significantly updated via the inclusion of the synphot package as an upstream dependency. All relevant calculations using stellar template spectra and blackbody spectra are offloaded to synphot. There are also numerous updates to caching mechanisms to ensure proper caching of computed products.
This pull also includes extensive additions and updates to the documentation, detailing all of the changes.
Type of change
Please delete options that are not relevant (and this line).
Reference any relevant issues (don't forget the #)
128 - The new stellar flux calculation uses the closest available catalog band value (to the observing band).
163 - The updates to the optical system allow for use of stellar-diameter dependent core mean intensity inputs.
164 - The OpticalSystem now includes two new keywords:
input_angle_units
andcore_platescale_units
. These default to arcseconds and l/D units, respectively, but can be changed to allow for any arbitrary unit inputs.252 - The new processing of
core_mean_intensity
andcore_contrast
close this bug.253 - The new
get_coro_param
no longer uniformly enforces a maximum value of 1 on all inputs, closing this bug.274 - Fixed by new
starFlux
calculation.275 and #280 - Fixed by updates to spectral template library
316 - All photometry calculations are now handled by synphot.
Checklist before requesting a review
e2eTests
and added new test scripts, as needed