UVES_OBS_REDCHAIN(7)

📦
version 6.1.8 · 2 versions
, in debian bookworm, ubuntu noble

👑 UVES_OBS_REDCHAIN(7) — straight out of the uves recipes manual 👑

okay so bestie, welcome to the group chat that is this man page 💖 the manual is called UVES_OBS_REDCHAIN(7), it lives under uves recipes, and it's long — like, seven-parts long. this is part one. hydrate, sit down, let's go.


🌸 NAME 🌸

uves_obs_redchain — runs the full UVES reduction chain. yes, the whole thing. the entire pipeline. she does not do half measures 💅


✨ SYNOPSIS ✨

esorex uves_obs_redchain [OPTIONS] FILE.sof

that's it. that's the summoning spell 🪄


💜 DESCRIPTION 💜

This recipe does a complete science reduction. It runs all the necessary calibration recipes, and which ones it runs depends on what raw or processed calibration frames you actually have on hand. Like, she'll figure out what she can do with what you gave her. adaptable queen.

Your input frames are all UVES raw and reference frames, and the list is giving very much ✨everything✨:

  • formatchecks, ARC_LAMP_FORM_xxxx, where xxxx=BLUE or RED
  • order definition frames, ORDER_FLAT_xxx
  • biases, BIAS_xxx
  • darks, DARK_xxx
  • flats, FLAT_xxx
  • arc lamps, ARC_LAMP_xxx
  • standard stars, STANDARD_xxx
  • a wavelength catalogue table, LINE_REFER_TABLE
  • and optionally a wavelength table of bright lines, LINE_INTMON_TABLE — this one is used only for computing Quality Control parameters, so it's the side quest, not the main plot

Then you've got:

  • a reference standard star flux table, FLUX_STD_TABLE
  • a table describing the atmospheric extintion, EXTCOEFF_TABLE

And optionally, your science frames — SCIENCE_xxx, or UVES_SCI_POINT_xxx, or UVES_SCI_EXTND_xxx, or UVES_SCI_SLICER_xxx. pick your fighter 🥊

For further details on the data reduction and the input frame types, go read the man page of the individual recipes. this one is the ringleader, not the encyclopedia, iykyk.

🎀 OPTIONS 🎀

buckle up buttercup, there are a lot of these and every single one is staying. no skipping. periodt.

  • --debug <bool> — Whether or not to save intermediate results to your local directory (bool; default: False). the full name of this option for the EsoRex configuration file is uves.debug [default = False]. turn this on if you want to see the ~journey~ ✨
  • --plotter <str> — any plots the recipe makes get redirected to the command you name here. Heads up: that plotting command must contain the substring ´gnuplot´ and must be able to parse gnuplot syntax on its standard input. valid examples include ´gnuplot -persist´ and ´cat > mygnuplot$$.gp´. If you want finer control over plotting options, write yourself an executable script — like my_gnuplot.pl — that runs gnuplot after setting the gnuplot options you want (e.g. set terminal pslatex color). To turn plotting off entirely, set this parameter to ´no´ (str; default: ´no´). the full name of this option for the EsoRex configuration file is uves.plotter [default = no].
  • --process_chip <str> — for RED arm data, process the redl, redu, or both chip(s) (str; default: ´both´). the full name of this option for the EsoRex configuration file is uves.process_chip [default = both]. both is the default because we contain multitudes 💫
  • --scired <bool> — Whether or not to do science reduction. If false, only master calibration frames are created. If false, either zero or all necessary calibration frames must be provided for each arm (bool; default: True). the full name of this option for the EsoRex configuration file is uves_obs_redchain.scired [default = True]. note that "if false" hits twice up there — that's the original, and it's staying, no cap.
  • --uves_cal_mbias.clean_traps <bool> — Clean detector traps. If TRUE, detector traps are interpolated. The bad pixels are replaced by the average of the nearest good pixels in the same column, or simply marked as bad. The positions of bad pixels are hard-coded (as a function of UVES chip) (bool; default: False). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.clean_traps [default = False].
  • --uves_cal_mbias.dc_mask_x <int> — x-size (pixel) of the mask starting at (x,y) = (1,1) (int; default: 1). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.dc_mask_x [default = 1].
  • --uves_cal_mbias.dc_mask_y <int> — y-size (pixel) of the mask starting at (x,y) = (1,1) (int; default: 1). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.dc_mask_y [default = 1].
  • --uves_cal_mbias.khigh <float> — Kappa used to clip high level values, when method is set to ´mean´ (float; default: 5.0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.khigh [default = 5.0].
  • --uves_cal_mbias.klow <float> — Kappa used to clip low level values, when method is set to ´mean´ (float; default: 5.0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.klow [default = 5.0].
  • --uves_cal_mbias.niter <int> — Number of kappa sigma iterations, when method is set to ´mean´ (int; default: 5). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.niter [default = 5].
  • --uves_cal_mbias.pd_compute <bool> — Determine Fixed Pattern Noise. If TRUE the Fixed Patter Noise power spectrum is determined (as a function of UVES chip) (bool; default: False). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.pd_compute [default = False]. (yes, "Patter". we don't fix the original's spelling, we honor it. it's iconic now.)
  • --uves_cal_mbias.stack_method <str> — Method used to build master frame (str; default: ´median´). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mbias.stack_method [default = median].
  • --uves_cal_mdark.khigh <float> — Kappa used to clip high level values, when method is set to ´mean´ (float; default: 5.0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.khigh [default = 5.0].
  • --uves_cal_mdark.khigh <float> — Kappa used to clip high level values, when method is set to ´mean´ (float; default: 5.0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.khigh [default = 5.0]. yep, that's the same one twice — the page really does list it twice, so here it is twice. twin energy 👯
  • --uves_cal_mdark.klow <float> — Kappa used to clip low level values, when method is set to ´mean´ (float; default: 5.0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.klow [default = 5.0].
  • --uves_cal_mdark.klow <float> — Kappa used to clip low level values, when method is set to ´mean´ (float; default: 5.0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.klow [default = 5.0]. again. same option, second appearance. it's giving main character energy ✨
  • --uves_cal_mdark.niter <int> — Number of kappa sigma iterations, when method is set to ´mean´ (int; default: 5). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.niter [default = 5].
  • --uves_cal_mdark.niter <int> — Number of kappa sigma iterations, when method is set to ´mean´ (int; default: 5). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.niter [default = 5]. third twin. the page said it, so i said it. no edits, no lies 💅
  • --uves_cal_mdark.qc_dark.reg.border_x <int> — X distance between the left hand side of the detector and the left hand side of the region [pix] (int; default: 100). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.border_x [default = 100].
  • --uves_cal_mdark.qc_dark.reg.border_y <int> — X distance between the left hand side of the detector and the left hand side of the region [pix] (int; default: 100). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.border_y [default = 100]. yes it says "X distance" for the y one. that's the original. we preserve, we don't correct 😌
  • --uves_cal_mdark.qc_dark.reg.box_sx <int> — Region X size [pix] (int; default: 100). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.box_sx [default = 100].
  • --uves_cal_mdark.qc_dark.reg.box_sy <int> — Region Y size [pix] (int; default: 100). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.box_sy [default = 100].
  • --uves_cal_mdark.qc_dark.reg.num_x <int> — Number of regions along the X axis (where mean/med/rms are computed) (int; default: 4). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.num_x [default = 4].
  • --uves_cal_mdark.qc_dark.reg.num_y <int> — Number of regions along the Y axis (where mean/med/rms are computed) (int; default: 4). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.num_y [default = 4].
  • --uves_cal_mdark.qc_dark.reg.when <int> — When QC analysis is performed. 0: on each raw frame, or 1: on the master frame (int; default: 0). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.qc_dark.reg.when [default = 0].
  • --uves_cal_mdark.stack_method <str> — Method used to build master frame (str; default: ´median´). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.stack_method [default = median].
  • --uves_cal_mdark.stack_method <str> — Method used to build master frame (str; default: ´median´). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mdark.stack_method [default = median]. fourth twin of the part. the page duplicates it, i duplicate it. that's the deal 🫶
  • --uves_cal_mflat.backsub.mmethod <str> — Background measuring method. If it's equal to ´median´, the background is sampled using the median of a subwindow. If ´minimum´, the subwindow minimum value is used. If ´no´, no background subtraction is done (str; default: ´median´). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.backsub.mmethod [default = median].
  • --uves_cal_mflat.backsub.npoints <int> — This is the number of columns in interorder space used to sample the background (int; default: 82). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.backsub.npoints [default = 82].
  • --uves_cal_mflat.backsub.radiusy <int> — The height (in pixels) of the background sampling window is (2*radiusy + 1). This parameter is not corrected for binning. (int; default: 2). the full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.backsub.radiusy [default = 2].

part 1 out of 7, bestie — the options literally keep going, so don't unmute and walk away 💖
  • --uves_cal_mflat.backsub.sdegree <int> — the degree of the interpolating splines, bestie. Right now only degree = 1 is supported, so like... don't get creative. (int; default: 1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.backsub.sdegree [default = 1].
  • --uves_cal_mflat.backsub.smoothx <float> — if spline interpolation is what's measuring the background, then the x-radius of the post-smoothing window is (smoothx * image_width). Here image_width is the image width after binning. If it's negative, you get the default values: (25.0/4096) for blue flat-field frames, (50.0/4096) for red flat-field frames, (300.0/4096) for blue science frames and (300.0/4096) for red science frames. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.backsub.smoothx [default = -1.0].
  • --uves_cal_mflat.backsub.smoothy <float> — same energy as smoothx but for the y axis, no cap. If spline interpolation is measuring the background, the y-radius of the post-smoothing window is (smoothy * image_height), and image_height is the image height after binning. Negative value? Defaults kick in: (100.0/2048) for blue flat-field frames, (300.0/2048) for red flat-field frames, (200.0/2048) for blue science frames and (500.0/2048) for red science frames. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.backsub.smoothy [default = -1.0].
  • --uves_cal_mflat.norm_method <str> — the method used to build the master frame ✨ (str; default: ´explevel´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_mflat.norm_method [default = explevel].
  • --uves_cal_orderpos.backsubdegx <int> — the degree (in x) of the polynomial used to estimate the background, but only when mode=poly. (int; default: 2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.backsubdegx [default = 2].
  • --uves_cal_orderpos.backsubdegy <int> — the degree (in y) of the polynomial used to estimate the background, again mode=poly only. (int; default: 2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.backsubdegy [default = 2].
  • --uves_cal_orderpos.backsubgrid <int> — how many grid points (in the x- and y-direction) get used to estimate the background, mode=poly era. (int; default: 50). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.backsubgrid [default = 50].
  • --uves_cal_orderpos.backsubkappa <float> — the value of kappa in the one-sided kappa-sigma clipping used to estimate the background (mode=poly). (float; default: 4.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.backsubkappa [default = 4.0].
  • --uves_cal_orderpos.backsubradiusy <int> — the height (in pixels) of the background sampling window is (2*radiusy + 1). Heads up: this parameter is NOT corrected for binning. (int; default: 2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.backsubradiusy [default = 2].
  • --uves_cal_orderpos.defpol1 <int> — the degree of the bivariate fit in the cross dispersion direction. If it's negative, the degree gets optimized to give the best fit. (int; default: -1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.reject.defpol1 [default = -1].
  • --uves_cal_orderpos.defpol2 <int> — the degree of the bivariate fit for the order number. Negative again means the degree is optimized for the best fit. (int; default: -1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.reject.defpol2 [default = -1].
  • --uves_cal_orderpos.kappa <float> — used for kappa-sigma clipping of the final polynomial fit. If it's negative, no clipping happens at all. (float; default: 4.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.reject.kappa [default = 4.0].
  • --uves_cal_orderpos.maxgap <float> — if the order line drops below the detection threshold, the order tracing algorithm will try to jump a gap of maximum size ´maxgap´ multiplied by the image width. (float; default: 0.2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.trace.maxgap [default = 0.2].
  • --uves_cal_orderpos.maxrms <float> — when fitting the orders with straight lines, this is the maximum allowed RMS relative to the median RMS of all orders. (float; default: 100.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.reject.maxrms [default = 100.0].
  • --uves_cal_orderpos.maxslope <float> — the maximum possible line slope, periodt. (float; default: 0.2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.hough.maxslope [default = 0.2].
  • --uves_cal_orderpos.minslope <float> — the minimum possible line slope. And btw, this should be the ´physical´ slope on the chip, meaning you do not take binning factors into account — the recipe handles that. (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.hough.minslope [default = 0.0].
  • --uves_cal_orderpos.minthresh <float> — the minimum threshold value is (min + minthres*(max - min)). Here ´min´ and ´max´ are the lowest and highest pixel values in the central bin of the order. (float; default: 0.2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.trace.minthresh [default = 0.2].
  • --uves_cal_orderpos.mmethod <str> — background subtraction method, choose your fighter 🥊 If it's ´median´, the background is sampled using the median of a sub-window. If ´minimum´, the minimum sub-window value gets used. If ´no´, then no background subtraction happens at all. (str; default: ´median´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.mmethod [default = median].
  • --uves_cal_orderpos.pthres <float> — in automatic mode, or if the number of orders to detect is read from a guess table, the detection of new lines stops once the intensity of a candidate line drops to less than ´pthres´ times the intensity of the previous detection. (float; default: 0.2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.hough.pthres [default = 0.2].
  • --uves_cal_orderpos.radx <int> — half X size of the median filtering window. (int; default: 2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.radx [default = 2].
  • --uves_cal_orderpos.rady <int> — half Y size of the median filtering window. (int; default: 1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.rady [default = 1].
  • --uves_cal_orderpos.samplewidth <int> — the separation of sample traces (used by the Hough transform) in the input image. (int; default: 50). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.hough.samplewidth [default = 50].
  • --uves_cal_orderpos.sloperes <int> — the resolution (width in pixels) of Hough space, iykyk. (int; default: 120). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.hough.sloperes [default = 120].
  • --uves_cal_orderpos.tracestep <int> — the step size used when tracing the orders. (int; default: 10). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.trace.tracestep [default = 10].
  • --uves_cal_orderpos.use_guess_tab <int> — if a Guess order table is provided, this parameter sets how it's used: 0: no usage, 1: use it to set the lower/upper Y raws where orders are searched, 2: the order table tries to fully match the guess. (int; default: 1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_orderpos.preproc.use_guess_tab [default = 1].
  • --uves_cal_predict.ccd_rot_angle_off <float> — offset on the CCD rotation angle. (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_predict.ccd_rot_angle_off [default = 0.0].
  • --uves_cal_predict.cd_angle_off <float> — offset on the cross disperser angle. (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_predict.cd_angle_off [default = 0.0].
  • --uves_cal_predict.compute_regression_sw <bool> — compute regression? That's literally the whole question. (bool; default: True). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_predict.compute_regression_sw [default = True].
  • --uves_cal_predict.def_pol1 <int> — polynomial X deg, bestie. (int; default: 4). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_predict.def_pol1 [default = 4].
  • --uves_cal_predict.def_pol2 <int> — polynomial Y deg, matching energy. (int; default: 5). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_predict.def_pol2 [default = 5].
  • --uves_cal_predict.ech_angle_off <float> — offset on the echelle angle. (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_predict.ech_angle_off [default = 0.0].
  • --uves_cal_predict.kappa <float> — the kappa value used for kappa-sigma clipping on the RESIDUAL between the YFIT and Y columns. (float; default: 4.5) In the EsoRex config file this whole thing lives under uves_obs_redchain.uves_cal_predict.kappa [default = 4.5]. 💫
  • --uves_cal_predict.mbox_x <int> — match box X size, bestie. (int; default: 40) EsoRex config name: uves_obs_redchain.uves_cal_predict.mbox_x [default = 40]. ✨
  • --uves_cal_predict.mbox_y <int> — the match box Y size, same energy. (int; default: 40) EsoRex config name: uves_obs_redchain.uves_cal_predict.mbox_y [default = 40]. ✨
  • --uves_cal_predict.tol <float> — the tolerance for that kappa-sigma clipping on the RESIDUAL between the YFIT and Y columns. (float; default: 2.0) EsoRex config name: uves_obs_redchain.uves_cal_predict.tol [default = 2.0]. 🎀
  • --uves_cal_predict.trans_x <float> — detector translation along X. (float; default: 0.0) EsoRex config name: uves_obs_redchain.uves_cal_predict.trans_x [default = 0.0]. 💅
  • --uves_cal_predict.trans_y <float> — detector translation along Y. (float; default: 0.0) EsoRex config name: uves_obs_redchain.uves_cal_predict.trans_y [default = 0.0]. 💅
  • --uves_cal_response.efficiency.paccuracy <float> — the pointing accuracy (in arcseconds) used to match up the observed star with a catalogue star. If the angular separation is smaller than this number, the identification goes through. (float; default: 60.0) EsoRex config name: uves_obs_redchain.uves_cal_response.efficiency.paccuracy [default = 60.0]. ⭐
  • --uves_cal_response.efficiency.reduce.best <bool> — (optimal extraction only, okurrr) If it's false (that's the fastest route), the spectrum gets extracted just once. If it's true (the best route), the spectrum gets extracted twice, and the second pass uses improved variance estimates built off the first iteration. Better variance estimates nudge the signal-to-noise up a lil bit, but at the cost of longer execution time. (bool; default: True) EsoRex config name: uves_obs_redchain.uves_cal_response.efficiency.reduce.best [default = True]. 🦋
  • --uves_cal_response.efficiency.reduce.extract.method <str> — extraction method. <average | linear | weighted | optimal> (str; default: linear) EsoRex config name: uves_obs_redchain.uves_cal_response.efficiency.reduce.extract.method [default = linear]. 🌸
  • --uves_cal_response.efficiency.reduce.ffmethod <str> — flat-fielding method, bestie. If you set it to pixel, flat-fielding happens in pixel-pixel space (that's before extraction). If you set it to extract, flat-fielding happens in pixel-order space (aka after extraction). If you set it to no, no flat-field correction happens at all — and in that case reduce.rebin.scale should be set to true to make sure flux is conserved (this goes for both response and science data). <pixel | extract | no> (str; default: no) EsoRex config name: uves_obs_redchain.uves_cal_response.efficiency.reduce.ffmethod [default = no]. 🔥
  • --uves_cal_response.efficiency.reduce.merge <str> — order merging method. If it's optimal, the flux in the overlapping region is set to the optimally-computed average of the single order spectra (computed using the uncertainties). If it's sum, the flux in the overlapping region is computed as the sum of the single order spectra. If it's noappend, the spectrum is simply rebinned but not merged. If flat-fielding is being done, optimal is the recommended method; otherwise go with sum. <optimal | sum | noappend> (str; default: sum) EsoRex config name: uves_obs_redchain.uves_cal_response.efficiency.reduce.merge [default = sum]. 🌈
  • --uves_cal_response.reduce.backsub.mmethod <str> — background measuring method. If it equals median, the background is sampled using the median of a subwindow. If it's minimum, the subwindow's minimum value gets used instead. If it's no, no background subtraction happens at all. (str; default: median) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.backsub.mmethod [default = median]. 🧚
  • --uves_cal_response.reduce.backsub.npoints <int> — the number of columns in interorder space used to sample the background. (int; default: 82) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.backsub.npoints [default = 82]. 💜
  • --uves_cal_response.reduce.backsub.radiusy <int> — the height (in pixels) of the background sampling window, which works out to (2*radiusy + 1). Heads up: this parameter is not corrected for binning. (int; default: 2) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.backsub.radiusy [default = 2]. 🍓
  • --uves_cal_response.reduce.backsub.sdegree <int> — degree of the interpolating splines. Currently only degree = 1 is supported, no cap. (int; default: 1) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.backsub.sdegree [default = 1]. ✨
  • --uves_cal_response.reduce.backsub.smoothx <float> — if spline interpolation is used to measure the background, the x-radius of the post-smoothing window is (smoothx * image_width). Here image_width is the image width after binning. If it's negative, the default values get used instead: BACKSUB_FLAT_SMOOTHX_BLUE for blue flat-field frames, BACKSUB_FLAT_SMOOTHX_RED for red flat-field frames, BACKSUB_SCI_SMOOTHX_BLUE for blue science frames, and BACKSUB_SCI_SMOOTHX_RED for red science frames. (float; default: -1.0) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.backsub.smoothx [default = -1.0]. 💖
  • --uves_cal_response.reduce.backsub.smoothy <float> — if spline interpolation is used to measure the background, the y-radius of the post-smoothing window is (smoothy * image_height). Here image_height is the image height after binning. If it's negative, the default values get used instead: BACKSUB_FLAT_SMOOTHY_BLUE for blue flat-field frames, BACKSUB_FLAT_SMOOTHY_RED for red flat-field frames, BACKSUB_SCI_SMOOTHY_BLUE for blue science frames, and BACKSUB_SCI_SMOOTHY_RED for red science frames. (float; default: -1.0) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.backsub.smoothy [default = -1.0]. 💖
  • --uves_cal_response.reduce.extract.best <bool> — (optimal extraction only) If it's false (the fastest option), the spectrum is extracted only once. If it's true (the best option), the spectrum is extracted twice, the second time using improved variance estimates based on the first iteration. Better variance estimates slightly improve the obtained signal-to-noise, but at the cost of increased execution time. (bool; default: True) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.extract.best [default = True]. 🦋
  • --uves_cal_response.reduce.extract.chunk <int> — in optimal extraction mode, this is the chunk size (in pixels) used for fitting the analytical profile. (Because fitting the analytical profile to single bins would suffer from low statistics, and we don't want that for you. 😭) (int; default: 32) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.extract.chunk [default = 32]. 🔥
  • --uves_cal_response.reduce.extract.kappa <float> — in optimal extraction mode, this is the threshold for bad (i.e. hot/cold) pixel rejection. If a pixel deviates more than kappa*sigma (where sigma is the uncertainty of the pixel flux) from the inferred spatial profile, its weight gets set to zero. Range: [-1,100]. If this parameter is negative, no rejection is performed. (float; default: 10.0) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.extract.kappa [default = 10.0]. 💅
  • --uves_cal_response.reduce.extract.method <str> — extraction method. Heads up on the compatibility tea: 2d/optimal are not supported by uves_cal_wavecal, weighted is supported only by uves_cal_wavecal, and 2d is not supported by uves_cal_response. (str; default: optimal) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.extract.method [default = optimal]. 👑
  • --uves_cal_response.reduce.extract.oversample <int> — the oversampling factor used for the virtual resampling algorithm. If it's negative, the value 5 gets used for S/N <=200, and the value 10 gets used if the estimated S/N is > 200. (int; default: -1) EsoRex config name: uves_obs_redchain.uves_cal_response.reduce.extract.oversample [default = -1]. ⭐
  • --uves_cal_response.reduce.extract.profile <str> — bestie, when you're in optimal extraction mode, this picks the kind of profile to use. Here's the lineup: gauss = a Gaussian profile, moffat = a Moffat profile with beta=4 plus a possible linear sky contribution, virtual = a virtual resampling algorithm (aka it actually measures and uses the real object profile, iconic), constant = assumes a constant spatial profile and lets you do optimal extraction of wavelength calibration frames. Then there's auto, which will automatically pick the best method based on the estimated S/N of the object. For low S/N, moffat or gauss are recommended (for robustness). For high S/N, virtual is recommended (for accuracy). Heads up though: in the case of virtual resampling, you need a precise determination of the order positions, so the order-definition is repeated using the (assumed non-low S/N) science frame (str; default: auto). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.extract.profile [default = auto].
  • --uves_cal_response.reduce.extract.skymethod <str> — in optimal extraction mode, this is the sky subtraction method you vibe with. median estimates the sky as the median of pixels along the slit (ignoring pixels close to the object), whereas optimal does a chi square minimization along the slit to obtain the best combined object and sky levels. The optimal method gives the most accurate sky determination but is also a bit slower than the median method, no cap (str; default: optimal). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.extract.skymethod [default = optimal].
  • --uves_cal_response.reduce.ffmethod <str> — flat-fielding method, let's go. Set it to pixel and flat-fielding is done in pixel-pixel space (before extraction). Set it to extract and flat-fielding is performed in pixel-order space (i.e. after extraction). Set it to no and no flat-field correction is done at all — but then reduce.rebin.scale should be set to true to ensure flux conservation (both for response and science data) (str; default: extract). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.ffmethod [default = extract].
  • --uves_cal_response.reduce.merge <str> — the order merging method ✨. If optimal, the flux in the overlapping region is set to the (optimally computed, using the uncertainties) average of single order spectra. If sum, the flux in the overlapping region is computed as the sum of the single order spectra. If noappend the spectrum is simply rebinned but not merged. If flat-fielding is done, method optimal is recommended, otherwise sum (str; default: optimal). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.merge [default = optimal].
  • --uves_cal_response.reduce.merge_delt1 <float> — order merging left hand (short wavelength) cut 🎀. To reduce the amount of order overlapping regions we allow to cut short and long wavelength ranges. This may reduce the ripple possibly introduced by the order merging. Suggested values are: 10 (W<=390), 12 (390<W<=437, 520<W<=564), 14 (437<W<=520, 564<W) (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.merge_delt1 [default = 0.0].
  • --uves_cal_response.reduce.merge_delt2 <float> — order merging right hand (long wavelength) cut. Same deal as delt1 but the other side: to reduce the amount of order overlapping regions we allow to cut short and long wavelength ranges. This may reduce the ripple possibly introduced by the order merging. Suggested values is 4 (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.merge_delt2 [default = 0.0].
  • --uves_cal_response.reduce.objoffset <float> — offset (in pixels) of extraction slit with respect to center of order. For optimal extraction the full slit is offset. For linear/average extraction, reduce.objoffset is ignored if reduce.objslit [default -1.0] is negative — in which case the offset is automatically determined by measuring the actual object position, cute (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.objoffset [default = 0.0].
  • --uves_cal_response.reduce.objslit <float> — object window size (in pixels), and heads up, it's ignored for optimal extraction. The value must be smaller than the total slit length. If negative, the default value (half of full slit length) is used. The upper and lower sky windows are defined as the part of the full slit (if any) outside the object window. The center of the object window is determined by the offset parameter (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.objslit [default = -1.0].
  • --uves_cal_response.reduce.rebin.scale <bool> — whether or not to multiply by the factor dx/dlambda (pixels per wavelength) during the rebinning to conserve the flux. This option is disabled as default because applying the flat field correction already ensures flux conservation. So this parameter should be TRUE (for response and science data) only if reduce.ffmethd = no (bool; default: False). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.rebin.scale [default = False].
  • --uves_cal_response.reduce.rebin.wavestep <float> — the bin size used for BLUE/REDL data (in w.l.u.) in wavelength space. If negative, a step size of 2/3 * ( average pixel size ) is used (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.rebin.wavestep [default = -1.0].
  • --uves_cal_response.reduce.rebin.wavestep_redu <float> — the bin size used for REDU data (in w.l.u.) in wavelength space. If negative, a step size of 2/3 * ( average pixel size ) is used (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.rebin.wavestep_redu [default = -1.0].
  • --uves_cal_response.reduce.skysub <bool> — do sky-subtraction (only applicable to linear and average extractions)? (bool; default: True). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.skysub [default = True].
  • --uves_cal_response.reduce.slitlength <float> — extraction slit length (in pixels). If negative, the value inferred from the raw frame header is used (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.slitlength [default = -1.0].
  • --uves_cal_response.reduce.tiltcorr <bool> — if enabled (and bestie, it's recommended 🫶), the provided dispersion solutions obtained at different slit positions are interpolated linearly at the actually measured position of the object/sky. Line tilt correction is currently not supported for 2d extraction, in which case the dispersion solution obtained at the middle of the slit is always used (bool; default: True). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_response.reduce.tiltcorr [default = True].

  • --uves_cal_wavecal.alpha <float> — the parameter that controls the distance to the nearest neighbours (float; default: 0.1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.identify.alpha [default = 0.1].
  • --uves_cal_wavecal.degree <int> — degrees of the global 2d dispersion polynomial. If a negative number is specified, the polynomial degrees are automatically selected by starting from (1, 1) and inreasing the degrees as long as the RMS residual decreases significantly (int; default: 4). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.identify.degree [default = 4].
  • --uves_cal_wavecal.extract.best <bool> — (optimal extraction only) If false (fastest), the spectrum is extracted only once. If true (best), the spectrum is extracted twice, the second time using improved variance estimates based on the first iteration. Better variance estimates slightly improve the obtained signal to noise but at the cost of increased execution time (bool; default: True). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.best [default = True].
  • --uves_cal_wavecal.extract.chunk <int> — in optimal extraction mode, the chunk size (in pixels) used for fitting the analytical profile (a fit of the analytical profile to single bins would suffer from low statistics) (int; default: 32). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.chunk [default = 32].
  • --uves_cal_wavecal.extract.kappa <float> — in optimal extraction mode, this is the threshold for bad (i.e. hot/cold) pixel rejection 💀. If a pixel deviates more than kappa*sigma (where sigma is the uncertainty of the pixel flux) from the inferred spatial profile, its weight is set to zero. Range: [-1,100]. If this parameter is negative, no rejection is performed (float; default: 10.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.kappa [default = 10.0].
  • --uves_cal_wavecal.extract.method <str> — which extraction method we're using, bestie. Quick vibe check though: 2d and optimal are not supported by uves_cal_wavecal, weighted is supported only by uves_cal_wavecal, and 2d is not supported by uves_cal_response. So like, choose wisely 💅 (str; default: average). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.method [default = average].
  • --uves_cal_wavecal.extract.oversample <int> — the oversampling factor for the virtual resampling algorithm. If it's negative, the value 5 gets used for S/N <=200, and the value 10 gets used if the estimated S/N is > 200 (int; default: -1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.oversample [default = -1].
  • --uves_cal_wavecal.extract.profile <str> — in optimal extraction mode, this is the kind of profile we're working with, and honestly it's giving ✨menu✨:
    • gauss gives a Gaussian profile
    • moffat gives a Moffat profile with beta=4 and a possible linear sky contribution
    • virtual uses a virtual resampling algorithm (i.e. it measures and uses the actual object profile)
    • constant assumes a constant spatial profile and allows optimal extraction of wavelength calibration frames
    • auto will automatically select the best method based on the estimated S/N of the object

For low S/N, moffat or gauss are recommended (for robustness). For high S/N, virtual is recommended (for accuracy). In the case of virtual resampling, a precise determination of the order positions is required; therefore the order-definition is repeated using the (assumed non-low S/N) science frame (str; default: auto). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.profile [default = auto].

  • --uves_cal_wavecal.extract.skymethod <str> — in optimal extraction mode, the sky subtraction method, no cap. median estimates the sky as the median of pixels along the slit (ignoring pixels close to the object), whereas optimal does a chi square minimization along the slit to obtain the best combined object and sky levels. The optimal method gives the most accurate sky determination but is also a bit slower than the median method (str; default: optimal). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.extract.skymethod [default = optimal].
  • --uves_cal_wavecal.kappa <float> — lines with residuals more then kappa stdev are rejected from the final fit (float; default: 4.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.calibrate.kappa [default = 4.0].
  • --uves_cal_wavecal.length <float> — the length (in pixels) of each extraction window 🪟. This parameter is also equal to the seperation of adjacent window centers, which means the extraction windows are always aligned — cute, right? The parameter is automatically adjusted according to the binning of the input raw frame. If negative, the extraction window length is determined automatically to cover the full slit (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.length [default = -1.0].
  • --uves_cal_wavecal.maxerror <float> — this parameter controls the graceful exit of the identification loop 🚪✨. If the RMS of the global fit exceeds this value (pix) the iteration stops (float; default: 20.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.identify.maxerror [default = 20.0].
  • --uves_cal_wavecal.maxlines <int> — maximum number of lines to detect. If zero, the default value (1600 for BLUE/REDL chip; 1400 for REDU chip) is used. (int; default: 0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.search.maxlines [default = 0].
  • --uves_cal_wavecal.minlines <int> — minimum number of lines to detect. If zero, the default value (1100 for BLUE/REDL chips; 1000 for REDU chip) is used. (int; default: 0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.search.minlines [default = 0].
  • --uves_cal_wavecal.nwindows <int> — number of extraction windows per trace. The windows will be aligned (i.e. no overlap and no spacing between adjacent windows). Unless an offset is specified, the middle window(s) is centered on the trace (int; default: 3). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.nwindows [default = 3].
  • --uves_cal_wavecal.offset <float> — a global offset (in pixels) of all extraction windows (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.offset [default = 0.0].
  • --uves_cal_wavecal.range <int> — width (pix) of search window is 2*range + 1. This parameter is automatically adjusted according to binning. (int; default: 8). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.search.range [default = 8].
  • --uves_cal_wavecal.rebin.scale <bool> — whether or not to multiply by the factor dx/dlambda (pixels per wavelength) during the rebinning to conserve the flux. This option is disabled as default because applying the flat field correction already ensures flux conservation. Therefore this parameter should be TRUE (for response and science data) only if reduce.ffmethd = no. (bool; default: False). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.rebin.scale [default = False].
  • --uves_cal_wavecal.rebin.wavestep <float> — the bin size used for BLUE/REDL data (in w.l.u.) in wavelength space 🌈. If negative, a step size of 2/3 * ( average pixel size ) is used. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.rebin.wavestep [default = -1.0].
  • --uves_cal_wavecal.rebin.wavestep_redu <float> — the bin size used for REDU data (in w.l.u.) in wavelength space. If negative, a step size of 2/3 * ( average pixel size ) is used. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.rebin.wavestep_redu [default = -1.0].
  • --uves_cal_wavecal.shiftmax <float> — the maximum shift (pix) in either direction compared to guess solution. This parameter is automatically corrected for binning (float; default: 10.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.first.shiftmax [default = 10.0].
  • --uves_cal_wavecal.shiftstep <float> — the step size (pix) used when searching for the optimum shift. This parameter is automatically corrected for binning (float; default: 0.1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.first.shiftstep [default = 0.1].
  • --uves_cal_wavecal.shifttoler <float> — tolerance (pix) when matching shifted lines. Heads up bestie, this parameter is not adjusted according to binning (float; default: 0.05). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.first.shifttoler [default = 0.05].
  • --uves_cal_wavecal.tolerance <float> — tolerance of fit. If positive, the tolerance is in pixel units. If negative, abs(tolerance) is in wavelength units. Lines with residuals worse than the tolerance are excluded from the final fit. Unlike in previous versions, this parameter is not corrected for CCD binning. This rejection based on the absolute residual in pixel can be effectively disabled by setting the tolerance to a very large number (e.g. 9999). In that case outliers will be rejected using only kappa sigma clipping. (float; default: 0.6). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_cal_wavecal.calibrate.tolerance [default = 0.6].
  • --uves_obs_scired.clean_traps <bool> — clean detector traps 🪤. If TRUE detector traps are interpolated. The bad pixels are replaced by the average of thenearest good pixels in the same column, or simply marked as bad. The positions of bad pixels are hard-coded (as function of UVES chip). (bool; default: False). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.clean_traps [default = False].
  • --uves_obs_scired.reduce.backsub.mmethod <str> — background measuring method. If equal to median the background is sampled using the median of a subwindow. If minimum, the subwindow minimum value is used. If no, no background subtraction is done. (str; default: median). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.backsub.mmethod [default = median].
  • --uves_obs_scired.reduce.backsub.npoints <int> — this is the number of columns in interorder space used to sample the background. (int; default: 82). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.backsub.npoints [default = 82].
  • --uves_obs_scired.reduce.backsub.radiusy <int> — the height (in pixels) of the background sampling window is (2*radiusy + 1). This parameter is not corrected for binning. (int; default: 2). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.backsub.radiusy [default = 2].
  • --uves_obs_scired.reduce.backsub.sdegree <int> — degree of interpolating splines. Currently only degree = 1 is supported (int; default: 1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.backsub.sdegree [default = 1].
  • --uves_obs_scired.reduce.backsub.smoothx <float> — okay so if you're using spline interpolation to measure the background, this sets the x-radius of the post-smoothing window, and it works out to (smoothx * image_width). Quick note: image_width here means the image width after binning, not before, bestie 💅. If you set it negative, the defaults kick in and they're different for every frame type: (25.0/4096) for blue flat-field frames, (50.0/4096) for red flat-field frames, (300.0/4096) for blue science frames and (300.0/4096) for red science frames. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.backsub.smoothx [default = -1.0].
  • --uves_obs_scired.reduce.backsub.smoothy <float> — same vibe as above but for the y-axis 🦋: if spline interpolation is measuring the background, the y-radius of the post-smoothing window is (smoothy * image_height), where image_height is the image height after binning. Negative values mean you get the defaults: (100.0/2048) for blue flat-field frames, (300.0/2048) for red flat-field frames, (200.0/2048) for blue science frames and (500.0/2048) for red science frames. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.backsub.smoothy [default = -1.0].
  • --uves_obs_scired.reduce.extract.best <bool> — optimal extraction only, just so you know 🫶. Set it to false and you get the fastest path: the spectrum gets extracted exactly once. Set it to true and it's the best path: the spectrum is extracted twice, the second time using improved variance estimates built from the first iteration. Better variance estimates slightly improve the signal to noise you get out — but it costs you more execution time, so it's a tradeoff, not a freebie. (bool; default: True). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.best [default = True].
  • --uves_obs_scired.reduce.extract.chunk <int> — in optimal extraction mode, this is the chunk size (in pixels) used for fitting the analytical profile. And why do we chunk at all? Because a fit of the analytical profile to single bins would suffer from low statistics 😭. So: chunk it. (int; default: 32). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.chunk [default = 32].
  • --uves_obs_scired.reduce.extract.kappa <float> — optimal extraction mode again, and this one's the bouncer at the club 🚫: it's the threshold for bad (i.e. hot/cold) pixel rejection. If a pixel deviates more than kappa*sigma from the inferred spatial profile (where sigma is the uncertainty of the pixel flux), its weight gets set to zero. It's giving "you're not on the list." Range: [-1,100]. If this parameter is negative, no rejection is performed at all — everyone gets in. (float; default: 10.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.kappa [default = 10.0].
  • --uves_obs_scired.reduce.extract.method <str> — the extraction method. Heads up on compatibility, because this is the messy part 💀: 2d/optimal not supported by uves_cal_wavecal, weighted supported only by uves_cal_wavecal, 2d not supported by uves_cal_response. (str; default: ´optimal´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.method [default = optimal].
  • --uves_obs_scired.reduce.extract.oversample <int> — the oversampling factor used for the virtual resampling algorithm ✨. If it's negative, you get 5 when S/N <= 200, and 10 when the estimated S/N is > 200. (int; default: -1). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.oversample [default = -1].
  • --uves_obs_scired.reduce.extract.profile <str> — optimal extraction mode, and this is the big one: which kind of profile do you want 👑.
    • ´gauss´ gives you a Gaussian profile.
    • ´moffat´ gives you a Moffat profile with beta=4 and a possible linear sky contribution.
    • ´virtual´ uses a virtual resampling algorithm — i.e. it measures and uses the actual object profile.
    • ´constant´ assumes a constant spatial profile and allows optimal extraction of wavelength calibration frames.
    • ´auto´ will automatically select the best method based on the estimated S/N of the object.

So which one do you pick? For low S/N, ´moffat´ or ´gauss´ are recommended (for robustness). For high S/N, ´virtual´ is recommended (for accuracy). And here's the catch with virtual resampling: it requires a precise determination of the order positions, so the order-definition gets repeated using the (assumed non-low S/N) science frame. (str; default: ´auto´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.profile [default = auto].

  • --uves_obs_scired.reduce.extract.skymethod <str> — in optimal extraction mode, which sky subtraction method are we using? 🌈 ´median´ estimates the sky as the median of pixels along the slit, ignoring pixels close to the object. ´optimal´ instead does a chi square minimization along the slit to get the best combined object and sky levels. The optimal method gives the most accurate sky determination but is also a bit slower than the median method. Pick your fighter. (str; default: ´optimal´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.extract.skymethod [default = optimal].
  • --uves_obs_scired.reduce.ffmethod <str> — the flat-fielding method 🎀. Set it to ´pixel´ and flat-fielding happens in pixel-pixel space (before extraction). Set it to ´extract´ and flat-fielding is performed in pixel-order space (i.e. after extraction). Set it to ´no´ and no flat-field correction is done at all — in which case reduce.rebin.scale should be set to true to ensure flux conservation, and that goes for both response and science data. (str; default: ´extract´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.ffmethod [default = extract].
  • --uves_obs_scired.reduce.merge <str> — the order merging method 💜.
    • ´optimal´ → the flux in the overlapping region is set to the (optimally computed, using the uncertainties) average of single order spectra.
    • ´sum´ → the flux in the overlapping region is computed as the sum of the single order spectra.
    • ´noappend´ → the spectrum is simply rebinned but not merged.

If flat-fielding is done, method ´optimal´ is recommended, otherwise ´sum´. (str; default: ´optimal´). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.merge [default = optimal].

  • --uves_obs_scired.reduce.merge_delt1 <float> — order merging left hand (short wavelength) cut ✂️. To reduce the amount of order overlapping regions, we're allowed to cut short and long wavelength ranges, and this may reduce the ripple possibly introduced by the order merging. Suggested values are: 10 (W<=390), 12 (390<W<=437, 520<W<=564), 14 (437<W<=520, 564<W). (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.merge_delt1 [default = 0.0].
  • --uves_obs_scired.reduce.merge_delt2 <float> — order merging right hand (long wavelength) cut ✂️. Same deal: to reduce the amount of order overlapping regions we allow cutting short and long wavelength ranges, and this may reduce the ripple possibly introduced by the order merging. Suggested values is 4. (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.merge_delt2 [default = 0.0].
  • --uves_obs_scired.reduce.objoffset <float> — the offset (in pixels) of the extraction slit with respect to the center of the order 🌸. For optimal extraction, the full slit is offset. For linear/average extraction, reduce.objoffset is ignored if reduce.objslit [default -1.0] is negative — and in that case the offset is automatically determined by measuring the actual object position. (float; default: 0.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.objoffset [default = 0.0].
  • --uves_obs_scired.reduce.objslit <float> — object window size (in pixels), and it's ignored for optimal extraction, so don't stress about it there 🙈. The value must be smaller than the total slit length. If negative, the default value (half of full slit length) is used. The upper and lower sky windows are defined as the part of the full slit (if any) outside the object window. The center of the object window is determined by the offset parameter. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.objslit [default = -1.0].
  • --uves_obs_scired.reduce.rebin.scale <bool> — whether or not to multiply by the factor dx/dlambda (pixels per wavelength) during the rebinning, to conserve the flux 🌟. This option is disabled as default because applying the flat field correction already ensures flux conservation. So this parameter should be TRUE (for response and science data) only if reduce.ffmethd = no. (bool; default: False). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.rebin.scale [default = False].
  • --uves_obs_scired.reduce.rebin.wavestep <float> — the bin size used for BLUE/REDL data (in w.l.u.) in wavelength space 💫. If negative, a step size of 2/3 * ( average pixel size ) is used. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.rebin.wavestep [default = -1.0].
  • --uves_obs_scired.reduce.rebin.wavestep_redu <float> — and this one is the same thing but for REDU data 🦋: the bin size used for REDU data (in w.l.u.) in wavelength space. If negative, a step size of 2/3 * ( average pixel size ) is used. (float; default: -1.0). The full name of this option for the EsoRex configuration file is uves_obs_redchain.uves_obs_scired.reduce.rebin.wavestep_redu [default = -1.0].
  • --uves_obs_scired.reduce.skysub <bool> — bestie, do we sky-subtract or not? (only applicable to linear and average extractions, so don't come for me if you're doing something else). It's a bool, and the default is True. Full option name for the EsoRex config file: uves_obs_redchain.uves_obs_scired.reduce.skysub [default = True]. ✨
  • --uves_obs_scired.reduce.slitlength <float> — extraction slit length, measured in pixels. If you hand it a negative value, it just goes and reads the value off the raw frame header instead, no thoughts head empty, it handles it. It's a float, default -1.0. Full option name for the EsoRex config file: uves_obs_redchain.uves_obs_scired.reduce.slitlength [default = -1.0]. 🌸
  • --uves_obs_scired.reduce.tiltcorr <bool> — if you turn this on (and you should, it's literally recommended), the dispersion solutions you got at different slit positions get interpolated linearly at the actual measured position of the object/sky. Real ones know. 🫶 But heads up: line tilt correction is currently not supported for 2d extraction, and in that case the dispersion solution taken at the middle of the slit is always the one used, periodt. It's a bool, default True. Full option name for the EsoRex config file: uves_obs_redchain.uves_obs_scired.reduce.tiltcorr [default = True]. 💅

Also, not me forgetting the best part: you can absolutely make a configuration file holding all these options with whatever default values you vibe with. Just go read the details from the 'esorex --help' command, it's all in there. 🎀

👀 SEE ALSO 👀

The whole documentation for the uves pipeline can be downloaded as a PDF file from this URL, bookmark it bestie:

ftp://ftp.eso.org/pub/dfs/pipelines/uves/uves-pipeline-manual-6.1.8.pdf

Want a lil overview of all the ESO pipelines that exist? It's right here:

https://www.eso.org/sci/software/pipelines/

Basic documentation about the EsoRex program lives in the esorex (1) man page. 🦋

And guess what — you can call these pipelines from python using the python-cpl package. Obsessed. Go peep https://packages.python.org/python-cpl/index.html for more.

The other recipes of the uves pipeline, in all their iconic glory: flames_cal_mkmaster(7), flames_cal_orderpos(7), flames_cal_predict(7), flames_cal_prep_sff_ofpos(7), flames_cal_wavecal(7), flames_obs_redchain(7), flames_obs_scired(7), flames_utl_unpack(7), uves_cal_cd_align(7), uves_cal_mbias(7), uves_cal_mdark(7), uves_cal_mflat(7), uves_cal_mflat_combine(7), uves_cal_mkmaster(7), uves_cal_orderpos(7), uves_cal_predict(7), uves_cal_response(7), uves_cal_tflat(7), uves_cal_wavecal(7), uves_obs_scired(7), uves_utl_ima_arith(7), uves_utl_remove_crh_single(7). ✨

💫 VERSION 💫

uves_obs_redchain 6.1.8

👑 AUTHOR 👑

Jonas M. Larsen <cpl@eso.org> — king behavior fr fr 💜

😭 BUG REPORTS 😭

Please report any problems to cpl@eso.org. Or, if you'd rather, you can send a report to the ESO User Support Department <usd-help@eso.org>. They wanna hear from you, no cap. 🙈

📜 LICENSE 📜

This file is part of the FLAMES/UVES Pipeline Copyright (C) 2004, 2005, 2006, 2007 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., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA.


And that's a wrap, bestie! 🎀 This whole glow-up is uves_obs_redchain version 6.1.8, dated 6.1.8 — go forth and reduce those spectra, you absolute icon. 💅✨🌷

📦 where this page comes from