gnuastro-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnuastro-commits] master f06acc5 018/113: Merged recent work from maste


From: Mohammad Akhlaghi
Subject: [gnuastro-commits] master f06acc5 018/113: Merged recent work from master
Date: Fri, 16 Apr 2021 10:33:34 -0400 (EDT)

branch: master
commit f06acc589e110b95dfdba1e2297575e60e8a0917
Merge: ace4160 b42b89b
Author: Mohammad Akhlaghi <akhlaghi@gnu.org>
Commit: Mohammad Akhlaghi <akhlaghi@gnu.org>

    Merged recent work from master
    
    Work on the two branches was being copied manually, but a merge was
    necessary before it gets too large (and harder to manage).
    
    Also, the recent update in master (in MakeNoise) is now also available in
    this branch.
---
 NEWS                        | 40 ++++++++++++++++++++++++----
 bin/mknoise/args.h          | 25 +++++++++++++-----
 bin/mknoise/astmknoise.conf |  2 +-
 bin/mknoise/main.h          |  3 ++-
 bin/mknoise/mknoise.c       | 63 ++++++++++++++++++++++++++++++---------------
 bin/mknoise/ui.c            | 40 ++++++++++++++++++++--------
 bin/mknoise/ui.h            | 11 ++++----
 bin/mkprof/mkprof.c         |  2 +-
 bin/mkprof/oneprofile.c     |  1 +
 bin/mkprof/ui.c             | 20 +++++++++++---
 doc/gnuastro.texi           | 50 ++++++++++++++++++++---------------
 doc/release-checklist.txt   | 13 ++++++----
 12 files changed, 190 insertions(+), 80 deletions(-)

diff --git a/NEWS b/NEWS
index 9a81069..16c879a 100644
--- a/NEWS
+++ b/NEWS
@@ -10,6 +10,11 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
   Arithmetic: now has a new `--globalhdu' (`-g') option which can be used
   once for all the input images.
 
+  MakeNoise: with the new `--sigma' (`-s') option, it is now possible to
+  directly request the noise sigma or standard deviation. When this option
+  is called, the `--background', `--zeropoint' and other option values will
+  be ignored.
+
   MakeProfiles: can build 3D ellipsoids of any orientation and shape. The
   following options are new to MakeProfiles for enabling 3D profiles:
   `--p2col', `--p3col' (second two Euler angles), and `--q2col' (axis ratio
@@ -18,9 +23,6 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
   Gnuastro. The `--config' option can be used to specify default values for
   3D profiles.
 
-  MakeProfiles: the new `--kernel' option can make a kernel image or cube
-  without the need to define a catalog.
-
   MakeProfiles: the new `--pc', `--cunit' and `--ctype' options can be used
   along with `--crpix', `--crval' and `--cdelt' to fully specify the world
   coordinate system (WCS) keywords of the output FITS file.
@@ -34,6 +36,14 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
   option, the `--mcol' values of the catalog will be interpretted as total
   brightness (sum of pixel values), not magnitude.
 
+  MakeProfiles: the new `distance' profile will save the radial distance of
+  each pixel. This may be used to define your own profiles that are not
+  currently supported in MakeProfiles.
+
+  MakeProfiles: with the new `--mcolisbrightness' ("mcol-is-brightness")
+  option, the `--mcol' values of the catalog will be interpretted as total
+  brightness (sum of pixel values), not magnitude.
+
 ** Removed features
 
 ** Changed features
@@ -59,6 +69,9 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
   multiple times and the order of its calling will be used for the column
   containing the center in the respective dimension (in FITS format).
 
+  MakeNoise: the old `--stdadd' (`-s') option has been renamed to
+  `--instrumental' (`-i') to be more clear.
+
   MakeProfiles: The new `--naxis' and `--shift' options can take multiple
   values for each dimension (separated by a comma). This replaces the old
   `--naxis1', `--naxis2' and `--xshift' and `--yshift' options.
@@ -74,8 +87,15 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
   `--crpix1', `--crpix2', `--crval1', `--crval2' and `--resolution'
   options.
 
-  `gal_fits_img_info' now also returns the name and units of the dataset
-  (if they aren't NULL). So it takes two extra arguments.
+  `gal_data_free_contents': when the input `gal_data_t' is a tile, its
+  `array' element will not be freed. This enables safe usage of this
+  function (and thus `gal_data_free') on tiles without worrying about the
+  memory block associated with the tile.
+
+  `gal_box_bound_ellipse' is the new name for the old
+  `gal_box_ellipse_in_box' (to be more clear and avoid repetition of the
+  term `box'). The input position angle is now also in degrees, not
+  radians.
 
   `gal_box_overlap' now works on data of any dimensionality and thus also
   needs the number of dimensions (elements in each input array).
@@ -84,10 +104,19 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
   argument and the number of dimensions as another. This allows it to work
   on any dimensionality.
 
+  `gal_fits_img_info' now also returns the name and units of the dataset
+  (if they aren't NULL). So it takes two extra arguments.
+
   `gal_wcs_pixel_scale' now replaces the old `gal_wcs_pixel_scale_deg',
   since it doesn't only apply to degrees. The pixel scale units are defined
   by the units of the WCS.
 
+  `GAL_TILE_PARSE_OPERATE' (only when `OTHER' is given) can now parse and
+  operate on different datasets independent of the size of allocated block
+  of memory (the tile sizes of `IN' and `OTHER' have to be idential, but
+  not their allocated blocks of memory). Until now, it was necessary for
+  the two blocks to have the same size and this is no longer the case.
+
 ** Bug fixes
 
   MakeProfiles long options on 32bit big endian systems (bug #51341).
@@ -112,6 +141,7 @@ GNU Astronomy Utilities NEWS                          -*- 
outline -*-
 
 
 
+
 * Noteworthy changes in release 0.3 (library 1.0.0) (2017-06-01) [stable]
 
   This is a full re-write of Gnuastro. Most importantly, Gnuastro now has a
diff --git a/bin/mknoise/args.h b/bin/mknoise/args.h
index ba19980..797952e 100644
--- a/bin/mknoise/args.h
+++ b/bin/mknoise/args.h
@@ -32,13 +32,26 @@ along with Gnuastro. If not, see 
<http://www.gnu.org/licenses/>.
 struct argp_option program_options[] =
   {
     {
-      "stdadd",
-      UI_KEY_STDADD,
+      "sigma",
+      UI_KEY_SIGMA,
       "FLT",
       0,
-      "Standard deviation addition constant.",
+      "Total noise sigma, ignore other options.",
       GAL_OPTIONS_GROUP_INPUT,
-      &p->stdadd,
+      &p->sigma,
+      GAL_TYPE_FLOAT64,
+      GAL_OPTIONS_RANGE_GE_0,
+      GAL_OPTIONS_NOT_MANDATORY,
+      GAL_OPTIONS_NOT_SET
+    },
+    {
+      "instrumental",
+      UI_KEY_INSTRUMENTAL,
+      "FLT",
+      0,
+      "Instrument noise level (in pixel value units).",
+      GAL_OPTIONS_GROUP_INPUT,
+      &p->instrumental,
       GAL_TYPE_FLOAT64,
       GAL_OPTIONS_RANGE_GE_0,
       GAL_OPTIONS_NOT_MANDATORY,
@@ -54,7 +67,7 @@ struct argp_option program_options[] =
       &p->background_mag,
       GAL_TYPE_FLOAT64,
       GAL_OPTIONS_RANGE_ANY,
-      GAL_OPTIONS_MANDATORY,
+      GAL_OPTIONS_NOT_MANDATORY,
       GAL_OPTIONS_NOT_SET
     },
     {
@@ -67,7 +80,7 @@ struct argp_option program_options[] =
       &p->zeropoint,
       GAL_TYPE_FLOAT64,
       GAL_OPTIONS_RANGE_GE_0,
-      GAL_OPTIONS_MANDATORY,
+      GAL_OPTIONS_NOT_MANDATORY,
       GAL_OPTIONS_NOT_SET
     },
 
diff --git a/bin/mknoise/astmknoise.conf b/bin/mknoise/astmknoise.conf
index a29f1b3..96e011c 100644
--- a/bin/mknoise/astmknoise.conf
+++ b/bin/mknoise/astmknoise.conf
@@ -19,7 +19,7 @@
 
 # Input:
  background     -10.00
- stdadd         0.000
+ instrumental   0.000
  zeropoint      0.00
 
 # Output:
diff --git a/bin/mknoise/main.h b/bin/mknoise/main.h
index d143cdd..fd4c386 100644
--- a/bin/mknoise/main.h
+++ b/bin/mknoise/main.h
@@ -44,7 +44,8 @@ struct mknoiseparams
   /* From command-line */
   struct gal_options_common_params cp;   /* Common parameters.           */
   char        *inputname;    /* Input filename.                          */
-  double          stdadd;    /* Standard deviation constants.            */
+  double           sigma;    /* Total noise sigma (ignoring others).     */
+  double    instrumental;    /* Standard deviation constants.            */
   double       zeropoint;    /* Zeropoint magnitude of image.            */
   double  background_mag;    /* Background in magnitudes.                */
   uint8_t        envseed;    /* ==1, generate a random seed.             */
diff --git a/bin/mknoise/mknoise.c b/bin/mknoise/mknoise.c
index e17b8ad..f91c265 100644
--- a/bin/mknoise/mknoise.c
+++ b/bin/mknoise/mknoise.c
@@ -62,32 +62,42 @@ convertsaveoutput(struct mknoiseparams *p)
 
   /* Add the proper information to the header of the output: */
   gal_fits_key_write_filename("INF", p->inputname, &headers);
-  strcpy(keyname1, "BCKGRND");
-  gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname1, 0,
-                            &p->background_mag, 0, "Background "
-                            "value (in magnitude) for noise.",
-                            0, NULL);
-  strcpy(keyname2, "BZRPNT");
-  gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname2, 0,
-                            &p->zeropoint, 0, "Zeropoint magnitude of image.",
-                            0, NULL);
-  strcpy(keyname3, "STDADD");
-  gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname3, 0,
-                            &p->stdadd, 0, "Instrumental noise in units of "
-                            "flux.", 0, NULL);
+  if( !isnan(p->background_mag) )
+    {
+      strcpy(keyname1, "BCKGRND");
+      gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname1, 0,
+                                &p->background_mag, 0, "Background "
+                                "value (in magnitude) for noise.",
+                                0, NULL);
+      strcpy(keyname2, "BZRPNT");
+      gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname2, 0,
+                                &p->zeropoint, 0,
+                                "Zeropoint magnitude of image.", 0, NULL);
+      strcpy(keyname3, "INSTRU");
+      gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname3, 0,
+                                &p->instrumental, 0,
+                                "Instrumental noise in units of flux.",
+                                0, NULL);
+    }
+  else
+    {
+      strcpy(keyname1, "SIGMA");
+      gal_fits_key_list_add_end(&headers, GAL_TYPE_FLOAT64, keyname1, 0,
+                                &p->sigma, 0, "Total noise sigma", 0, NULL);
+    }
   strcpy(keyname4, "RNGTYPE");
   gal_fits_key_list_add_end(&headers, GAL_TYPE_STRING, keyname4, 0,
                             p->rng_type, 0, "Random number generator (by "
                             "GSL) type.",  0, NULL);
   strcpy(keyname5, "RNGSEED");
-  gal_fits_key_list_add_end(&headers, GAL_TYPE_INT64, keyname5, 0, 
&p->rng_seed,
-                             0, "Random number generator (by GSL) seed.",
-                             0, NULL);
+  gal_fits_key_list_add_end(&headers, GAL_TYPE_INT64, keyname5, 0,
+                            &p->rng_seed, 0,
+                            "Random number generator (by GSL) seed.",
+                            0, NULL);
 
   /* Save the output: */
   p->input=gal_data_copy_to_new_type_free(p->input, p->cp.type);
   gal_fits_img_write(p->input, p->cp.output, headers, PROGRAM_STRING);
-
 }
 
 
@@ -97,13 +107,24 @@ convertsaveoutput(struct mknoiseparams *p)
 void
 mknoise(struct mknoiseparams *p)
 {
-  double *d, *df, background=p->background, stdadd=p->stdadd;
+  double *d, *df, background=p->background, instrumental=p->instrumental;
 
   /* Add the noise: */
   df=(d=p->input->array)+p->input->size;
-  do
-    *d += background+gsl_ran_gaussian(p->rng, sqrt(stdadd+background+*d));
-  while(++d<df);
+  if( !isnan(p->sigma) )
+    {
+      do
+        *d += gsl_ran_gaussian(p->rng, p->sigma);
+      while(++d<df);
+    }
+  else
+    {
+      do
+        *d += ( background
+                + gsl_ran_gaussian(p->rng,
+                                   sqrt( instrumental + background + *d )) );
+      while(++d<df);
+    }
 
   /* Convert and save the output in the proper format: */
   convertsaveoutput(p);
diff --git a/bin/mknoise/ui.c b/bin/mknoise/ui.c
index 14db897..79ab5a0 100644
--- a/bin/mknoise/ui.c
+++ b/bin/mknoise/ui.c
@@ -111,6 +111,12 @@ ui_initialize_options(struct mknoiseparams *p,
   cp->coptions           = gal_commonopts_options;
 
 
+  /* Initialize options for this program. */
+  p->sigma               = NAN;
+  p->zeropoint           = NAN;
+  p->background_mag      = NAN;
+
+
   /* Modify common options. */
   for(i=0; !gal_options_is_last(&cp->coptions[i]); ++i)
     {
@@ -208,13 +214,25 @@ parse_opt(int key, char *arg, struct argp_state *state)
 /***************       Sanity Check         *******************/
 /**************************************************************/
 /* Read and check ONLY the options. When arguments are involved, do the
-   check in `ui_check_options_and_arguments'.
+   check in `ui_check_options_and_arguments'. */
 static void
 ui_read_check_only_options(struct mknoiseparams *p)
 {
-
+  /* At leaset one of `--sigma' or `--background' are necessary. */
+  if( isnan(p->sigma) && isnan(p->background_mag) )
+    error(EXIT_FAILURE, 0, "at least one of `--sigma' or `--background' "
+          "must be given to identify the noise level");
+
+
+  /* If a background magnitude is given (and the user hasn't given a
+     `--sigma'), the zeropoint is necessary. */
+  if( isnan(p->sigma) && !isnan(p->background_mag) && isnan(p->zeropoint) )
+    error(EXIT_FAILURE, 0, "no zeropoint magnitude given. When the noise is "
+          "identified by the background magnitude, a zeropoint magnitude "
+          "is mandatory. Please use the `--zeropoint' option to specify "
+          "a zeropoint magnitude");
 }
-*/
+
 
 
 
@@ -286,12 +304,12 @@ ui_preparations(struct mknoiseparams *p)
 
 
   /* Convert the background value from magnitudes to flux. Note that
-     magnitudes are actually calculated from the ratio of brightness,
-     not flux. But in the context of MakeNoise where everything is
-     done on pixels independently, brightness and flux are the same
-     (flux is multiplied by the area of one pixel (=1) to give
-     brightness).*/
-  p->background=pow(10, (p->zeropoint-p->background_mag)/2.5f);
+     magnitudes are actually calculated from the ratio of brightness, not
+     flux. But in the context of MakeNoise where everything is done on
+     pixels independently, brightness and flux are the same (flux is
+     multiplied by the area of one pixel (=1) to give brightness).*/
+  if( !isnan(p->background_mag) )
+    p->background=pow(10, (p->zeropoint-p->background_mag)/2.5f);
 
 
   /* Allocate the random number generator: */
@@ -359,9 +377,9 @@ ui_read_check_inputs_setup(int argc, char *argv[], struct 
mknoiseparams *p)
 
 
   /* Read the options into the program's structure, and check them and
-     their relations prior to printing.
+     their relations prior to printing. */
   ui_read_check_only_options(p);
-  */
+
 
   /* Print the option values if asked. Note that this needs to be done
      after the option checks so un-sane values are not printed in the
diff --git a/bin/mknoise/ui.h b/bin/mknoise/ui.h
index 137b237..38c1d1f 100644
--- a/bin/mknoise/ui.h
+++ b/bin/mknoise/ui.h
@@ -29,16 +29,17 @@ along with Gnuastro. If not, see 
<http://www.gnu.org/licenses/>.
 
 /* Available letters for short options:
 
-   a c d f g i j k l m n p r t u v w x y
+   a c d f g j k l m n p r t u v w x y
    A B C E G H J L O Q R W X Y
 */
 enum option_keys_enum
 {
   /* With short-option version. */
-  UI_KEY_STDADD      = 's',
-  UI_KEY_BACKGROUND  = 'b',
-  UI_KEY_ZEROPOINT   = 'z',
-  UI_KEY_ENVSEED     = 'e',
+  UI_KEY_SIGMA        = 's',
+  UI_KEY_INSTRUMENTAL = 'i',
+  UI_KEY_BACKGROUND   = 'b',
+  UI_KEY_ZEROPOINT    = 'z',
+  UI_KEY_ENVSEED      = 'e',
 
   /* Only with long version (start with a value 1000, the rest will be set
      automatically). */
diff --git a/bin/mkprof/mkprof.c b/bin/mkprof/mkprof.c
index b1332e2..209b5d3 100644
--- a/bin/mkprof/mkprof.c
+++ b/bin/mkprof/mkprof.c
@@ -372,7 +372,6 @@ mkprof_build(void *inparam)
 {
   struct mkonthread *mkp=(struct mkonthread *)inparam;
   struct mkprofparams *p=mkp->p;
-
   size_t i, id, ndim=p->ndim;
   struct builtqueue *ibq, *fbq=NULL;
   double center[3], semiaxes[3], euler_deg[3];
@@ -576,6 +575,7 @@ mkprof_write(struct mkprofparams *p)
       ibq=tbq;
     }
 
+
   /* Write the final array to the output FITS image if a merged image is to
      be created. */
   if(out)
diff --git a/bin/mkprof/oneprofile.c b/bin/mkprof/oneprofile.c
index a512247..7ee571e 100644
--- a/bin/mkprof/oneprofile.c
+++ b/bin/mkprof/oneprofile.c
@@ -150,6 +150,7 @@ oneprofile_r_el(struct mkonthread *mkp)
 static float
 oneprofile_r_circle(size_t index, struct mkonthread *mkp)
 {
+
   size_t i, c[3];
   double d, sum=0.0f;
   size_t ndim=mkp->ibq->image->ndim, *dsize=mkp->ibq->image->dsize;
diff --git a/bin/mkprof/ui.c b/bin/mkprof/ui.c
index 2289423..a1e999d 100644
--- a/bin/mkprof/ui.c
+++ b/bin/mkprof/ui.c
@@ -196,8 +196,8 @@ ui_initialize_options(struct mkprofparams *p,
   cp->coptions           = gal_commonopts_options;
 
   /* Default program parameters. */
-  p->cp.type=GAL_TYPE_FLOAT32;
-  p->zeropoint=NAN;
+  p->zeropoint           = NAN;
+  p->cp.type             = GAL_TYPE_FLOAT32;
 
   /* Modify the common options for this program. */
   for(i=0; !gal_options_is_last(&cp->coptions[i]); ++i)
@@ -408,6 +408,7 @@ ui_parse_kernel(struct argp_option *option, char *arg,
       /* Make sure the number of parameters conforms with the profile. */
       switch(kernel->status)
         {
+
         case PROFILE_SERSIC:        need = kernel->flag==2 ? 3 : 4;  break;
         case PROFILE_MOFFAT:        need = kernel->flag==2 ? 3 : 4;  break;
         case PROFILE_GAUSSIAN:      need = kernel->flag==2 ? 2 : 3;  break;
@@ -1192,7 +1193,7 @@ ui_prepare_columns(struct mkprofparams *p)
       /* Make sure the number of coordinate columns and number of
          dimensions in outputs are the same. There is no problem if it is
          more than `ndim'. In that case, the last values (possibly in
-         configuration files) will be ignored.*/
+         configuration files) will be ignored. */
       if( gal_list_str_number(p->ccol) < p->ndim )
         error(EXIT_FAILURE, 0, "%zu coordinate columns (calls to "
               "`--coordcol') given but output has %zu dimensions",
@@ -1407,6 +1408,14 @@ ui_prepare_canvas(struct mkprofparams *p)
             {ff=(f=p->out->array)+p->out->size; do *f++=0.0f; while(f<ff);}
         }
 
+
+      /* Currently, things are only implemented for 2D. */
+      if(p->ndim!=2 && p->ndim!=3)
+        error(EXIT_FAILURE, 0, "%s (hdu %s) has %zu dimensions. Currently "
+              "only a 2 or 3 dimensional background image is acceptable",
+              p->backname, p->backhdu, p->ndim);
+
+
       /* When a background image is specified, oversample must be 1 and
          there is no shifts. */
       p->oversample=1;
@@ -1424,6 +1433,11 @@ ui_prepare_canvas(struct mkprofparams *p)
       for(i=0;p->dsize[i]!=GAL_BLANK_SIZE_T;++i) ++ndim_counter;
       p->ndim=ndim_counter;
 
+      /* Currently, things are only implemented for 2D or 3D. */
+      if(p->ndim!=2 && p->ndim!=3)
+        error(EXIT_FAILURE, 0, "%zu numbers given to `--naxis', only 2 "
+              "values may be given", p->ndim);
+
       /* If any of the shift elements are zero, the others should be too!*/
       if(p->shift && p->shift[0] && p->shift[1])
         {
diff --git a/doc/gnuastro.texi b/doc/gnuastro.texi
index 7d84107..bcd7dcf 100644
--- a/doc/gnuastro.texi
+++ b/doc/gnuastro.texi
@@ -14774,9 +14774,9 @@ array and the output image are kept and added to the 
output array.
 @node Invoking astmkprof,  , Profile magnitude, MakeProfiles
 @subsection Invoking MakeProfiles
 
-MakeProfiles will make any number of profiles specified in a catalog
-either individually or in one image. The executable name is
-@file{astmkprof} with the following general template
+MakeProfiles will make any number of profiles specified in a catalog either
+individually or in one image. The executable name is @file{astmkprof} with
+the following general template
 
 @example
 $ astmkprof [OPTION ...] [Catalog]
@@ -14996,7 +14996,6 @@ central values are going to be incorrect (see 
@ref{Sampling from a
 function}).
 @end itemize
 
-
 @item --rcol=STR/INT
 The radius parameter of the profiles. Effective radius (@mymath{r_e}) if
 S@'ersic, FWHM if Moffat or Gaussian.
@@ -15343,7 +15342,7 @@ the FWHM.
 
 @item -x INT,INT
 @itemx --naxis=INT,INT
-The number of pixels along each dimension axis of f the output in FITS
+The number of pixels along each dimension axis of the output in FITS
 order. This is before over-sampling. For example if you call MakeProfiles
 with @option{--naxis=100,150 --oversample=5} (assuming no shift due for
 later convolution), then the final image size along the first axis will be
@@ -15828,26 +15827,35 @@ $ astmknoise [OPTION ...] InputImage.fits
 One line examples:
 
 @example
-## Add noise to input image assuming background and instrumental noise:
-$ astmknoise --background=1000 --stdadd=20 mockimage.fits
+## Add noise with a standard deviation of 100 to image:
+$ astmknoise --sigma=100 image.fits
+
+## Add noise to input image assuming a background magnitude (with zeropoint
+## magnitude of 0) and a certain instrumental noise:
+$ astmknoise --background=-10 -z0 --instrumental=20 mockimage.fits
 @end example
 
 @noindent
 If actual processing is to be done, the input image is a mandatory
-argument. The full list of options common to all the programs in
-Gnuastro can be seen in @ref{Common options}. The output will have the
-same type as the input image, however the internal processing is done
-on a double precision floating point format. If the input values were
-integer types, then each floating point number will be rounded to the
-nearest integer away from zero. This might cause integer overflow if
-types with small ranges are used (for example images with a
-@code{BITPIX} of @code{8} which can only keep 256 values). This can be
-disabled with the @option{doubletype} option.  The header of the
-output FITS file keeps all the parameters that were influential in
-making it. This is done for future reproducibility.
+argument. The full list of options common to all the programs in Gnuastro
+can be seen in @ref{Common options}. The type (see @ref{Numeric data
+types}) of the output can be specified with the @option{--type} option, see
+@ref{Input output options}. The header of the output FITS file keeps all
+the parameters that were influential in making it. This is done for future
+reproducibility.
 
 @table @option
 
+@item -s FLT
+@item --sigma=FLT
+The total noise sigma in the same units as the pixel values. With this
+option, the @option{--background}, @option{--zeropoint} and
+@option{--instrumental} will be ignored. With this option, the noise will
+be independent of the pixel values (which is not realistic, see @ref{Photon
+counting noise}). Hence it is only useful if you are working on low surface
+brightness regions where the change in pixel value (and thus real noise) is
+insignificant.
+
 @item -b FLT
 @itemx --background=FLT
 The background pixel value for the image in units of magnitudes, see
@@ -15858,8 +15866,8 @@ The background pixel value for the image in units of 
magnitudes, see
 The zeropoint magnitude used to convert the value of @option{--background}
 (in units of magnitude) to flux, see @ref{Flux Brightness and magnitude}.
 
-@item -s FLT
-@itemx --stdadd=FLT
+@item -i FLT
+@itemx --instrumental=FLT
 The instrumental noise which is in units of flux, see @ref{Instrumental
 noise}.
 
@@ -17974,7 +17982,7 @@ it, please see @ref{Library demo - reading a image} for 
a demonstration.
 @cindex C: @code{restrict}
 The @code{restrict} keyword was formally introduced in C99 and is used to
 tell the compiler that at any moment only this pointer will modify what it
-points to (the a pixel in an image for example)@footnote{Also see
+points to (a pixel in an image for example)@footnote{Also see
 @url{https://en.wikipedia.org/wiki/Restrict}.}. This extra piece of
 information can greatly help in compiler optimizations and thus the running
 time of the program. But older compilers might not have this capability, so
diff --git a/doc/release-checklist.txt b/doc/release-checklist.txt
index 3105b43..8239932 100644
--- a/doc/release-checklist.txt
+++ b/doc/release-checklist.txt
@@ -192,11 +192,14 @@ Steps necessary to Package Gnuastro for Debian.
 
      $ tar xf ../gnuastro_$ver.orig.tar.gz --strip-components=1
 
- - Update the ChangeLog (similar to previous entries).
+ - Update the ChangeLog. But first get all the changes in this version from
+   the NEWS file.
 
-   IMPORTANT: if this is not a final release (just for making sure Gnuastro
-   builds on all systems), change `unstable' to `experimental'.
+   IMPORTANT: An official release should have `unstable' after the
+   version. But if you just want to making sure Gnuastro builds on all
+   systems, it should be `experimental'.
 
+     $ git diff NEWS
      $ emacs debian/changelog
 
  - Check the current Debian policy version at
@@ -215,9 +218,9 @@ Steps necessary to Package Gnuastro for Debian.
 
      $ sudo pbuilder update
 
- - Run `pdebuild' to build the package (it might need sudo password).
+ - Run `pdebuild' to build the package (needs sudo).
 
-     $ pdebuild
+     $ sudo pdebuild
 
  - Run Lintian to check the build.
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]