The xsh_predict recipe

xsh_predict

Synopsis

Compute a first guess dispersion solution and order table

Description

This recipe creates a wavelength solution and an order table.

Input Frames :
  • [UVB, VIS] One RAW frame (Format = RAW, Tag = FMTCHK_arm)

  • [NIR] Two RAW frames ((Format = RAW, Tag = FMTCHK_arm_ON,FMTCHK_arm_OFF)

  • A spectral format table (Format = PRE, Tag = SPECTRAL_FORMAT_TAB_arm)

  • An arc line list (Format = TABLE, Tag = ARC_LINE_LIST_arm)

  • [UVB,VIS,OPTIONAL] A master bias (Format = PRE, Tag = MASTER_BIAS_arm)

  • [UVB,VIS,OPTIONAL] A master dark (Format = PRE, Tag = MASTER_DARK_arm)

  • [OPTIONAL] A reference badpixel map (Format = QUP, Tag = BP_MAP_RP_arm)

  • [OPTIONAL] A non-linear badpixel map (Format = QUP, Tag = BP_MAP_NL_arm)

  • [OPTIONAL] Reference list to monitor line intensity (Tag = ARC_LINE_LIST_INTMON_arm)

  • [poly mode] A theoretical map (Format = TABLE, Tag = THEO_TAB_SING_arm)

  • [physical model mode] A model cfg table (Format = TABLE, Tag = XSH_MOD_CFG_TAB_arm)

Products :
  • [poly mode] A wavelength solution (Format = TABLE, PRO.CATG = WAVE_TAB_GUESS_arm)

  • An order table, PRO.CATG = ORDER_TAB_GUESS_arm (if at least degree+1 points are found in each order).

    • A line identification residual table, PRO.CATG = FMTCHK_RESID_TAB_LINES_arm

  • The bias subtracted formatcheck frame, PRO.CATG = FMTCHK_ON_arm

  • [physical model mode]An optimized model configuration table, PRO.CATG = XSH_MOD_CFG_OPT_FMT_ARM

Prepare the frames.

For UVB,VIS :

Subtract Master Bias.

Subtract Master Dark

For NIR:

Subtract ON OFF

Compute guess order table and wavelength solution

Constructor

cpl.Recipe("xsh_predict")

Create an object for the recipe xsh_predict.

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

Parameters

xsh_predict.param.keep_temp

If ‘no’, temporary files are deleted. (str; default: ‘no’) [default=”no”].

xsh_predict.param.debug_level

Additional xshooter debug level. One of ‘none’, ‘low’, ‘medium’, ‘high’ (str; default: ‘none’) [default=”none”].

xsh_predict.param.time_stamp

Add timestamp to product file name. (bool; default: False) [default=False].

xsh_predict.param.decode_bp

Integer representation of the bits to be considered bad when decoding the bad pixel mask pixel values. Most frequent codes relevant for the user: 0: good pixel, 8: pick-up noise, 16: cosmic-ray removed, 32: cosmic-ray unremoved, 128: calibration file defect, 256: hot pixel, 512: dark pixel, 4096: A/D converted saturation, 32768: non linear pixel, 1048576: extrapolated flux in NIR, 4194304: Interpolated flux during extraction. (int; default: 2144337919) [default=2144337919].

xsh_predict.param.pre_overscan_corr

pre-overscan correction. 0: no correction 1: mean overscan correction 2: mean prescan correction 3: (mean pre+mean overscan)/2 correction (int; default: 1) [default=1].

xsh_predict.param.detectarclines_fit_win_hsize

Half window size (HWS) in pixels for the line 2D fitting window (total window size = 2*HWS+1) (int; default: 6) [default=6].

xsh_predict.param.detectarclines_search_win_hsize

Half window size (HWS) in pixels for the line search box around the expected position (total window size = 2*HWS+1) [bin units] (int; default: 3) [default=3].

xsh_predict.param.detectarclines_running_median_hsize

Half window size in pixels (HWS) for the running median box (int; default: 0) [default=0].

xsh_predict.param.detectarclines_wavesol_deg_lambda

Degree in lambda in the polynomial solution X=f(lambda,order,slit) and Y=f(lambda,order,slit) (POLY mode) (int; default: 5) [default=5].

xsh_predict.param.detectarclines_wavesol_deg_order

Degree in order in the polynomial solution X=f(lambda,order,slit) and Y=f(lambda,order,slit) (POLY mode) (int; default: 5) [default=5].

xsh_predict.param.detectarclines_ordertab_deg_y

Degree in Y in the polynomial order tracing X=f(Y) (int; default: 2) [default=2].

xsh_predict.param.detectarclines_min_sn

Minimum signal-to-noise ratio to filter lines [xsh_predict: UVB,VIS=5,NIR=4; xsh_2dmap: UVB=3, VIS=6, NIR=10] (float; default: 5.0) [default=5.0].

xsh_predict.param.detectarclines_find_lines_center

Method used to find the center of the lines: gaussian, barycenter. Gaussian method applies a Gaussian fit to the line. Barycenter method computes the line centroid. (str; default: ‘gaussian’) [default=”gaussian”].

xsh_predict.param.detectarclines_clip_sigma

Kappa value in sigma clipping during the polynomial solution fit (POLY mode) (float; default: 2.0) [default=2.0].

xsh_predict.param.detectarclines_clip_niter

Number of iterations in sigma clipping during the polynomial solution fit (POLY mode) (int; default: 10) [default=10].

xsh_predict.param.detectarclines_clip_frac

Minimal fractions of bad pixel allowed in sigma clipping duringthe polynomial solution fit (POLY mode) (float; default: 0.7) [default=0.7].

xsh_predict.param.model_maxit

Number/10 of annealing iterations if in physical model mode. (int; default: 1000) [default=1000].

xsh_predict.param.model_anneal_factor

Multiplier applied to the automatic parameter ranges (i.e. when scenario!=0). For routine operations should be 1.0. (physical model mode). (float; default: 1.0) [default=1.0].

xsh_predict.param.model_scenario

selects preset flag and range combinations appropriate to common scenarios: 0 - No scenario, input cfg flags and limits used. 1 - scenario appropriate for the startup recipe (large ranges for parameters affecting single ph exposures, dist coeff fixed). 2 - Like 1, but includes parameters affecting all ph positions. 3 - Scenario for use in fine tuning cfg to match routine single pinhole exposures. All parameters affecting 1ph exposures except dist coeffs are included and parameter ranges are small. (For use by predict in 1ph case). 4 - Like 3 but includes parameters affecting all ph positions (Standard for use by predict in 9ph case and 2dmap). (int; default: 3) [default=3].

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

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

xsh_predict.param.keep_temp = "no"
xsh_predict.param.debug_level = "none"
xsh_predict.param.time_stamp = False
xsh_predict.param.decode_bp = 2144337919
xsh_predict.param.pre_overscan_corr = 1
xsh_predict.param.detectarclines_fit_win_hsize = 6
xsh_predict.param.detectarclines_search_win_hsize = 3
xsh_predict.param.detectarclines_running_median_hsize = 0
xsh_predict.param.detectarclines_wavesol_deg_lambda = 5
xsh_predict.param.detectarclines_wavesol_deg_order = 5
xsh_predict.param.detectarclines_ordertab_deg_y = 2
xsh_predict.param.detectarclines_min_sn = 5.0
xsh_predict.param.detectarclines_find_lines_center = "gaussian"
xsh_predict.param.detectarclines_clip_sigma = 2.0
xsh_predict.param.detectarclines_clip_niter = 10
xsh_predict.param.detectarclines_clip_frac = 0.7
xsh_predict.param.model_maxit = 1000
xsh_predict.param.model_anneal_factor = 1.0
xsh_predict.param.model_scenario = 3

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

import cpl
xsh_predict = cpl.Recipe("xsh_predict")
[...]
res = xsh_predict( ..., param = {"keep_temp":"no", "debug_level":"none"})

See also

cpl.Recipe for more information about the recipe object.

Bug reports

Please report any problems to P.Goldoni, L.Guglielmi, R. Haigron, F. Royer, P. Bristow, D. Bramich, A. Modigliani. Alternatively, you may send a report to the ESO User Support Department.