From 1740564b48f7424b46c10f967e47e2f7510c2b2d Mon Sep 17 00:00:00 2001 From: Emmanuel Bertin Date: Sun, 29 Oct 2017 23:10:10 +0100 Subject: [PATCH] Doc: Added description of WIN positions and two figures. --- doc/src/Config.rst | 55 ++++++++++++ doc/src/Installing.rst | 7 +- doc/src/Introduction.rst | 8 +- doc/src/Measurements.rst | 23 +++++ doc/src/Param.rst | 85 ++++++++++++++++++ doc/src/Position.rst | 61 +++++++------ doc/src/PositionWin.rst | 163 +++++++++++++++++++++++++++++++++++ doc/src/Using.rst | 54 +----------- doc/src/figures/ellipse.pdf | Bin 0 -> 12302 bytes doc/src/figures/ellipse.png | Bin 0 -> 60642 bytes doc/src/figures/xwinprec.pdf | Bin 0 -> 10115 bytes doc/src/figures/xwinprec.png | Bin 0 -> 38494 bytes doc/src/figures/xwinprec.svg | 3 + doc/src/index.rst | 4 +- doc/src/references.bib | 57 +++++++++--- 15 files changed, 422 insertions(+), 98 deletions(-) create mode 100644 doc/src/Config.rst create mode 100644 doc/src/Measurements.rst create mode 100644 doc/src/Param.rst create mode 100644 doc/src/PositionWin.rst create mode 100644 doc/src/figures/ellipse.pdf create mode 100644 doc/src/figures/ellipse.png create mode 100644 doc/src/figures/xwinprec.pdf create mode 100644 doc/src/figures/xwinprec.png create mode 100644 doc/src/figures/xwinprec.svg diff --git a/doc/src/Config.rst b/doc/src/Config.rst new file mode 100644 index 0000000..618dba1 --- /dev/null +++ b/doc/src/Config.rst @@ -0,0 +1,55 @@ +.. File Config.rst + +The configuration file +====================== + +Each time it is run, |SExtractor| looks for a configuration file. If no +configuration file is specified in the command-line, it is assumed to be +called :file:`default.sex` and to reside in the current directory. If no +configuration file is found, |SExtractor| will use its own internal +default configuration. + +Creating a configuration file +----------------------------- + +SExtractor can generate an ASCII dump of its internal default +configuration, using the ``-d`` option. By redirecting the standard output +of SExtractor to a file, one creates a configuration file that can +easily be modified afterwards: + +.. code-block:: console + + $ sex -d > default.sex + +A more extensive dump with less commonly used parameters can be +generated by using the ``-dd`` option. + +Format of the configuration file +-------------------------------- + +The format is ASCII. There must be only one parameter set per line, +following the form:: + + Config-parameter      Value(s) + +Extra spaces or linefeeds are ignored. Comments must begin with a ``#`` +and end with a linefeed. Values can be of different types: strings (can +be enclosed between double quotes), floats, integers, keywords or +Boolean (`Y`/`y` or `N`/`n`). Some parameters accept zero or several values, +which must then be separated by commas. Integers can be given as +decimals, in octal form (preceded by digit O), or in hexadecimal +(preceded by `0x`). The hexadecimal format is particularly convenient for +writing multiplexed bit values such as binary masks. Environment +variables, written as ``$HOME`` or ``${HOME}`` are expanded. + +.. _param_list: + +Configuration parameter list +---------------------------- + +Here is a complete list of all the configuration parameters known to +|SExtractor|. Please refer to the next sections for a detailed description +of their meaning. + +.. include:: keys.rst + diff --git a/doc/src/Installing.rst b/doc/src/Installing.rst index 13342e0..c521301 100644 --- a/doc/src/Installing.rst +++ b/doc/src/Installing.rst @@ -1,10 +1,11 @@ .. File Installing.rst +*********************** Installing the software -======================= +*********************** Hardware requirements ---------------------- +===================== |SExtractor| runs in (ANSI) text-mode from a shell. A graphical environment is not necessary to operate the software. @@ -24,7 +25,7 @@ install the standard binary package the comes with your Linux distribution. Run, e.g., ``apt-get sextractor`` (on Debian) or ``dnf sextractor`` (Fedora) as root and |SExtractor|, as well as all its dependencies, will automatically be installed. If you decided to install the package this way you may skip the -following and move straight to the :ref:`next section `. +following and move straight to the :ref:`next section `. However if |SExtractor| is not available in your distribution, or to obtain the most recent version, the |SExtractor| source package can be downloaded from diff --git a/doc/src/Introduction.rst b/doc/src/Introduction.rst index 71b2058..352c1b2 100644 --- a/doc/src/Introduction.rst +++ b/doc/src/Introduction.rst @@ -3,7 +3,7 @@ Introduction ============ -|SExtractor|_ (Source-Extractor) is a program that builds a catalogue +|SExtractor|_ (Source-Extractor) is a program that builds a catalog of objects from an astronomical image. It is particularly oriented towards the reduction of large scale galaxy-survey data, but it also performs well on moderately crowded star fields. Its main features are: @@ -14,14 +14,14 @@ well on moderately crowded star fields. Its main features are: thanks to buffered image access * Real-time filtering of images to improve detectability * Robust deblending of overlapping extended objects -* Flexible catalogue output of desired parameters only +* Flexible catalog output of desired parameters only * Pixel-to-pixel photometry in dual-image mode * Fast and accurate Point-Spread-Function and galaxy model fitting. * Handling of weight maps and flag maps. * Optimum handling of images with variable SNR. -* Built-in catalogue cross-identification. +* Built-in catalog cross-identification. * Special mode for photographic scans. -* |XML|_ |VOTable|_-compliant catalogue output. +* |XML|_ |VOTable|_-compliant catalog output. * |XSLT|_ filter sheet provided for convenient access to metadata from a regular web browser. diff --git a/doc/src/Measurements.rst b/doc/src/Measurements.rst new file mode 100644 index 0000000..ec22d91 --- /dev/null +++ b/doc/src/Measurements.rst @@ -0,0 +1,23 @@ +Measurements +============ + +Once sources have been detected and deblended, they enter the +measurement phase. |SExtractor| performs two categories of measurements. +Measurements from the first category are made on the isophotal object +profiles. Only pixels above the detection threshold are considered. Many +of these isophotal measurements (like ``X_IMAGE``, ``Y_IMAGE``, etc.) are +necessary for the internal operations of |SExtractor| and are therefore +executed even if they are not requested. Measurements from the second +category have access to all pixels of the image. These measurements are +generally more sophisticated and are done at a later stage of the +processing (after CLEANing and MASKing). + +.. toctree:: + :numbered: + :maxdepth: 2 + + Position + PositionWin + +.. include:: keys.rst + diff --git a/doc/src/Param.rst b/doc/src/Param.rst new file mode 100644 index 0000000..a0dd454 --- /dev/null +++ b/doc/src/Param.rst @@ -0,0 +1,85 @@ +.. File Param.rst + +The catalog parameter file +============================ + +In addition to the configuration file detailed above, |SExtractor| requires a +file containing the list of parameters that will be listed in the output +catalog for every detection. This allows the software to compute only +catalog parameters that are needed. The name of this +catalog-parameter file is traditionally suffixed with ``.param``, and must +be specified using the ``PARAMETERS_NAME`` config parameter. The full set +of parameters can be queried with the command + +.. code-block:: console + + $ sex -dp + +Format +------ + +The format of the catalog parameter list is ASCII, and there must be +*a single keyword per line*. Presently two kinds of keywords are +recognized by |SExtractor|: scalars and vectors. Scalars, like ``X_IMAGE``, +produce single numbers in the output catalog. Vectors, like ``MAG_APER(4)`` +or ``VIGNET(15,15)``, produce arrays of numbers. The ordering of measurements +in the output catalog is identical to that of the keywords in the parameter +list. Comments are allowed, they must begin with a ``#``. + +Variants +-------- + +For many catalog parameters, especially those related to flux, +position, or shape, several variants of the same measurement are +available: + +Fluxes +~~~~~~ + +may be expressed in linear (ADU) units or as Pogson +:cite:`1856MNRAS..17...12P` magnitudes. Flux measurements in ADUs +are prefixed with ``FLUX_``, for example: ``FLUX_AUTO``, ``FLUX_ISO``, etc. +Magnitudes are prefixed with ``MAG_`` e.g., ``MAG_AUTO``, ``MAG_ISO``, ... In +|SExtractor| the magnitude :math:`m` of a source is derived from the flux +:math:`f`: + +.. math:: + + m = \left\{\begin{array}{ll} + m_{ZP} -2.5 \log_{10} f\ &\mbox{if } f > 0\\ + 99.0 &\mbox{otherwise}, + \end{array}\right. + +where :math:`m_{ZP}` is the magnitude zero-point set with the +``MAG_ZEROPOINT`` configuration parameter. + +Flux uncertainties +~~~~~~~~~~~~~~~~~~ + +They follow a scheme similar to that of fluxes. Flux uncertainties are +prefixed with ``FLUXERR_``, as in ``FLUXERR_AUTO`` or ``FLUXERR_ISO``. Magnitude +uncertainties start with ``MAGERR_``, for instance: ``MAGERR_AUTO``, +``MAGERR_ISO``,... Magnitude uncertainties :math:`\sigma_m` are derived +from the estimated 1-\ :math:`\sigma` flux error :math:`\sigma_f`: + +.. math:: + + \sigma_m = \left\{\begin{array}{ll} + (2.5/\ln 10) (\sigma_f/f)\ &\mbox{if } f > 0\\ + 99.0 &\mbox{otherwise}. + \end{array}\right. + +Positions +~~~~~~~~~ + +Positions and distances can be expressed in image pixels, world coordinates, +or in celestial coordinates. Measurements in units of image pixels are +indicated by the suffix ``_IMAGE``, for example: ``Y_IMAGE``, +``ERRAWIN_IMAGE``, ... Following the FITS convention, in SExtractor the +center of the first image pixel has coordinates (1.0,1.0). Positions and +small distances may also be expressed in so-called “world coordinates”, +if World Coordinate System (WCS) metadata :cite:`2002A&A...395.1061G` are +present in the FITS image header. + +.. include:: keys.rst + diff --git a/doc/src/Position.rst b/doc/src/Position.rst index ff4bd55..4c92918 100644 --- a/doc/src/Position.rst +++ b/doc/src/Position.rst @@ -1,13 +1,15 @@ -Positional parameters derived from the isophotal profile -======================================================== +.. File Position.rst + +Position and shape parameters derived from the isophotal profile +================================================================ The following parameters are derived from the spatial distribution :math:`\cal S` of pixels detected above the extraction threshold. *The pixel values* :math:`I_i` *are taken from the (filtered) detection image*. **Note that, unless otherwise noted, all parameter names given below are -only prefixes. They must be followed by “\_IMAGE” if the results shall -be expressed in pixel units (see §..), or “\_WORLD” for World Coordinate +only prefixes. They must be followed by “_IMAGE” if the results shall +be expressed in pixel units (see §..), or “_WORLD” for World Coordinate System (WCS) units (see §[astrom])**. For example: THETA :math:`\rightarrow` THETA\_IMAGE. In all cases, parameters are first computed in the image coordinate system, and then converted to WCS if @@ -60,7 +62,7 @@ with likelihood maps, or when searching for artifacts. For better robustness, PEAK coordinates are computed on *filtered* profiles if available. On symmetrical profiles, PEAK positions and barycenters coincide within a fraction of pixel (XPEAK and YPEAK coordinates are -quantized by steps of 1 pixel, thus XPEAK\_IMAGE and YPEAK\_IMAGE are +quantized by steps of 1 pixel, thus XPEAK_IMAGE and YPEAK_IMAGE are integers). This is no longer true for skewed profiles, therefore a simple comparison between PEAK and barycenter coordinates can be used to identify asymmetrical objects on well-sampled images. @@ -69,7 +71,7 @@ identify asymmetrical objects on well-sampled images. ----------------------------- (Centered) second-order moments are convenient for measuring the spatial -spread of a source profile. In SExtractor they are computed with: +spread of a source profile. In |SExtractor| they are computed with: .. math:: @@ -163,17 +165,17 @@ following equations derived from ([eq:varproj]) after some algebra: - \sqrt{\left(\frac{\overline{x^2}-\overline{y^2}}{2}\right)^2 + \overline{xy}^2}.\end{aligned} Note that A and B are exactly halves the :math:`a` and :math:`b` -parameters computed by the COSMOS image analyser (Stobie 1980,1986). -Actually, :math:`a` and :math:`b` are defined by Stobie as the -semi-major and semi-minor axes of an elliptical shape with constant +parameters computed by the COSMOS image analyser :cite:`1980SPIE..264..208S`. +Actually, :math:`a` and :math:`b` are defined in :cite:`1980SPIE..264..208S` +as the semi-major and semi-minor axes of an elliptical shape with constant surface brightness, which would have the same 2nd-order moments as the -analysed object. +analyzed object. Ellipse parameters: CXX, CYY, CXY --------------------------------- A, B and THETA are not very convenient to use when, for instance, one -wants to know if a particular SExtractor detection extends over some +wants to know if a particular |SExtractor| detection extends over some position. For this kind of application, three other ellipse parameters are provided; CXX, CYY and CXY. They do nothing more than describing the same ellipse, but in a different way: the elliptical shape associated to @@ -186,7 +188,7 @@ a detection is now parameterized as where :math:`R` is a parameter which scales the ellipse, in units of A (or B). Generally, the isophotal limit of a detected object is well -represented by :math:`R\approx 3` (Fig. [fig:ellipse]). Ellipse +represented by :math:`R\approx 3` (:numref:`fig_ellipse`). Ellipse parameters can be derived from the 2nd order moments: .. math:: @@ -202,6 +204,14 @@ parameters can be derived from the 2nd order moments: THETA} \left( \frac{1}{{\tt A}^2} - \frac{1}{{\tt B}^2}\right) = -2\, \frac{\overline{xy}}{\overline{x^2} \overline{y^2} - \overline{xy}^2}\end{aligned} +.. _fig_ellipse: + +.. figure:: figures/ellipse.* + :figwidth: 100% + :align: center + + Meaning of shape parameters. + By-products of shape parameters: ELONGATION and ELLIPTICITY [1]_ ---------------------------------------------------------------- @@ -213,15 +223,15 @@ These parameters are directly derived from A and B: {\tt ELONGATION} & = & \frac{\tt A}{\tt B}\ \ \ \ \ \mbox{and}\\ {\tt ELLIPTICITY} & = & 1 - \frac{\tt B}{\tt A}.\end{aligned} -Position errors: ERRX2, ERRY2, ERRXY, ERRA, ERRB, ERRTHETA, ERRCXX, ERRCYY, ERRCXY ----------------------------------------------------------------------------------- +Position uncertainties: ERRX2, ERRY2, ERRXY, ERRA, ERRB, ERRTHETA, ERRCXX, ERRCYY, ERRCXY +----------------------------------------------------------------------------------------- Uncertainties on the position of the barycenter can be estimated using -photon statistics. Of course, this kind of estimate has to be considered -as a lower-value of the real error since it does not include, for -instance, the contribution of detection biases or the contamination by -neighbours. As SExtractor does not currently take into account possible -correlations between pixels, the variances simply write: +photon statistics. In practice, such estimates are a lower-value of the full +uncertainties because they do not include, for instance, the contribution of +detection biases or contamination by neighbors. Furthermore, |SExtractor| does +not currently take into account possible correlations of the noise between adjacent +pixels. Hence variances simply write: .. math:: @@ -288,7 +298,7 @@ Handling of “infinitely thin” detections ---------------------------------------- Apart from the mathematical singularities that can be found in some of -the above equations describing shape parameters (and which SExtractor +the above equations describing shape parameters (and which |SExtractor| handles, of course), some detections with very specific shapes may yield quite unphysical parameters, namely null values for B, ERRB, or even A and ERRA. Such detections include single-pixel objects and horizontal, @@ -306,14 +316,14 @@ sufficiently thin line of pixels, which we translate mathematically by \overline{x^2}\,\overline{y^2} - \overline{xy}^2 < \rho^2, then :math:`\overline{x^2}` and :math:`\overline{y^2}` are incremented -by :math:`\rho`. SExtractor sets :math:`\rho=1/12`, which is the +by :math:`\rho`. |SExtractor| sets :math:`\rho=1/12`, which is the variance of a 1-dimensional top-hat distribution with unit width. Therefore :math:`1/\sqrt{12}` represents the typical minor-axis values -assigned (in pixels units) to undersampled sources in SExtractor. +assigned (in pixels units) to undersampled sources in |SExtractor|. Positional errors are more difficult to handle, as objects with very high signal-to-noise can yield extremely small position uncertainties, -just like singular profiles do. Therefore SExtractor first checks that +just like singular profiles do. Therefore |SExtractor| first checks that ([eq:singutest]) is true. If this is the case, a new test is conducted: .. math:: @@ -329,4 +339,7 @@ where :math:`\rho_e` is arbitrarily set to :math:`\left( \sum_{i \in {\cal S}} .. [1] Such parameters are dimensionless and therefore do not accept any - \_IMAGE or \_WORLD suffix + _IMAGE or _WORLD suffix + +.. include:: keys.rst + diff --git a/doc/src/PositionWin.rst b/doc/src/PositionWin.rst new file mode 100644 index 0000000..7d23ca9 --- /dev/null +++ b/doc/src/PositionWin.rst @@ -0,0 +1,163 @@ +.. File PositionWin.rst + +Windowed positional parameters +============================== + +Parameters measured within an object’s isophotal limit are sensitive to +two main factors: 1) changes in the detection threshold, which create a +variable bias and 2) irregularities in the object’s isophotal +boundaries, which act as additional “noise” in the measurements. + +Measurements performed through a *window* function (an *envelope*) do +not have such drawbacks. |SExtractor| implements “windowed” versions for most +of the measurements described in [chap:isoparam]: + ++----------------------------------------+-------------------------------------------------+ +| Isophotal parameters | Equivalent windowed parameters | ++========================================+=================================================+ +| X_IMAGE, Y_IMAGE | XWIN_IMAGE, YWIN_IMAGE | ++----------------------------------------+-------------------------------------------------+ +| ERRA_IMAGE, ERRB_IMAGE, ERRTHETA_IMAGE | ERRAWIN_IMAGE, ERRBWIN_IMAGE, ERRTHETAWIN_IMAGE | ++----------------------------------------+-------------------------------------------------+ +| A_IMAGE, B_IMAGE, THETA_IMAGE | AWIN_IMAGE, BWIN_IMAGE, THETAWIN_IMAGE | ++----------------------------------------+-------------------------------------------------+ +| X2_IMAGE, Y2_IMAGE, XY_IMAGE | X2WIN_IMAGE, Y2WIN_IMAGE, XYWIN_IMAGE | ++----------------------------------------+-------------------------------------------------+ +| CXX_IMAGE, CYY_IMAGE, CXY_IMAGE | CXXWIN_IMAGE, CYYWIN_IMAGE, CXYWIN_IMAGE | ++----------------------------------------+-------------------------------------------------+ + +The computations involved are roughly the same except that the pixel +values are integrated within a circular Gaussian window as opposed to +the object’s isophotal footprint. The Gaussian window is scaled to each +object; its FWHM is the diameter of the disk that contains half of the +object flux (:math:`d_{50}`). Note that in double-image mode +(§[chap:using]) the window is scaled based on the *measurement* image. + +Windowed centroid: XWIN, YWIN +----------------------------- + +This is an iterative process. The computation starts by initializing the +windowed centroid coordinates :math:`\overline{x_{\tt WIN}}^{(0)}` and +:math:`\overline{y_{\tt WIN}}^{(0)}` to their basic :math:`\overline{x}` +and :math:`\overline{y}` isophotal equivalents, respectively. Then at +each iteration :math:`t`, :math:`\overline{x_{\tt WIN}}` and +:math:`\overline{y_{\tt WIN}}` are refined using: + +.. math:: + + \begin{aligned} + \label{eq:xwin} + {\tt XWIN}^{(t+1)} & = & \overline{x_{\tt WIN}}^{(t+1)} + = \overline{x_{\tt WIN}}^{(t)} + 2\,\frac{\sum_{r_i^{(t)} < r_{\rm max}} + w_i^{(t)} I_i \ (x_i - \overline{x_{\tt WIN}}^{(t)})} + {\sum_{r_i^{(t)} < r_{\rm max}} w_i^{(t)} I_i},\\ + \label{eq:ywin} + {\tt YWIN}^{(t+1)} & = & \overline{y_{\tt WIN}}^{(t+1)} + = \overline{y_{\tt WIN}}^{(t)} + 2\,\frac{\sum_{r_i^{(t)} < r_{\rm max}} + w_i^{(t)} I_i\ (y_i - \overline{y_{\tt WIN}}^{(t)})} + {\sum_{r_i^{(t)} < r_{\rm max}} w_i^{(t)} I_i},\end{aligned} + +where + +.. math:: w_i^{(t)} = \exp \left(-\frac{r_i^{(t)^2}}{2s_{\tt WIN}^2} \right), + +with + +.. math:: + + r_i^{(t)} = \sqrt{\left(x_i - \overline{x_{\tt WIN}}^{(t)}\right)^2 + \left(y_i + - \overline{y_{\tt WIN}}^{(t)}\right)^2} + +and :math:`s_{\tt WIN} = d_{50} / \sqrt{8 \ln 2}`. The process stops +when the change in position between two iterations is less than +:math:`2\times10^{-4}` pixel, a condition which is generally achieved in +about 3 to 5 iterations. + +Although the iterative nature of the processing slows down the +processing , it is recommended to use whenever possible windowed +parameters instead of their isophotal equivalents, since the +measurements they provide are much more precise (:numref:`fig_xwinprec`). +The precision in centroiding offered by XWIN_IMAGE and YWIN_IMAGE is +actually very close to that of PSF-fitting on focused and properly +sampled star images, and can also be applied to galaxies. It has been +verified that for isolated, Gaussian-like PSFs, its accuracy is close to +the theoretical limit set by image noise [1]_. + +.. _fig_xwinprec: + +.. figure:: figures/xwinprec.* + :figwidth: 100% + :align: center + + Comparison between isophotal and windowed centroid measurement residuals on + simulated, background noise-limited images. + *Left*: histogram of the difference between X_IMAGE and the true centroid + in x. + *Right*: histogram of the difference between XWIN_IMAGE and the true centroid + in x. + +Windowed 2nd order moments: X2, Y2, XY +-------------------------------------- + +Windowed second-order moments are computed on the image data once the +centering process from §[chap:wincent] has converged: + +.. math:: + + \begin{aligned} + {\tt X2WIN} & = \overline{x_{\tt WIN}^2} + = & \frac{\sum_{r_i < r_{\rm max}} w_i I_i (x_i - \overline{x_{\tt WIN}})^2} + {\sum_{r_i < r_{\rm max}} w_i I_i},\\ + {\tt Y2WIN} & = \overline{y_{\tt WIN}^2} + = & \frac{\sum_{r_i < r_{\rm max}} w_i I_i (y_i - \overline{y_{\tt WIN}})^2} + {\sum_{r_i < r_{\rm max}} w_i I_i},\\ + {\tt XYWIN} & = \overline{xy_{\tt WIN}} + = & \frac{\sum_{r_i < r_{\rm max}} w_i I_i (x_i - \overline{x_{\tt WIN}}) + (y_i - \overline{y_{\tt WIN}})} + {\sum_{r_i < r_{\rm max}} w_i I_i}.\end{aligned} + +Windowed second-order moments are typically twice smaller than their +isophotal equivalent. + +Windowed ellipse parameters: CXXWIN, CYYWIN, CXYWIN +--------------------------------------------------- + +They are computed from the windowed 2nd order moments exactly the same +way as in §[chap:cxx]. + +Windowed position uncertainties: ERRX2WIN, ERRY2WIN, ERRXYWIN, ERRAWIN, ERRBWIN, ERRTHETAWIN, ERRCXXWIN, ERRCYYWIN, ERRCXYWIN +----------------------------------------------------------------------------------------------------------------------------- + +Windowed position uncertainties are computed on the image data once the +centering process from §[chap:wincent] has converged. Assuming that +noise is uncorrelated among pixels, standard error propagation applied +to ([eq:xwin]) and ([eq:xwin]) gives us: + +.. math:: + + \begin{aligned} + {\tt ERRX2WIN} & = {\rm var}(\overline{x_{\tt WIN}}) + = & 4\,\frac{\sum_{r_i < r_{\rm max}} w_i^2 \sigma^2_i (x_i-\overline{x})^2} + {\left(\sum_{r_i < r_{\rm max}} w_i I_i\right)^2},\\ + {\tt ERRY2WIN} & = {\rm var}(\overline{y_{\tt WIN}}) + = & 4\,\frac{\sum_{r_i < r_{\rm max}} w_i^2 \sigma^2_i (y_i-\overline{y})^2} + {\left(\sum_{r_i < r_{\rm max}} w_i I_i\right)^2},\\ + {\tt ERRXYWIN} & = {\rm cov}(\overline{x_{\tt WIN}},\overline{y_{\tt WIN}}) + = & 4\,\frac{\sum_{r_i < r_{\rm max}} + w_i^2 \sigma^2_i (x_i-\overline{x_{\tt WIN}})(y_i-\overline{y_{\tt WIN}})} + {\left(\sum_{r_i < r_{\rm max}} w_i I_i\right)^2}.\end{aligned} + +The semi-major axis ERRAWIN, semi-minor axis ERRBWIN, and position angle +ERRTHETAWIN of the :math:`1\sigma` position error ellipse are computed +from the covariance matrix elements +:math:`{\rm var}(\overline{x_{\tt WIN}})`, +:math:`{\rm var}(\overline{y_{\tt WIN}})`, +:math:`{\rm cov}(\overline{x_{\tt WIN}},\overline{y_{\tt WIN}})`, +exactly as in §[chap:poserr]: see eqs. ([eq:erra]), ([eq:errb]), +([eq:errtheta]), ([eq:errcxx]), ([eq:errcyy]) and ([eq:errcxy]). + +.. [1] + see http://www.astromatic.net/forum/showthread.php?tid=581 + +.. include:: keys.rst + diff --git a/doc/src/Using.rst b/doc/src/Using.rst index 46bfacd..524bf0d 100644 --- a/doc/src/Using.rst +++ b/doc/src/Using.rst @@ -1,3 +1,5 @@ +.. File Using.rst + Using SExtractor ================ @@ -35,57 +37,5 @@ about the source extraction process: remote web server), alternative |XSLT| translation URLs may be specified using the ``XSL_URL`` configuration parameter. - -The configuration file ----------------------- - -Each time it is run, |SExtractor| looks for a configuration file. If no -configuration file is specified in the command-line, it is assumed to be -called :file:`default.sex` and to reside in the current directory. If no -configuration file is found, |SExtractor| will use its own internal -default configuration. - -Creating a configuration file -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -SExtractor can generate an ASCII dump of its internal default -configuration, using the ``-d`` option. By redirecting the standard output -of SExtractor to a file, one creates a configuration file that can -easily be modified afterwards: - -.. code-block:: console - - $ sex -d > default.sex - -A more extensive dump with less commonly used parameters can be -generated by using the ``-dd`` option. - -Format of the configuration file -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -The format is ASCII. There must be only one parameter set per line, -following the form:: - - Config-parameter      Value(s) - -Extra spaces or linefeeds are ignored. Comments must begin with a ``#`` -and end with a linefeed. Values can be of different types: strings (can -be enclosed between double quotes), floats, integers, keywords or -Boolean (`Y`/`y` or `N`/`n`). Some parameters accept zero or several values, -which must then be separated by commas. Integers can be given as -decimals, in octal form (preceded by digit O), or in hexadecimal -(preceded by `0x`). The hexadecimal format is particularly convenient for -writing multiplexed bit values such as binary masks. Environment -variables, written as ``$HOME`` or ``${HOME}`` are expanded. - -.. _param_list: - -Configuration parameter list -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Here is a complete list of all the configuration parameters known to -|SExtractor|. Please refer to the next sections for a detailed description -of their meaning. - .. include:: keys.rst diff --git a/doc/src/figures/ellipse.pdf b/doc/src/figures/ellipse.pdf new file mode 100644 index 0000000000000000000000000000000000000000..60acabf042e26f27a27604ce678422c17f5785eb GIT binary patch literal 12302 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 SABGa*V#2s=Y)ab7xc>*_71^l( literal 0 HcmV?d00001 diff --git a/doc/src/figures/xwinprec.png b/doc/src/figures/xwinprec.png new file mode 100644 index 0000000000000000000000000000000000000000..ecda53ae262ac31f0cd182e741448e05a9c248bd GIT binary patch literal 38494 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 + +image/svg+xml diff --git a/doc/src/index.rst b/doc/src/index.rst index 02db441..1289111 100644 --- a/doc/src/index.rst +++ b/doc/src/index.rst @@ -18,7 +18,9 @@ Contents License Installing Using - Position + Config + Param + Measurements references Indices and tables diff --git a/doc/src/references.bib b/doc/src/references.bib index 4b6e93f..f14f1f1 100644 --- a/doc/src/references.bib +++ b/doc/src/references.bib @@ -1,7 +1,7 @@ @ARTICLE{1996A&AS..117..393B, author = {{Bertin}, E. and {Arnouts}, S.}, title = "{SExtractor: Software for source extraction.}", - journal = {\aaps}, + journal = {A\&AS}, keywords = {METHODS: DATA ANALYSIS, TECHNIQUES: IMAGE PROCESSING, GALAXIES: PHOTOMETRY}, year = 1996, month = jun, @@ -12,10 +12,25 @@ adsnote = {Provided by the SAO/NASA Astrophysics Data System} } +@ARTICLE{2002A&A...395.1077C, + author = {{Calabretta}, M.~R. and {Greisen}, E.~W.}, + title = "{Representations of celestial coordinates in FITS}", + journal = {A\&A}, + eprint = {astro-ph/0207413}, + keywords = {methods: data analysis, techniques: image processing, astronomical data bases: miscellaneous, astrometry}, + year = 2002, + month = dec, + volume = 395, + pages = {1077-1122}, + doi = {10.1051/0004-6361:20021327}, + adsurl = {http://adsabs.harvard.edu/abs/2002A&A...395.1077C}, + adsnote = {Provided by the SAO/NASA Astrophysics Data System} +} + @ARTICLE{2002A&A...395.1061G, author = {{Greisen}, E.~W. and {Calabretta}, M.~R.}, title = "{Representations of world coordinates in FITS}", - journal = {\aap}, + journal = {A\&A}, eprint = {astro-ph/0207407}, keywords = {methods: data analysis, techniques: image processing, astronomical data bases: miscellaneous}, year = 2002, @@ -27,18 +42,16 @@ adsnote = {Provided by the SAO/NASA Astrophysics Data System} } -@ARTICLE{2002A&A...395.1077C, - author = {{Calabretta}, M.~R. and {Greisen}, E.~W.}, - title = "{Representations of celestial coordinates in FITS}", - journal = {\aap}, - eprint = {astro-ph/0207413}, - keywords = {methods: data analysis, techniques: image processing, astronomical data bases: miscellaneous, astrometry}, - year = 2002, - month = dec, - volume = 395, - pages = {1077-1122}, - doi = {10.1051/0004-6361:20021327}, - adsurl = {http://adsabs.harvard.edu/abs/2002A&A...395.1077C}, +@ARTICLE{1856MNRAS..17...12P, + author = {{Pogson}, N.}, + title = "{Magnitudes of Thirty-six of the Minor Planets for the first day of each month +of the year 1857}", + journal = {MNRAS}, + year = 1856, + month = nov, + volume = 17, + pages = {12-15}, + adsurl = {http://adsabs.harvard.edu/abs/1856MNRAS..17...12P}, adsnote = {Provided by the SAO/NASA Astrophysics Data System} } @@ -87,3 +100,19 @@ booktitle = {Astronomical Data Analysis Software and Systems (ADASS) XIII}, adsnote = {Provided by the SAO/NASA Astrophysics Data System} } +@INPROCEEDINGS{1980SPIE..264..208S, + author = {{Stobie}, R.~S.}, + title = "{Application of moments to the analysis of panoramic astronomical photographs}", + keywords = {Astronomical Photography, Classifications, Image Processing, Imaging Techniques, Moments, Accuracy, Computer Techniques, Photographs}, +booktitle = {Conference on Applications of Digital Image Processing to Astronomy}, + year = 1980, + series = {Proc. SPIE}, + volume = 264, + editor = {{Elliott}, D.~A.}, + pages = {208-212}, + doi = {10.1117/12.959806}, + adsurl = {http://adsabs.harvard.edu/abs/1980SPIE..264..208S}, + adsnote = {Provided by the SAO/NASA Astrophysics Data System} +} + + -- GitLab