VISIR_SPC_REDUCE(7)
π NAME π
okay bestie, meet VISIR_SPC_REDUCE(7) β also known as visir_spc_reduce, the Spectroscopic Observation recipe from the visir recipes section. π
β¨ SYNOPSIS β¨
esorex visir_spc_reduce [OPTIONS] FILE.sof
πΈ DESCRIPTION πΈ
This recipe performs a wavelength calibration followed by spectrum extraction from a combined image. It can also compute sensitivities for standard star observations. fr fr, it works for low and high resolution including echelle mode. π¦
The files listed in the Set Of Frames (sof-file) must be tagged:
VISIR-Long-Slit-Spectroscopy-file.fits SPEC_OBS_LMR
VISIR-Quantum-Efficiency-Calibration-file.fits SPEC_CAL_QEFF
VISIR-Atmospheric-Emission-Lines-Calibration-file.fits SPEC_CAL_LINES
VISIR-Standard-Star-Flux-Catalog.fits (optional)SPEC_STD_CATALOG
VISIR-linearty-table.fits LINEARITY_TABLE (optional)
Additionally, a bad pixel map with a PRO.CATG of IMG_BPM may be added to the Set Of Frames with tag: BPM.
π OPTIONS π
--planestart <int>β okay so this is the plane number to start repacking from in each nod cycle; earlier planes are skipped. It's anint; default:0. Full EsoRex config name:visir.visir_util_repack.planestart[default = 0].--planelimit <int>β limits the number of processed input planes. It will repack until at least this number of input images have been processed or the full dataset has been repacked. Always full chop cycles need to be repacked, so the number is adjusted upward to the next multiple of images per chop cycle.<= 0for no limit. It's anint; default:-1. Full EsoRex config name:visir.visir_util_repack.planelimit[default = -1].--trimlow <int>β burst data only. Number of additional planes to cut from before each plane with chopper movement. It's anint; default:0. Full EsoRex config name:visir.visir_util_repack.trimlow[default = 0].--trimhigh <int>β burst data only. Number of additional planes to cut from after each plane with chopper movement. A value of-1does not skip the plane of the movement. It's anint; default:0. Full EsoRex config name:visir.visir_util_repack.trimhigh[default = 0].--lincorrect <bool>β apply linearity correction. Should only be enabled on high flux observations; may degrade results otherwise. It's abool; default:False. Full EsoRex config name:visir.visir_util_repack.lincorrect[default = False].--xl <int>β coordinate in spatial direction. Together withylit defines the lower point of a rectangle containing only skylines for the wavelength shift detection. It's anint; default:117. Full EsoRex config name:visir.visir_util_undistort.xl[default = 117].--yl <int>β coordinate in wavelength direction. Seexl. It's anint; default:110. Full EsoRex config name:visir.visir_util_undistort.yl[default = 110].--xh <int>β coordinate in spatial direction. Together withylit defines the higher point of a rectangle containing only skylines for the wavelength shift detection. It's anint; default:125. Full EsoRex config name:visir.visir_util_undistort.xh[default = 125].--yh <int>β coordinate in wavelength direction. Seexh. It's anint; default:150. Full EsoRex config name:visir.visir_util_undistort.yh[default = 150].--slit_skew <float>β distortion correction: Skew of slit (degrees) (clockwise). It's afloat; default:0.52. Full EsoRex config name:visir.visir_util_undistort.phi[default = 0.52].--spectrum_skew <float>β distortion correction: LMR Skew of spectrum (degrees) (counter-clockwise). Not used in High Resolution. It's afloat; default:1.73. Full EsoRex config name:visir.visir_util_undistort.ksi[default = 1.73].--vert_arc <float>β distortion correction: LR Detector vertical curvature (pixel). Reduced by a factor4in MR. Not used in HR A-side. Increased by a factor115/52in HR B-side. It's afloat; default:-0.8. Full EsoRex config name:visir.visir_util_undistort.eps[default = -0.8].--hori_arc <float>β distortion correction: LMR Detector horizontal curvature (pixel). Increased by a factor1.5in HR A-side. Reduced by a factor2in HR B-side. It's afloat; default:0.0. Full EsoRex config name:visir.visir_util_undistort.delta[default = 0.0].--destripe_iterations <int>β max number of destriping iterations (0to disable destriping). Horizontal destriping is done first and if no horizontal striping is detected, vertical destriping is performed. It's anint; default:15. Full EsoRex config name:visir.visir_old_util_destripe.nstripe[default = 15].--destripe_morpho <bool>β destripe with morphological cleaning. It's abool; default:False. Full EsoRex config name:visir.visir_old_util_destripe.mstripe[default = False].--rej <str>β each resulting pixel is the average of the corresponding (interpolated) pixel value in each jittered image. A positive value,n1, for the first of the two integers specifies that for each pixel the smallestn1pixel values shall be ignored in the averaging. Similarly, a positive value,n2, for the second of the two integers specifies that for each pixel the largestn2pixel values shall be ignored in the averaging. It's astr; default:Β΄0-0Β΄. Full EsoRex config name:visir.visir_old_spc_obs.rej[default = 0-0].--bkgcorrect <bool>β subtract the median from the spectral column before extracting the wavelength. This is required when the skylines do not correctly cancel due to gratting oscillations. It's abool; default:True. Full EsoRex config name:visir.visir_old_spc_obs.bkgcorrect[default = True].--plot <int>β plot time bestie. The recipe can produce a number of predefined plots. Zero means that none of the plots are produced, while increasing values (e.g.1or2) increases the number of plots produced. If the plotting fails a warning is produced, and the recipe continues. The default behaviour of the plotting is to usegnuplot(with option-persist). The recipe currently produces 1D-plots usinggnuplotcommands. The recipe user can control the actual plotting-command used by the recipe to create the plot by setting the environment variableCPL_PLOTTER. Currently, ifCPL_PLOTTERis set it must contain the stringΒ΄gnuplotΒ΄. Setting it toΒ΄cat > my_gnuplot_$$.txtΒ΄causes a number of ASCII-files to be created, which each produce a plot when given as standard input tognuplot(e.g. later or on a different computer). A finer control of the plotting options can be obtained by writing an executable script, e.g.my_gnuplot.pl, that executesgnuplotafter setting the desiredgnuplotoptions (e.g.set terminal pslatex color) and then settingCPL_PLOTTERtomy_gnuplot.pl. The predefined plots include plotting of images. Images can be plotted not only withgnuplot, but also using thepnmformat. This is controlled with the environment variableCPL_IMAGER. IfCPL_IMAGERis set to a string that does not contain the wordgnuplot, the recipe will generate the plot inpnmformat. E.g. settingCPL_IMAGERtoΒ΄display - &Β΄will produce a gray-scale image using the image viewerdisplay. It's anint; default:0. Full EsoRex config name:visir.visir_old_spc_obs.plot[default = 0].--slit_skew <float>β distortion correction: Skew of slit (degrees) (clockwise). It's afloat; default:0.52. Full EsoRex config name:visir.visir_old_spc_obs.phi[default = 0.52].--spectrum_skew <float>β distortion correction: LMR Skew of spectrum (degrees) (counter-clockwise). Not used in High Resolution. It's afloat; default:1.73. Full EsoRex config name:visir.visir_old_spc_obs.ksi[default = 1.73].--vert_arc <float>β distortion correction: LR Detector vertical curvature (pixel). Reduced by a factor4in MR. Not used in HR A-side. Increased by a factor115/52in HR B-side. It's afloat; default:-0.8. Full EsoRex config name:visir.visir_old_spc_obs.eps[default = -0.8].--hori_arc <float>β distortion correction: LMR Detector horizontal curvature (pixel). Increased by a factor1.5in HR A-side. Reduced by a factor2in HR B-side. It's afloat; default:0.0. Full EsoRex config name:visir.visir_old_spc_obs.delta[default = 0.0].--fixcombi <bool>β perform the distortion correction on the combined image, and not on each of the jittered images. This will reduce excution time and degrade the quality of the combined image. It's abool; default:False. Full EsoRex config name:visir.visir_old_spc_obs.fixcombi[default = False].--emis_tol <float>β the computation of the mean and standard deviation of the sensitivity is done for wavelengths with an atmospheric emissivity of at mostemis_min + emis_tol * (emis_max - emis_min), whereemis_minis the minimum emissivity in the observed wavelength range andemis_maxis the ditto maximum. Thusemis_tol = 1means that all wavelengths are included. It's afloat; default:1.0. Full EsoRex config name:visir.visir_old_spc_obs.emis_tol[default = 1.0].--destripe_iterations<int> β the max number of destriping rounds, bestie. Set it to0and destriping is fully off, no cap. The order matters here: horizontal destriping goes first, and only if no horizontal striping is detected does it move on to vertical destriping. (int; default:15). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.nstripe[default =15].--destripe_morpho<bool> β destripe with morphological cleaning π (bool; default:False). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.mstripe[default =False].--rl<int> β rejects the leftmost columns during spectrum extraction, and0means literally all the columns on the left get used. In cross-dispersion mode a (small) negative number is allowed (pixel) (int; default:0). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.reject_left[default =0].--rr<int> β same energy but for the right side: rejects the rightmost columns in spectrum extraction, and0means all columns on the right are used. In cross-dispersion mode a (small) negative number may be used (pixel) (int; default:0). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.reject_right[default =0].--apfile<str> β an optional ASCII file spec of the aperture definitions to use during spectral extraction, and honestly this one is the main character. Here's the tea, line by line:- Each line must contain either 3 fields for optimal extraction, or an even number of fields greater than 5 for aperture extraction.
- For optimal extraction the 1st field should be
Β΄OΒ΄, and for aperture extraction it should beΒ΄AΒ΄. - In both cases the next pair of fields indicate the left & right edges of the source aperture in pixel coordinates.
- For aperture extraction, the fields after the 3rd define the sky apertures coordinates, with the 4th field indicating the method used to determine the sky background β one of
Β΄AΒ΄(average),Β΄FΒ΄(linear fit), orΒ΄MΒ΄(median) β followed by at least one pair of pixel coordinates representing the left & right edge of a sky aperture. - You may supply more sky apertures by supplying additional pixel coordinate pairs after the first.
- Multiple lines targeting the same order are allowed. β¨
(str; default: Β΄NONEΒ΄). The full name of this option for the EsoRex configuration file is visir.visir_old_spc_obs.apfile [default = NONE].
--ro_noise<float> β readout noise of the detector (float; default:14.5). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.ron[default =14.5].--ox_sigma<float> β the sigma used for clipping in optimal extraction (float; default:5.0). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.optex_sigma[default =5.0].--ox_niters<int> β how many optimal extraction iterations to perform (int; default:2). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.optex_niters[default =2].--ox_smooth<int> β width of the smoothing window to use along the spectral dimension during optimal extraction. A median filter is used. (int; default:31). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.optex_smooth[default =31].--gain<float> β detector gain (float; default:0.75). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.gain[default =0.75].--ox_kernel<int> β size of the square smoothing kernel, in pixels, to apply to the science frame before optimal extraction (it's ignored during aperture extraction, fyi). A median filter is used. (int; default:3). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.optex_kernel[default =3].--respcal<str> β an optional path to a FITS file holding a 1-D fringe model, which gets divided into the 1-D extracted spectra so the fringes are removed. bye fringes π (str; default:Β΄NONEΒ΄). The full name of this option for the EsoRex configuration file isvisir.visir_old_spc_obs.respcal[default =NONE].--delete-temp<bool> β delete the temporary files created during processing (bool; default:True). The full name of this option for the EsoRex configuration file isvisir.visir_spc_reduce.delete-temp[default =True].--destripe<bool> β attempt to remove stripes (bool; default:False). The full name of this option for the EsoRex configuration file isvisir.visir_spc_reduce.destripe[default =False].
Ok so important side note: it is possible to create a configuration file containing these options, along with suitable default values. Please refer to the details provided by the 'esorex --help' command. π«
π SEE ALSO π
The full documentation for the visir pipeline can be downloaded as a PDF file using the following URL:
ftp://ftp.eso.org/pub/dfs/pipelines/visir/visir-pipeline-manual-1.4.pdf
An overview over the existing ESO pipelines can be found on the web page https://www.eso.org/sci/software/pipelines/.
Basic documentation about the EsoRex program can be found at the esorex (1) man page.
It is possible to call the pipelines from python using the python-cpl package. See https://packages.python.org/python-cpl/index.html for further information.
The other recipes of the visir pipeline are visir_img_dark(7), visir_img_ff(7), visir_img_reduce(7), visir_img_trans(7), visir_old_img_combine(7), visir_old_img_phot(7), visir_old_spc_obs(7), visir_old_spc_obs_ech(7), visir_old_spc_phot(7), visir_old_spc_phot_ech(7), visir_old_spc_wcal(7), visir_old_spc_wcal_ech(7), visir_old_util_destripe(7), visir_util_apply_calib(7), visir_util_clip(7), visir_util_convert_weight(7), visir_util_detect_shift(7), visir_util_img_std_cat(7), visir_util_join(7), visir_util_qc(7), visir_util_repack(7), visir_util_run_swarp(7), visir_util_spc_std_cat(7), visir_util_spc_txt2fits(7), visir_util_undistort(7)
π VERSION π
visir_spc_reduce 4.4.2
π AUTHOR π
Julian Taylor <jtaylor@partner.eso.org>
π BUG REPORTS π
Please report any problems to jtaylor@partner.eso.org. Alternatively, you may send a report to the ESO User Support Department <usd-help@eso.org>.
π LICENSE π
This file is part of the VISIR Instrument Pipeline Copyright (C) 2015 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 the whole page bestie!! π«Ά this is visir_spc_reduce version 4.4.2, dated 4.4.2 in the footer, and you absolutely ate reading all of it. go reduce some spectra, you icon π
β¨
π¦ where this page comes from
- debian bookworm: cpl-plugin-visir-doc 4.4.2+dfsg-1 Β· GPL-v2+
- ubuntu noble: cpl-plugin-visir-doc 4.4.2+dfsg-1 Β· GPL-v2+
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms