Flux calibration

Data Structures

struct  muse_flux_object
 Flux object to store data needed while computing the flux calibration. More...

Enumerations

enum  muse_flux_interpolation_type {
  MUSE_FLUX_RESP_FILTER = 0, MUSE_FLUX_RESP_FLUX, MUSE_FLUX_RESP_STD_FLUX, MUSE_FLUX_RESP_EXTINCT,
  MUSE_FLUX_TELLURIC
}
 

Type of table interpolation to use.

More...
enum  muse_flux_profile_type { MUSE_FLUX_PROFILE_MOFFAT = 0, MUSE_FLUX_PROFILE_GAUSSIAN, MUSE_FLUX_PROFILE_CIRCLE, MUSE_FLUX_PROFILE_EQUAL_SQUARE }
 

Type of optimal profile to use.

More...
enum  muse_flux_selection_type { MUSE_FLUX_SELECT_BRIGHTEST = 0, MUSE_FLUX_SELECT_NEAREST }
 

Type of star selection to use.

More...
enum  muse_flux_smooth_type { MUSE_FLUX_SMOOTH_NONE = 0, MUSE_FLUX_SMOOTH_MEDIAN, MUSE_FLUX_SMOOTH_PPOLY }
 

Type of response curve smoothing to use.

More...

Functions

muse_flux_objectmuse_flux_object_new (void)
 Allocate memory for a new muse_flux_object object.
void muse_flux_object_delete (muse_flux_object *aFluxObj)
 Deallocate memory associated to a muse_flux_object.
static double muse_flux_reference_table_sampling (cpl_table *aTable)
 Compute average sampling for a MUSE-format flux reference table.
cpl_error_code muse_flux_reference_table_check (cpl_table *aTable)
 Check and/or adapt the standard flux reference table format.
double muse_flux_response_interpolate (const cpl_table *aResponse, double aLambda, double *aError, muse_flux_interpolation_type aType)
 Compute linearly interpolated response of some kind at given wavelength.
muse_imagemuse_flux_integrate_cube (muse_datacube *aCube, cpl_apertures *aApertures, muse_flux_profile_type aProfile)
 Integrate the flux of the standard star(s) given a datacube.
cpl_error_code muse_flux_integrate_std (muse_pixtable *aPixtable, muse_flux_profile_type aProfile, muse_flux_object *aFluxObj)
 Reconstruct a cube, detect the standard star, and integrate its flux.
cpl_error_code muse_flux_response_compute (muse_flux_object *aFluxObj, muse_flux_selection_type aSelect, double aAirmass, const cpl_table *aReference, const cpl_table *aTellBands, const cpl_table *aExtinct)
 Compare measured flux distribution over wavelength with calibrated stellar fluxes and derive instrumental sensitivity curve.
static void muse_flux_get_response_table_smooth (cpl_table *aResp, double aHalfwidth, double aLambdaMin, double aLambdaMax, cpl_boolean aAverage)
 Get the table of the standard star response function.
cpl_error_code muse_flux_get_response_table (muse_flux_object *aFluxObj, muse_flux_smooth_type aSmooth)
 Get the table of the standard star response function.
cpl_error_code muse_flux_get_telluric_table (muse_flux_object *aFluxObj)
 Get the table of the telluric correction.
cpl_error_code muse_flux_calibrate (muse_pixtable *aPixtable, const cpl_table *aResponse, const cpl_table *aExtinction, const cpl_table *aTelluric)
 Convert the input pixel table from counts to fluxes.

Variables

const muse_cpltable_def muse_response_tellbands_def []
 Table definition for a telluric bands table.
const muse_cpltable_def muse_flux_responsetable_def []
 MUSE response table definition.
const muse_cpltable_def muse_flux_tellurictable_def []
 MUSE telluric correction table definition.

Detailed Description


Enumeration Type Documentation

Type of table interpolation to use.

There are several types of tables containing something like a "response" curve which contain at least a column "lambda" relevant to the MUSE pipeline. They all have to be interpolated (linearly) in wavelength. Depending on their content they have to be handled in slightly different ways.

Enumerator:
MUSE_FLUX_RESP_FILTER 

filter response curve; column response

MUSE_FLUX_RESP_FLUX 

flux response curve; columns response, resperr

MUSE_FLUX_RESP_STD_FLUX 

standard star spectrum; columns flux, fluxerr

MUSE_FLUX_RESP_EXTINCT 

extinction curve; column extinction

MUSE_FLUX_TELLURIC 

telluric correction table: columns ftelluric, ftellerr

Definition at line 96 of file muse_flux.h.

Type of optimal profile to use.

Enumerator:
MUSE_FLUX_PROFILE_MOFFAT 

Moffat profile

MUSE_FLUX_PROFILE_GAUSSIAN 

Gaussian profile

MUSE_FLUX_PROFILE_CIRCLE 

circular flux integration, with background annulus

MUSE_FLUX_PROFILE_EQUAL_SQUARE 

simplest version: non-optimal square integration

Definition at line 109 of file muse_flux.h.

Type of star selection to use.

Enumerator:
MUSE_FLUX_SELECT_BRIGHTEST 

take the brightest star as standard

MUSE_FLUX_SELECT_NEAREST 

take the nearest source as standard

Definition at line 121 of file muse_flux.h.

Type of response curve smoothing to use.

Enumerator:
MUSE_FLUX_SMOOTH_NONE 

no smoothing at all!

MUSE_FLUX_SMOOTH_MEDIAN 

sliding median of +/- 15 Angstrom width

MUSE_FLUX_SMOOTH_PPOLY 

piecewise cubic polynomial plus * median of +/- 15 Angstrom width

Definition at line 131 of file muse_flux.h.


Function Documentation

cpl_error_code muse_flux_calibrate ( muse_pixtable aPixtable,
const cpl_table *  aResponse,
const cpl_table *  aExtinction,
const cpl_table *  aTelluric 
)

Convert the input pixel table from counts to fluxes.

Parameters:
aPixtable the input pixel table containing the exposure to be flux calibrated
aResponse the tabulated response curve
aExtinction the extinction curve
aTelluric the telluric correction table
Returns:
CPL_ERROR_NONE for success, any other cpl_error_code for failure.
Remarks:
The resulting correction is directly applied and returned in the input pixel table.
This function adds a FITS header (MUSE_HDR_PT_FLUXCAL) with the boolean value 'T' to the pixel table, for information.

Loop through all pixels in the input pixel table, evaluate the response polynomial at the corresponding wavelength and multiply by the response factor. Treat the variance accordingly. Also multiply by the telluric correction factor, weighted by the airmass, for wavelengths redward of the start of the telluric absorption regions.

Quality Assessment:
Apply the flux calibration to the standard star exposure on which it was derived and compare the reference spectra with the flux-calibrated spectrum of the respective star.
Exceptions:
return CPL_ERROR_NULL_INPUT the input pixel table, its header, or the response table are NULL
return CPL_ERROR_INCOMPATIBLE_INPUT the input pixel table data unit is not "count"
output warning, return CPL_ERROR_ILLEGAL_INPUT the input pixel table data has non-positive exposure time
output warning and reset airmass to 0. to not do extinction correction airmass value cannot be determined
output warning and continue without extinction correction the extinction curve is missing
output info message and continue without telluric correction the telluric correction table is missing

Definition at line 2652 of file muse_flux.c.

References muse_pixtable::header, muse_astro_airmass(), MUSE_FLUX_RESP_EXTINCT, MUSE_FLUX_RESP_FLUX, muse_flux_response_interpolate(), MUSE_FLUX_TELLURIC, MUSE_HDR_PT_FLUXCAL, muse_pfits_get_exptime(), muse_pixtable_get_nrow(), and muse_pixtable::table.

Referenced by muse_postproc_process_exposure().

cpl_error_code muse_flux_get_response_table ( muse_flux_object aFluxObj,
muse_flux_smooth_type  aSmooth 
)

Get the table of the standard star response function.

Parameters:
aFluxObj MUSE flux object, containing integrated fluxes and the calculated response
aSmooth MUSE flux object, containing integrated fluxes and the
Returns:
CPL_ERROR_NONE on success, another CPL error code on failure

Copy the response information from the sensitivity table of aFluxObj to a new table, also returned in the input aFluxObj.

To reject outliers, the reponse function is smoothed using either a median with 15 Angstrom halfwidth or a piecewise cubic polynomial followed by a sliding average of 15 Angstrom halfwidth.

For the median filter, the output errorbars are taken as the median absolute deviation in the same region, or the median of all input errorbars, whatever is larger. For the piecewise polynomial, the error of the fit and the standard deviation of the averaging region are propagated onto the original error of each point.

Exceptions:
return CPL_ERROR_NULL_INPUT input flux object or its sensitivity components are NULL
return CPL_ERROR_ILLEGAL_INPUT aSmooth is unknown

Definition at line 2481 of file muse_flux.c.

References muse_cpltable_new(), muse_flux_get_response_table_smooth(), MUSE_FLUX_SMOOTH_MEDIAN, MUSE_FLUX_SMOOTH_PPOLY, muse_flux_object::response, and muse_flux_object::sensitivity.

Referenced by muse_postproc_process_exposure().

static void muse_flux_get_response_table_smooth ( cpl_table *  aResp,
double  aHalfwidth,
double  aLambdaMin,
double  aLambdaMax,
cpl_boolean  aAverage 
) [static]

Get the table of the standard star response function.

Parameters:
aResp the MUSE response table to smoothed
aHalfwidth the smoothing halfwidth in Angstrom
aLambdaMin minimum wavelength to work with
aLambdaMax maximum wavelength to work with
aAverage use sliding average instead of sliding median

Compute a sliding median filter with 2 x aHalfwidth size over the data in aResp (columns "response" and "resperr"). Set the output errorbars as the median absolute deviation in the region of the filter width at each point, or the median of all input errorbars, whatever is larger.

If aLambdaMin and/or aLambdaMax are given such that only a subset of the table is smoothed, the smoothing is done symmetrically around each wavelength.

XXX error handling

Definition at line 2162 of file muse_flux.c.

References muse_cplvector_get_adev_const().

Referenced by muse_flux_get_response_table().

cpl_error_code muse_flux_get_telluric_table ( muse_flux_object aFluxObj  ) 

Get the table of the telluric correction.

Parameters:
aFluxObj MUSE flux object, containing integrated fluxes and the calculated telluric correction
Returns:
CPL_ERROR_NONE on success, another CPL error code on failure

Copy the telluric correction factors from the sensitivity table of aFluxObj to a new table, also returned in the input aFluxObj. Pad telluric regions with extra entries of ftelluric = 1 (for later interpolation), remove all other invalid entries to minimize the size of the returned table.

Note:
The table column "ftellerr" currently contains an error that is at most 0.1, smaller than the distance between the telluric correction factor and 1., but 1e-4 as a mininum.
Exceptions:
return CPL_ERROR_NULL_INPUT input flux object or its sensitivity components are NULL

Definition at line 2542 of file muse_flux.c.

References muse_cpltable_new(), muse_flux_object::sensitivity, and muse_flux_object::telluric.

Referenced by muse_postproc_process_exposure().

muse_image* muse_flux_integrate_cube ( muse_datacube aCube,
cpl_apertures *  aApertures,
muse_flux_profile_type  aProfile 
)

Integrate the flux of the standard star(s) given a datacube.

Parameters:
aCube input datacube with the standard star
aApertures apertures of detected sources in the cube
aProfile the spatial profile to use for flux integration
Returns:
a muse_image * with the integrated fluxes of all sources or NULL on error
Remarks:
aProfile can be one of MUSE_FLUX_PROFILE_GAUSSIAN, MUSE_FLUX_PROFILE_MOFFAT, MUSE_FLUX_PROFILE_CIRCLE, and MUSE_FLUX_PROFILE_EQUAL_SQUARE.

Use the input datacube (aCube) and the detections in it (aApertures) to determine the FWHM of the objects, and use it to define the flux integration window (as three times the FWHM). Integrate the flux of each object for all wavelength bins, using either simple flux integration or profile fitting depending on aProfile.

Note:
The area over which the flux integration is measured, depends on the seeing. For most methods the half-size is at least 3x the measured FWHM at each wavelength. Only for MUSE_FLUX_PROFILE_CIRCLE, it is forced to be 4x the FWHM, where the FWHM is either the measured value or the DIMM seeing from the FITS header, depending on which is larger.

Store the flux measurements in a two-dimensional image, where each row corresponds to one detected object, and the three image components are data, data quality, and variance. It also carries a standard spectral WCS in its header component.

Exceptions:
set CPL_ERROR_NULL_INPUT, return NULL inputs aCube or aApertures are NULL
set CPL_ERROR_ILLEGAL_INPUT, return NULL the input profile type is unknown

Definition at line 1007 of file muse_flux.c.

References muse_image::data, muse_datacube::data, muse_datacube::dq, muse_image::dq, muse_datacube::header, muse_image::header, MUSE_FLUX_PROFILE_CIRCLE, MUSE_FLUX_PROFILE_EQUAL_SQUARE, MUSE_FLUX_PROFILE_GAUSSIAN, MUSE_FLUX_PROFILE_MOFFAT, muse_image_new(), muse_pfits_get_bunit(), muse_pfits_get_cd(), muse_pfits_get_crpix(), muse_pfits_get_crval(), muse_pfits_get_ctype(), muse_pfits_get_cunit(), muse_pfits_get_dec(), muse_pfits_get_exptime(), muse_pfits_get_fwhm_end(), muse_pfits_get_fwhm_start(), muse_pfits_get_mode(), muse_pfits_get_ra(), muse_quality_image_reject_using_dq(), muse_wcs_apply_cd(), muse_wcs_celestial_from_pixel(), muse_wcs_create_default(), muse_datacube::stat, and muse_image::stat.

Referenced by muse_flux_integrate_std().

cpl_error_code muse_flux_integrate_std ( muse_pixtable aPixtable,
muse_flux_profile_type  aProfile,
muse_flux_object aFluxObj 
)

Reconstruct a cube, detect the standard star, and integrate its flux.

Parameters:
aPixtable the input pixel table of the standard star exposure
aProfile the spatial profile to use for flux integration
aFluxObj the MUSE flux object to modify with the cube and integrated flux
Returns:
CPL_ERROR_NONE on success, another CPL error code on failure
Remarks:
The flux image returned in aFluxObj contains the flux measurements, with the fluxes in the data extension of the muse_image. The stat extension contains the measurement errors for each wavelength and the header element is used to propagate the WCS keywords to define the wavelength scale. Each image row contains the fluxes of one standard star, so that the vertical image size is equal to the measured stars on success.
aProfile can be one of MUSE_FLUX_PROFILE_GAUSSIAN, MUSE_FLUX_PROFILE_MOFFAT, MUSE_FLUX_PROFILE_CIRCLE, and MUSE_FLUX_PROFILE_EQUAL_SQUARE.

Resample the input pixel table to a cube, with wavelength sampling matched to the MUSE spectral sampling. Find objects (lowering the S/N between 50 and 5, in multiple steps) on the central plane of the cube. Create apertures for all detections and integrate their flux in each wavelength. See muse_flux_integrate_cube() for details on the flux integration.

Both the resampled datacube and the flux measurements image are added into the aFluxObj structure (components intimage and cube).

Exceptions:
return CPL_ERROR_NULL_INPUT inputs aPixtable or aFluxObj are NULL
return CPL_ERROR_ILLEGAL_INPUT the input profile type is unknown
return CPL_ERROR_DATA_NOT_FOUND no objects found

Definition at line 1344 of file muse_flux.c.

References muse_resampling_params::crsigma, muse_resampling_params::crtype, muse_flux_object::cube, muse_datacube::data, muse_datacube::dq, muse_flux_object::intimage, muse_datacube_save(), muse_flux_integrate_cube(), MUSE_FLUX_PROFILE_CIRCLE, MUSE_FLUX_PROFILE_EQUAL_SQUARE, MUSE_FLUX_PROFILE_GAUSSIAN, MUSE_FLUX_PROFILE_MOFFAT, muse_pixtable_save(), muse_quality_image_reject_using_dq(), MUSE_RESAMPLE_WEIGHTED_DRIZZLE, MUSE_RESAMPLING_CRSTATS_MEDIAN, muse_resampling_cube(), muse_resampling_params_delete(), muse_resampling_params_new(), and muse_resampling_params::pfx.

Referenced by muse_postproc_process_exposure().

void muse_flux_object_delete ( muse_flux_object aFluxObj  ) 

Deallocate memory associated to a muse_flux_object.

Parameters:
aFluxObj input MUSE flux object

Just calls the required *_delete() functions for each component before freeing the memory for the pointer itself. As a safeguard, it checks if a valid pointer was passed, so that crashes cannot occur.

Definition at line 89 of file muse_flux.c.

References muse_flux_object::cube, muse_flux_object::intimage, muse_datacube_delete(), muse_image_delete(), muse_flux_object::response, muse_flux_object::sensitivity, muse_flux_object::tellbands, and muse_flux_object::telluric.

muse_flux_object* muse_flux_object_new ( void   ) 

Allocate memory for a new muse_flux_object object.

Returns:
a new muse_flux_object * or NULL on error
Remarks:
The returned object has to be deallocated using muse_flux_object_delete().
This function does not allocate the contents of the elements, these have to be allocated with the respective *_new() functions.

Allocate memory to store the pointers of the muse_flux_object structure. Set the raref and decref components to NAN to signify that they are unset.

Definition at line 68 of file muse_flux.c.

References muse_flux_object::decref, and muse_flux_object::raref.

Referenced by muse_postproc_process_exposure().

cpl_error_code muse_flux_reference_table_check ( cpl_table *  aTable  ) 

Check and/or adapt the standard flux reference table format.

Parameters:
aTable the input STD_FLUX_TABLE
Returns:
CPL_ERROR_NONE on successful check or conversion, another cpl_error_code on failure.

We need a table with columns "lambda" and "flux" (and, optionally, "fluxerr") for the standard response calculation. The table columns all need to be in double format, and in the right units ("Angstrom", "erg/s/cm**2/Angstrom"). If the wrong units are used for "lambda" and/or "flux" the table is rejected completely as incompatible, if only "fluxerr" has an unrecognized unit, that column is erased.

Alternatively, we can accept HST CALSPEC tables which basically have the same information, just with different column names ("WAVELENGTH", "FLUX", and "STATERROR" plus "SYSERROR"), using different strings the the same units ("ANGSTROMS", "FLAM").

Note:
This function cannot check, if the input table is in vacuum or air wavelengths. But if the input is in HST CALSPEC format, then it assumes that the wavelength given in the "WAVELENGTH" column are in vacuum. It then converts them to air wavelengths using the standard IAU conversion formula.
Exceptions:
return CPL_ERROR_NULL_INPUT aTable is NULL
return CPL_ERROR_INCOMPATIBLE_INPUT a table with unrecognized format was found
propagate CPL error a (table column casting) operation did not work

Definition at line 168 of file muse_flux.c.

References muse_astro_wavelength_vacuum_to_air(), and muse_flux_reference_table_sampling().

Referenced by muse_postproc_process_exposure().

static double muse_flux_reference_table_sampling ( cpl_table *  aTable  )  [static]

Compute average sampling for a MUSE-format flux reference table.

Parameters:
aTable the STD_FLUX_TABLE
Returns:
The sampling in Angstrom per bin or 0 on error.
Exceptions:
set CPL_ERROR_NULL_INPUT, return 0. aTable is NULL

Definition at line 119 of file muse_flux.c.

Referenced by muse_flux_reference_table_check().

cpl_error_code muse_flux_response_compute ( muse_flux_object aFluxObj,
muse_flux_selection_type  aSelect,
double  aAirmass,
const cpl_table *  aReference,
const cpl_table *  aTellBands,
const cpl_table *  aExtinct 
)

Compare measured flux distribution over wavelength with calibrated stellar fluxes and derive instrumental sensitivity curve.

Parameters:
aFluxObj image containing the standard flux measurements
aSelect how to select the standard star
aAirmass the corresponding airmass (passing 0.0 is allowed to switch off extinction correction)
aReference table containing the reference response for the star
aTellBands table containing the telluric band regions (optional)
aExtinct the extinction table
Returns:
CPL_ERROR_NONE on success, another CPL error code on failure

Select the star in aFluxObj->intimage depending on aSelect, to be either the brightest or the nearest integrated source.

Note:
If aSelect is MUSE_FLUX_SELECT_NEAREST, then aFluxObj->raref and aFluxObj->decref need to be filled (i.e. not NAN) with the coordinates of the real reference source on sky, otherwise MUSE_FLUX_SELECT_BRIGHTEST is assumed.

Compare the measured flux at each wavelength to the reference flux, and scale by airmass, to create the sensitivity function. Questionable entries (those within the telluric regions and outside the wavelength range of the MUSE setup), are marked, the ones outside subsequently removed. The telluric regions are interpolated over (using a 2nd order polynomial) or extrapolated (linearly), and telluric correction factors are computed for these regions, scaled by the airmass of the standard star exposure. The resulting curve is then extrapolated linearly to cover the wavelength range that MUSE can possibly cover with any pixel.

The real result of this function is the sensitivity table that gets added to aFluxObj.

Note:
The sensitivity distribution is not smoothed or fit in any way, so it will contain outliers!

The sensitivity table produced here can be converted to the necessary STD_RESPONSE and STD_TELLURIC tables using muse_flux_get_response_table() and muse_flux_get_telluric_table().

Quality Assessment:
The quality will be checked with the output file of muse_flux_calibrate(), which uses the output of this function and muse_flux_integrate_std(). The calibration will be applied to the standard star exposure itself and after resampling to a cube, the reference spectra and the flux-calibrated spectra of the standard stars can be compared.
Exceptions:
return CPL_ERROR_NULL_INPUT inputs aFluxObj, its intimage component, or aReference table are NULL
return CPL_ERROR_ILLEGAL_INPUT aAirmass invalid (< 1.)
use builtin defaults aTellBands is NULL
output warning, but continue, ignoring extinction extinction table is missing

Definition at line 2015 of file muse_flux.c.

References muse_image::data, muse_flux_object::decref, muse_image::header, muse_flux_object::intimage, muse_astro_angular_distance(), MUSE_FLUX_SELECT_BRIGHTEST, MUSE_FLUX_SELECT_NEAREST, muse_pfits_get_bunit(), muse_flux_object::raref, and muse_flux_object::sensitivity.

Referenced by muse_postproc_process_exposure().

double muse_flux_response_interpolate ( const cpl_table *  aResponse,
double  aLambda,
double *  aError,
muse_flux_interpolation_type  aType 
)

Compute linearly interpolated response of some kind at given wavelength.

Parameters:
aResponse the response table
aLambda wavelength to query
aError the error connected to the interpolated datapoint, can be NULL
aType interpolation type
Returns:
The interpolated response; on error return 0. (1. for aType == MUSE_FLUX_TELLURIC).

This function uses binary search to linearly interpolate a response curve at the correct interval. The response table can be a filter (aType == MUSE_FLUX_RESP_FILTER), a flux response curve (MUSE_FLUX_RESP_FLUX), a standard star spectrum (MUSE_FLUX_RESP_STD_FLUX), an atmospheric extinction curve (MUSE_FLUX_RESP_EXTINCT), or a telluric correction (MUSE_FLUX_TELLURIC).

The table aResponse has to contain at least the column "lambda" (listing the wavelength in Angstroms). The other necessary columns depend on aType:

  • "throughput" (for filter curve, with the relative response for each wavelength),
  • "response" and "resperr" (for flux response curve, the response factor and its error, respectively),
  • "flux" and "fluxerr" (for standard star spectrum, the flux and its error, respectively),
  • "extinction" (for the extinction curve).
  • "ftelluric" and "ftellerr" (for the telluric correction factor and its error, respectively), All columns are expected to be of type CPL_TYPE_DOUBLE.
Exceptions:
set CPL_ERROR_NULL_INPUT, return 0. or 1. the input filter is NULL
set CPL_ERROR_UNSUPPORTED_MODE, return 0. or 1. the type is unknown
propagate CPL error, return 0. or 1. the table has less than 1 rows
propagate CPL error, return 0. or 1. the table data could not be returned

Definition at line 336 of file muse_flux.c.

References MUSE_FLUX_RESP_EXTINCT, MUSE_FLUX_RESP_FILTER, MUSE_FLUX_RESP_FLUX, MUSE_FLUX_RESP_STD_FLUX, and MUSE_FLUX_TELLURIC.

Referenced by muse_flux_calibrate(), and muse_resampling_collapse_pixgrid().


Variable Documentation

Initial value:
 {
  { "lambda", CPL_TYPE_DOUBLE, "Angstrom", "%7.2f", "wavelength", CPL_TRUE },
  { "response", CPL_TYPE_DOUBLE,
    "2.5*log10((count/s/Angstrom)/(erg/s/cm**2/Angstrom))", "%.4e",
    "instrument response derived from standard star", CPL_TRUE  },
  { "resperr", CPL_TYPE_DOUBLE,
    "2.5*log10((count/s/Angstrom)/(erg/s/cm**2/Angstrom))", "%.4e",
    "instrument response error derived from standard star", CPL_TRUE  },
  { NULL, 0, NULL, NULL, NULL, CPL_FALSE  }
}

MUSE response table definition.

A MUSE response table has the following columns:

  • 'lambda': the wavelength in Angstrom
  • "response": instrument response derived from standard star
  • "resperr": instrument response error derived from standard star

Definition at line 2111 of file muse_flux.c.

Initial value:
 {
  { "lambda", CPL_TYPE_DOUBLE, "Angstrom", "%7.2f", "wavelength", CPL_TRUE  },
  { "ftelluric", CPL_TYPE_DOUBLE, "", "%.5f",
    "the telluric correction factor, normalized to an airmass of 1", CPL_TRUE  },
  { "ftellerr", CPL_TYPE_DOUBLE, "", "%.5f",
    "the error of the telluric correction factor", CPL_TRUE  },
  { NULL, 0, NULL, NULL, NULL, CPL_FALSE  }
}

MUSE telluric correction table definition.

A MUSE telluric correction table has the following columns:

  • 'lambda': the wavelength in Angstrom
  • "ftelluric": the telluric correction factor, normalized to an airmass of 1
  • "ftellerr": the error of the telluric correction factor

Definition at line 2132 of file muse_flux.c.


Generated on 26 Jan 2017 for MUSE Pipeline Reference Manual by  doxygen 1.6.1