The xsh_flexcomp recipe¶
-
xsh_flexcomp
¶
Synopsis¶
Compute the flexure of the instrument
Description¶
This recipe computes the flexure of the instrument and correct CAL files.
- Input Frames :
[UVB, VIS] One RAW frame (Format = RAW, Tag = AFF_ATT_arm)
[NIR] Two RAW frames ((Format = RAW, Tag = AFC_ATT_arm_ON,AFC_ATT_arm_OFF)
An arc line list (Format = TABLE, Tag = ARC_LINE_LIST_AFC_arm)
A spectral format table frame (Format = TABLE, Tag = SPECTRAL_FORMAT_TAB_arm)
[UVB,VIS] A master bias (Format = PRE, Tag = MASTER_BIAS_arm)
[UVB,VIS] A master dark (Format = PRE, Tag = MASTER_DARK_arm)
An order table frame (Format = TABLE, Tag = ORDER_TAB_EDGES_IFU_arm)
[OPTIONAL] A non-linear badpixel map (Tag = BP_MAP_NL_arm)
[OPTIONAL] A reference badpixel map (Tag = BP_MAP_RP_arm) - [poly mode] A wave solution frame (Format = TABLE, Tag = WAVE_TAB_2D_arm) - [physical model mode] A model cfg table (Format = TABLE, Tag = XSH_MOD_CFG_OPT_2D_arm)
- Products :
[poly mode] An updated wave solution frame (Format = TABLE, Tag = WAVE_TAB_AFC_arm)
[physical model mode] An updated model cfg table (Format = TABLE, Tag = XSH_MOD_CFG_OPT_AFC_arm)
An updated order table frame (Format = TABLE, Tag = ORDER_TAB_AFC_IFU_arm)
[poly mode] A dispersion table frame (Format = TABLE, Tag = DISP_TAB_AFC_arm)
Constructor¶
-
cpl.
Recipe
("xsh_flexcomp") Create an object for the recipe xsh_flexcomp.
import cpl
xsh_flexcomp = cpl.Recipe("xsh_flexcomp")
Parameters¶
-
xsh_flexcomp.param.
keep_temp
¶ If ‘no’, temporary files are deleted. (str; default: ‘no’) [default=”no”].
-
xsh_flexcomp.param.
debug_level
¶ Additional xshooter debug level. One of ‘none’, ‘low’, ‘medium’, ‘high’ (str; default: ‘none’) [default=”none”].
-
xsh_flexcomp.param.
time_stamp
¶ Add timestamp to product file name. (bool; default: False) [default=False].
-
xsh_flexcomp.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_flexcomp.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_flexcomp.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_flexcomp.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_flexcomp.param.
detectarclines_running_median_hsize
¶ Half window size in pixels (HWS) for the running median box (int; default: 0) [default=0].
-
xsh_flexcomp.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_flexcomp.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_flexcomp.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_flexcomp.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_flexcomp.param.
detectarclines_clip_sigma
¶ Kappa value in sigma clipping during the polynomial solution fit (POLY mode) (float; default: 2.0) [default=2.0].
-
xsh_flexcomp.param.
detectarclines_clip_niter
¶ Number of iterations in sigma clipping during the polynomial solution fit (POLY mode) (int; default: 10) [default=10].
-
xsh_flexcomp.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_flexcomp.param.
dispersol_deg_x
¶ Degree in X in the polynomial dispersion solution lambda=f(X,Y) and slit=f(X,Y) (int; default: 4) [default=4].
-
xsh_flexcomp.param.
dispersol_deg_y
¶ Degree in Y in the polynomial dispersion solution lambda=f(X,Y) and slit=f(X,Y) (int; default: 5) [default=5].
-
xsh_flexcomp.param.
model_maxit
¶ Number/10 of annealing iterations if in physical model mode. (int; default: 1000) [default=1000].
-
xsh_flexcomp.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_flexcomp.param.
model_scenario
¶ selects preset flag and range combinations appropriate to common scenarios: -1 - Only the position across the slit and camera focal length are open 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 wavecal exposures. All parameters affecting 1ph exposures except dist coeffs are included and parameter ranges are small. (For use by flexcomp in 1ph case). 4 - Like 3 but includes parameters affecting all ph positions (Standard for use by flexcomp in 9ph case and 2dmap). 5 - Like 4 but includes also dist coeffs 6 - Just dist coeffs (and chipx, chipy) (int; default: 3) [default=3].
The following code snippet shows the default settings for the available parameters.
import cpl
xsh_flexcomp = cpl.Recipe("xsh_flexcomp")
xsh_flexcomp.param.keep_temp = "no"
xsh_flexcomp.param.debug_level = "none"
xsh_flexcomp.param.time_stamp = False
xsh_flexcomp.param.decode_bp = 2144337919
xsh_flexcomp.param.pre_overscan_corr = 1
xsh_flexcomp.param.detectarclines_fit_win_hsize = 6
xsh_flexcomp.param.detectarclines_search_win_hsize = 3
xsh_flexcomp.param.detectarclines_running_median_hsize = 0
xsh_flexcomp.param.detectarclines_wavesol_deg_lambda = 5
xsh_flexcomp.param.detectarclines_wavesol_deg_order = 5
xsh_flexcomp.param.detectarclines_min_sn = 5.0
xsh_flexcomp.param.detectarclines_find_lines_center = "gaussian"
xsh_flexcomp.param.detectarclines_clip_sigma = 2.0
xsh_flexcomp.param.detectarclines_clip_niter = 10
xsh_flexcomp.param.detectarclines_clip_frac = 0.7
xsh_flexcomp.param.dispersol_deg_x = 4
xsh_flexcomp.param.dispersol_deg_y = 5
xsh_flexcomp.param.model_maxit = 1000
xsh_flexcomp.param.model_anneal_factor = 1.0
xsh_flexcomp.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_flexcomp = cpl.Recipe("xsh_flexcomp")
[...]
res = xsh_flexcomp( ..., 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. Alternatively, you may send a report to the ESO User Support Department.
Copyright¶
This file is part of the X-shooter Instrument Pipeline Copyright (C) 2006 European Southern Observatory
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Code author: P.Goldoni, L.Guglielmi, R. Haigron, F. Royer <amodigli@eso.org>