gaia-dpci / GaiaXPy

Gaia BP/RP spectra package
BSD 3-Clause "New" or "Revised" License
36 stars 9 forks source link

Request for more information on the process, especially the calibration files #108

Open ajeb78 opened 3 months ago

ajeb78 commented 3 months ago

Is your feature request related to a problem? Please describe. It's not really a feature request but there doesn't seem to be a better place to ask the question, so I'm asking it here. Perhaps in terms of a feature I'm asking for better documentation on the inner workings - the documentation is fine from a user perspective but it could do with more detail on what is done "under the hood". Anyway, for the time being if you could answer the query below that would be fantastic.

I'm trying to reimplement a subset of the functionality in C: I need to be able to convert continuous spectra into sampled representation in a project written in C where python is an unacceptable dependency.

As I understand it, the process is:

  1. Define sampling (wl_min to wl_max at a particular interval.
  2. Convert the real wavelengths to pseudo-wavelength, scaled so that the full Gaia spectra wavelength region (338-1020nm) maps onto pseudo-wavelength range 0-60.
  3. Create a design matrix so that for every wavelength sample column there are 55 rows corresponding to the 55 Hermite functions evaluated at the pseudo-wavelength.
  4. Multiply the design matrix by the Hermite basis coefficients from the Gaia xp_continuous spectrum product.
  5. Scale the pseudo-wavelengths back to absolute wavelengths.

I'd be grateful for any corrections to the above workflow!

In addition I'd also be grateful for an insight into the calibration process: there are a number of files in the config directory (bpC03, rpC03 and OptimisedCalibrationBases_BpId32_RpId37_withNormalisation.xml) and more files in the config/filters directory. Are these only required for conversion between photometry systems, or do I need to use any of these files in my workflow (and if so, where and how is the workflow modified?)