The muse_geometry recipe



Compute relative location of the slices within the field of view and measure the instrumental PSF on the detectors.


Processing first works separately on each IFU of the raw input data (in parallel): it trims the raw data and records the overscan statistics, subtracts the bias and converts them from adu to count. Optionally, the dark can be subtracted and the data can be divided by the flat-field. The data of all input mask exposures is then averaged. The averaged image together with the trace table and wavelength calibration as well as the line catalog are used to detect spots. The detection windows are used to measure the spots on all images of the sequence, the result is saved, with information on the measured PSF, in the spots tables. Then properties of all slices are computed, first separately on each IFU to determine the peak position of the mask for each slice and its angle, subsequently the width and horizontal position. Then, the result of all IFUs is analyzed together to produce a refined horizontal position, applying global shifts to each IFU as needed. The vertical position is then determined using the known slice ordering on the sky; the relative peak positions are put into sequence, taking into account the vertical offsets of the pinholes in the mask. The table is then cleaned up from intermediate debug data. If the –smooth parameter is set to a positive value, it is used to do a sigma-clipped smoothing within each slicer stack, for a more regular appearance of the output table. The table is then saved. As a last optional step, additional raw input data is reduced using the newly geometry to produce an image of the field of view. If these exposures contain smooth features, they can be used as a visual check of the quality of the geometrical calibration.



Create an object for the recipe muse_geometry.

import cpl
muse_geometry = cpl.Recipe("muse_geometry")



First IFU to analyze. (int; default: 1) [default=1].


Last IFU to analyze. (int; default: 24) [default=24].


Sigma detection level for spot detection, in terms of median deviation above the median. (float; default: 2.2) [default=2.2].


Type of centroiding and FWHM determination to use for all spot measurements: simple barycenter method or using a Gaussian fit. (str; default: ‘gaussian’) [default=”gaussian”].


Use this sigma-level cut for smoothing of the output table within each slicer stack. Set to non-positive value to deactivate smoothing. (float; default: 1.5) [default=1.5].


When passing any MASK_CHECK frames in the input, use this lower wavelength cut before reconstructing the image. (float; default: 6800.0) [default=6800.0].


When passing any MASK_CHECK frames in the input, use this upper wavelength cut before reconstructing the image. (float; default: 7200.0) [default=7200.0].

The following code snippet shows the default settings for the available parameters.

import cpl
muse_geometry = cpl.Recipe("muse_geometry")

muse_geometry.param.ifu1 = 1
muse_geometry.param.ifu2 = 24
muse_geometry.param.sigma = 2.2
muse_geometry.param.centroid = "gaussian"
muse_geometry.param.smooth = 1.5
muse_geometry.param.lambdamin = 6800.0
muse_geometry.param.lambdamax = 7200.0

You may also set or overwrite some or all parameters by the recipe parameter param, as shown in the following example:

import cpl
muse_geometry = cpl.Recipe("muse_geometry")
res = muse_geometry( ..., param = {"ifu1":1, "ifu2":24})

See also

cpl.Recipe for more information about the recipe object.

Bug reports

Please report any problems to Peter Weilbacher. Alternatively, you may send a report to the ESO User Support Department.