MUSE Pipeline Reference Manual
2.1.1
|
Enumerations |
Functions | |
double | muse_phys_nrindex_owens_saturation_pressure (double temp) |
Compute the saturation pressure using the Owens calibration. More... | |
void | muse_phys_nrindex_owens_coeffs (double temp, double rhum, double pres, double *d1, double *d2) |
Compute the two coefficients for the Owens method. More... | |
double | muse_phys_nrindex_owens (double l, double d1, double d2) |
Compute the refractive index for the given wavelength following Owens. More... | |
double | muse_phys_nrindex_edlen (double l, double t, double p, double pv) |
Compute the refractive index for the given wavelength following Edlén. More... | |
double | muse_phys_nrindex_ciddor (double l, double T, double p, double xv, double xCO2) |
Compute the refractive index for the given wavelength following Ciddor. More... | |
double | muse_phys_nrindex_filippenko (double l, double T, double f, double P) |
Compute the refractive index for the given wavelength following Filippenko. More... | |
cpl_error_code | muse_phys_air_to_vacuum (muse_pixtable *aPixtable, unsigned int aFlags) |
Convert a pixel table from air to vacuum wavelengths. More... | |
enum muse_phys_flags |
Flags with special bit setup to pass to muse_phys_air_to_vacuum().
The 2nd bit determines the air parameter determination, higher bits the method to use for conversion. Use (flags & 0xC) to access the methods.
Definition at line 53 of file muse_phys.h.
cpl_error_code muse_phys_air_to_vacuum | ( | muse_pixtable * | aPixtable, |
unsigned int | aFlags | ||
) |
Convert a pixel table from air to vacuum wavelengths.
aPixtable | input MUSE pixel table in air wavelength |
aFlags | flags to describe air properties used and the method |
The argument aFlags is thought to be or'd with one to two of the flags of the muse_phys_flags enum. The MUSE_PHYS_AIR_*
selection is mandatory to choose either conversion using "International Standard Atmosphere" (MUSE_PHYS_AIR_STANDARD; dry air, 15 degC, 1013.25 hPa, see e.g. https://de.wikipedia.org/w/index.php?title=Normatmosph%C3%A4re&oldid=145634782) or air condition measurements from the pixel table header (MUSE_PHYS_AIR_MEASURED).
Four methods are available to compute the refractive index of air:
set and return CPL_ERROR_NULL_INPUT | aPixtable or its header or table components are NULL |
set and return CPL_ERROR_DATA_NOT_FOUND | aPixtable is not conforming to format muse_pixtable_def |
set and return CPL_ERROR_UNSUPPORTED_MODE | aFlags is zero |
output warning, set and return CPL_ERROR_TYPE_MISMATCH | header of aPixtable already contains MUSE_HDR_PT_SPEC_TYPE and it's not "AWAV" |
set and return CPL_ERROR_DATA_NOT_FOUND | atmosphere handling type is MUSE_PHYS_AIR_MEASURED, but pressure, temperature, humidity are not present in the input pixel table header |
Definition at line 261 of file muse_phys.c.
References muse_pixtable::header, muse_cpltable_check(), MUSE_HDR_PT_SPEC_TYPE, muse_pfits_get_pres_end(), muse_pfits_get_pres_start(), muse_pfits_get_rhum(), muse_pfits_get_temp(), MUSE_PHYS_METHOD_CIDDOR, MUSE_PHYS_METHOD_EDLEN, MUSE_PHYS_METHOD_OWENS, muse_phys_nrindex_ciddor(), muse_phys_nrindex_edlen(), muse_phys_nrindex_filippenko(), muse_phys_nrindex_owens(), muse_phys_nrindex_owens_coeffs(), muse_phys_nrindex_owens_saturation_pressure(), muse_pixtable_compute_limits(), muse_pixtable_def, muse_pixtable_get_nrow(), MUSE_PIXTABLE_LAMBDA, and muse_pixtable::table.
Referenced by muse_postproc_cube_resample_and_collapse().
double muse_phys_nrindex_ciddor | ( | double | l, |
double | T, | ||
double | p, | ||
double | xv, | ||
double | xCO2 | ||
) |
Compute the refractive index for the given wavelength following Ciddor.
l | the wavelength [um] |
T | temperature [K] |
p | pressure [Pa] |
xv | mole fraction |
xCO2 | CO2 concentration [umol / mol], use 450.0 for a good default value |
The source of the value xCO2 = 450 is Birch et al., 1993, Metrologia 30, 7 (see the routine p3d_darc_amplitude_iag in the p3d IFS reduction package).
Definition at line 148 of file muse_phys.c.
Referenced by muse_dar_correct(), and muse_phys_air_to_vacuum().
double muse_phys_nrindex_edlen | ( | double | l, |
double | t, | ||
double | p, | ||
double | pv | ||
) |
Compute the refractive index for the given wavelength following Edlén.
l | the wavelength [um] |
t | temperature [Celsius] |
p | pressure [Pa] |
pv | partial pressure [Pa] |
Definition at line 115 of file muse_phys.c.
Referenced by muse_dar_correct(), and muse_phys_air_to_vacuum().
double muse_phys_nrindex_filippenko | ( | double | l, |
double | T, | ||
double | f, | ||
double | P | ||
) |
Compute the refractive index for the given wavelength following Filippenko.
l | the wavelength (in um) |
T | temperature (in degrees Celsius) |
f | water vapor pressure (in mmHg) |
P | atmospheric pressure (in mmHg) |
Definition at line 193 of file muse_phys.c.
Referenced by muse_dar_correct(), and muse_phys_air_to_vacuum().
double muse_phys_nrindex_owens | ( | double | l, |
double | d1, | ||
double | d2 | ||
) |
Compute the refractive index for the given wavelength following Owens.
l | the wavelength [um] |
d1 | coefficient 1 |
d2 | coefficient 2 |
Definition at line 95 of file muse_phys.c.
Referenced by muse_dar_correct(), and muse_phys_air_to_vacuum().
void muse_phys_nrindex_owens_coeffs | ( | double | temp, |
double | rhum, | ||
double | pres, | ||
double * | d1, | ||
double * | d2 | ||
) |
Compute the two coefficients for the Owens method.
temp | temperature (in Kelvin) |
rhum | the relative humidity (in %) |
pres | atmospheric pressure (in hPa) |
d1 | coefficient 1 |
d2 | coefficient 2 |
Definition at line 70 of file muse_phys.c.
References muse_phys_nrindex_owens_saturation_pressure().
Referenced by muse_dar_correct(), and muse_phys_air_to_vacuum().
double muse_phys_nrindex_owens_saturation_pressure | ( | double | temp | ) |
Compute the saturation pressure using the Owens calibration.
temp | temperature (in Kelvin) |
This function is currently also used when choosing the Filippenko formulae.
Definition at line 54 of file muse_phys.c.
Referenced by muse_dar_correct(), muse_phys_air_to_vacuum(), and muse_phys_nrindex_owens_coeffs().