30 #include "muse_image.h" 31 #include "muse_pixtable.h" 32 #include "muse_resampling.h" 33 #include "muse_table.h" 39 static const char kMuseFluxUnitString[] =
"10**(-20)*erg/s/cm**2/Angstrom";
40 static const char kMuseFluxStatString[] =
"(10**(-20)*erg/s/cm**2/Angstrom)**2";
41 static const double kMuseFluxUnitFactor = 1e20;
42 static const double kMuseFluxStatFactor = 1e40;
46 #define MUSE_HDR_FLUX_NOBJ "ESO DRS MUSE FLUX NOBJ" 47 #define MUSE_HDR_FLUX_NOBJ_C "Number of objects detected in standard star cube" 48 #define MUSE_HDR_FLUX_OBJn_X "ESO DRS MUSE FLUX OBJ%d X" 49 #define MUSE_HDR_FLUX_OBJn_X_C "[pix] Object x position in cube" 50 #define MUSE_HDR_FLUX_OBJn_Y "ESO DRS MUSE FLUX OBJ%d Y" 51 #define MUSE_HDR_FLUX_OBJn_Y_C "[pix] Object y position in cube" 52 #define MUSE_HDR_FLUX_OBJn_RA "ESO DRS MUSE FLUX OBJ%d RA" 53 #define MUSE_HDR_FLUX_OBJn_RA_C "[deg] Approximate RA coordinate of object" 54 #define MUSE_HDR_FLUX_OBJn_DEC "ESO DRS MUSE FLUX OBJ%d DEC" 55 #define MUSE_HDR_FLUX_OBJn_DEC_C "[deg] Approximate DEC coordinate of object" 56 #define MUSE_HDR_FLUX_OBJn_FLUX "ESO DRS MUSE FLUX OBJ%d INTFLUX" 57 #define MUSE_HDR_FLUX_OBJn_FLUX_C "[10**(-20)*erg/s/cm**2] Total flux integrated for this object" 58 #define MUSE_HDR_FLUX_NSEL "ESO DRS MUSE FLUX NSEL" 59 #define MUSE_HDR_FLUX_NSEL_C "Object (%s) selected as standard star" 62 #define MUSE_HDR_FLUX_FFCORR "ESO DRS MUSE FLUX FFCORR" 63 #define MUSE_HDR_FLUX_FFCORR_C "Data was flat-field spectrum corrected"
Structure definition of a MUSE datacube.
cpl_error_code muse_flux_compute_qc(muse_flux_object *)
Compute QC parameters, related to on-sky throughput.
muse_flux_smooth_type
Type of response curve smoothing to use.
muse_flux_profile_type
Type of optimal profile to use.
cpl_error_code muse_flux_reference_table_check(cpl_table *)
Check and/or adapt the standard flux reference table format.
const muse_cpltable_def muse_response_tellbands_def[]
Table definition for a telluric bands table.
Structure definition of MUSE three extension FITS file.
cpl_error_code muse_flux_calibrate(muse_pixtable *, const muse_table *, const cpl_table *, const muse_table *)
Convert the input pixel table from counts to fluxes.
muse_flux_object * muse_flux_object_new(void)
Allocate memory for a new muse_flux_object object.
cpl_error_code muse_flux_get_telluric_table(muse_flux_object *)
Get the table of the telluric correction.
cpl_error_code muse_flux_compute_qc_zp(muse_flux_object *, const muse_table *, const char *)
Compute QC zeropoint for given filter.
double muse_flux_response_interpolate(const cpl_table *, double, double *, muse_flux_interpolation_type)
Compute linearly interpolated response of some kind at given wavelength.
Structure definition of MUSE pixel table.
Flux object to store data needed while computing the flux calibration.
cpl_error_code muse_flux_response_compute(muse_flux_object *, muse_flux_selection_type, double, const cpl_table *, const cpl_table *, const cpl_table *)
Compare measured flux distribution over wavelength with calibrated stellar fluxes and derive instrume...
muse_flux_interpolation_type
Type of table interpolation to use.
Structure to store a table together with a property list.
cpl_error_code muse_flux_get_response_table(muse_flux_object *, muse_flux_smooth_type)
Get the table of the standard star response function.
muse_image * muse_flux_integrate_cube(muse_datacube *, cpl_apertures *, muse_flux_profile_type)
Integrate the flux of the standard star(s) given a datacube.
cpl_error_code muse_flux_integrate_std(muse_pixtable *, muse_flux_profile_type, muse_flux_object *)
Reconstruct a cube, detect the standard star, and integrate its flux.
Definition of a cpl table structure.
muse_flux_selection_type
Type of star selection to use.
void muse_flux_object_delete(muse_flux_object *aFluxObj)
Deallocate memory associated to a muse_flux_object.