The muse_astrometry recipe



Compute an astrometric solution.


Merge pixel tables from all IFUs, apply correction for differential atmospheric refraction (when necessary), optionally apply flux calibration and telluric correction (if the necessary input data was given), and resample the data from all exposures into a datacube. Use the cube to detect objects which are then matched to their reference positions from which a two-dimensional WCS solution is computed. There are two pattern matching algorithm implemented, which can be selected by chosing a positive or zero value of faccuracy. In the first method (with a positive value of faccuracy), start using the search radius, and iteratively decrease it, until no duplicate detections are identified any more. Similarly, iterate the data accuracy (decrease it downwards from the mean positioning error) until matches are found. Remove the remaining unidentified objects. The second method (when faccuracy is set to zero), iterates through all quadruples in both the detected objects and the catalogue, calculates the transformation and checks whether more than 80% of the detections match a catalog entry within the radius. The main output is the ASTROMETRY_WCS file which is a bare FITS header containing the world coordinate solution. The secondary product is DATACUBE_ASTROMETRY, it is not needed for further processing but can be used for verification and debugging. It contains the reconstructed cube and two images created from it in further FITS extensions: a white-light image and the special image created from the central planes of the cube used to detect and centroid the stars (as well as its variance).



Create an object for the recipe muse_astrometry.

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



Centroiding method to use for objects in the field of view. “gaussian” and “moffat” use 2D fits to derive the centroid, “box” is a simple centroid in a square box. (str; default: ‘moffat’) [default=”moffat”].


Source detection sigma level to use. If this is negative, values between its absolute and 1.0 are tested with a stepsize of 0.1, to find an optimal solution. (float; default: 1.5) [default=1.5].


Initial radius in pixels for pattern matching identification in the astrometric field. (float; default: 3.0) [default=3.0].


Factor of initial accuracy relative to mean positional accuracy of the measured positions to use for pattern matching. If this is set to zero, use the quadruples based method. (float; default: 0.0) [default=0.0].


Number of iterations of the astrometric fit. (int; default: 2) [default=2].


Rejection sigma level of the astrometric fit. (float; default: 3.0) [default=3.0].


Center of rotation of the instrument, given as two comma-separated floating point values in pixels. (str; default: ‘-0.01,-1.20’) [default=”-0.01,-1.20”].


Cut off the data below this wavelength after loading the pixel table(s). (float; default: 4000.0) [default=4000.0].


Cut off the data above this wavelength after loading the pixel table(s). (float; default: 10000.0) [default=10000.0].


Reference wavelength used for correction of differential atmospheric refraction. The R-band (peak wavelength ~7000 Angstrom) that is usually used for guiding, is close to the central wavelength of MUSE, so a value of 7000.0 Angstrom should be used if nothing else is known. A value less than zero switches DAR correction off. (float; default: 7000.0) [default=7000.0].


Carry out a check of the theoretical DAR correction using source centroiding. If “correct” it will also apply an empirical correction. (str; default: ‘none’) [default=”none”].

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

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

muse_astrometry.param.centroid = "moffat"
muse_astrometry.param.detsigma = 1.5
muse_astrometry.param.radius = 3.0
muse_astrometry.param.faccuracy = 0.0
muse_astrometry.param.niter = 2
muse_astrometry.param.rejsigma = 3.0
muse_astrometry.param.rotcenter = "-0.01,-1.20"
muse_astrometry.param.lambdamin = 4000.0
muse_astrometry.param.lambdamax = 10000.0
muse_astrometry.param.lambdaref = 7000.0
muse_astrometry.param.darcheck = "none"

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

import cpl
muse_astrometry = cpl.Recipe("muse_astrometry")
res = muse_astrometry( ..., param = {"centroid":"moffat", "detsigma":1.5})

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.