Skip to content

Voigt Fitting Goals

Jan Cami edited this page Aug 13, 2024 · 6 revisions

Following our brainstorm on Aug 7, here is what we decided about what the code should be able to do:

  • No restrictions on input (wavelength & intensity): no specific resolving power, not necessarily normalized.

  • Should be able to fit absorption profiles, and include a Chebyshev polynomial continuum fitting term. In a later stage, we may add emission.

  • There should be Quality Control: some measurement of quality of fit (e.g. chi-square) and should return uncertainties on the parameters (either through chi-square or Monte Carlo approach).

  • Code should be able to automatically fit multiple components in the same line and use e.g. an F-test to decide how many components to keep.

  • We should stick to functions where it is the optical depth that is the Voigt profile and then fit exp(-tau), rather than the line directly.

  • There are two slightly different flavours of the fitting:

    1. Fitting an unknown line; function returns e.g. central wavelength, width (and equivalent width) in Angstroems and depth in Intensity units.

    2. Fitting a known line, with known rest wavelengths and oscillator strengths. This should return the column density and the other parameters in velocity space.

  • The program should be able to do constrained fitting, e.g. simultaneously fit different transitions of the same species.

  • Some more discussion will be needed to decide on what output, plots and save/restore options we need to build in.

The Voigt Function: see VoigtFit paper, Eq. 2—​4. Will return exp(-tau).

There are two cases: . Known line: f and lambda are known; 4 parameters remain: b, Gamma, N, v_cloud (note that v_cloud is not included in the VoigtFit paper). . Unknown line: ambiguity between f and N for intensity, and between lambda and v_cloud for position of line. Use the same function as for the known line, but with f=1, and with the wavelength set to some value (e.g. middle of spectrum of interest); when returning the results, make sure we include the actual central wavelength.

Clone this wiki locally