[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.
- [gnuastro-commits] master 3b6c15d 036/113: Merged with recent work in master, no conflicts, (continued)
- [gnuastro-commits] master 3b6c15d 036/113: Merged with recent work in master, no conflicts, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master fb3660f 037/113: MakeCatalog works in 3D, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 73fdf0c 006/113: MakeProfiles builds 3D ellipsoids, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 03d73fe 011/113: Some minor corrections in code and comments, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 87ab805 014/113: Identifiers for integer constants in BZERO comparisons, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 1483201 009/113: Noised cube created in make check, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master bdeaba9 012/113: Corrected name of 3D catalog for tarball inclusion, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 6b53c5e 015/113: Bug fixes in master: commits 1ff1c25 and 540af65, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master adeb1c6 016/113: NoiseChisel's convolution step in 3D completed, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master ace4160 017/113: New --mcolisbrightness option for MakeProfiles, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master f06acc5 018/113: Merged recent work from master,
Mohammad Akhlaghi <=
- [gnuastro-commits] master 61aec7b 019/113: Convolve name and dimensionality checks, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 4627ddf 021/113: NoiseChisel segmentation working in 3D, test added, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 1560a54 022/113: Default NoiseChisel kernel in 3D changed to 1.5 pixels, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 4d2508f 028/113: Fixed NoiseChisel opening and dilation and merged with master, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 4223e60 025/113: Suggestions on viewing/inspecting NoiseChisel's output, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 6086579 031/113: Merged recent work in master (corrected conflicts), Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master b0d5fab 034/113: Merged recent work from master, no conflicts, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master 06798a5 035/113: Crop's --checkcenter works on 3D dataset, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master fd51c80 050/113: Imported recent work from master, no conflicts, Mohammad Akhlaghi, 2021/04/16
- [gnuastro-commits] master a4dbaba 055/113: Recent work in master imported, minor conflict fixed, Mohammad Akhlaghi, 2021/04/16