-
Notifications
You must be signed in to change notification settings - Fork 10
Roadmap #3
Copy link
Copy link
Open
Labels
planningThis is a discussion about the code and implementations.This is a discussion about the code and implementations.
Metadata
Metadata
Assignees
Labels
planningThis is a discussion about the code and implementations.This is a discussion about the code and implementations.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Below is a broad-strokes road map of the design of
Spectra.jlTypes
General spectrum types
AbstractSpectrumSpectrum <: AbstractSpectrumThis would be a type very similar to python's
SpecUtils.spectrum1d. It contains a spectral axis (wavelength) and flux. This flux could be signified with a standard array or aMeasurements.jlarray signifying measurement uncertainty. Note that this is a design choice over having an explicitsigmaarray within theSpectrumtype.CountSpectrum <: SpectrumSimilar to the above but carries an extra array around with the counts such that proper addition between spectra could happen.
EchelleSpectrum <: AbstractSpectrumNot sure the best way to implement this. It seems like a natural extension of
Spectrumbut into two dimensions. Is it appropriate to keep this a separate type, or shouldSpectrumhave an intrinsic dimension and an echelle spectrum would just be aSpectrum{..., 2}These types should be easy to create and have decent interoperability with
FITSIO.jlandWCS.jl.Operations
I would definitely enjoy some input on these, I have limited experience
Use
DustExtinction.jlIn general, I'm not certain whether it's appropriate to put these explicitly here or put the underlying broadening mechanics in
AstroBaseand provide the explicit instrumental or rotational broadening ops here (cc @giordano).Currently using
Interpolations.jlbut running into some problems. May switch toDiereckx.jl. It will be nice to have a function that can resample to a minimum doppler content. The way I've implemented this before is to determine the minimalA few ideas- rescale to a given integrated flux (as a value) or to another spectrum. Can optionally use a bandpass to only scale in a certain area (see photometry below)
This would be similar to what
PySynphotoffers, where a user specifies a bandpass (either a standard likeVorHST-OIII, or aDistributions-like object with a pdf) and we can get the respective integrated flux density.Spectral Library Interface
I'm not certain if this is appropriate here or in a separate package, but it would be nice to have standardized interfaces to common model libraries (like PHOENIX). My gut says this should be a different package, but I'm not convinced yet. For an example of such an interface take a look at the work I've done here.