[Top][All Lists]

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

Gnuastro 0.15 released

From: Mohammad Akhlaghi
Subject: Gnuastro 0.15 released
Date: Sun, 30 May 2021 23:40:01 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.2

Dear all,

I am happy to announce the 15th official release of GNU Astronomy
Utilities (Gnuastro).

Gnuastro is an official GNU package, consisting of various
command-line programs and library functions for the manipulation and
analysis of (astronomical) data. All the programs share the same basic
command-line user interface (modeled on GNU Coreutils). For the full
list of Gnuastro's library, programs, and a comprehensive general
tutorial (recommended place to start using Gnuastro), please see the
links below respectively:

Many new features have been added in this release and many bugs have
been fixed. For example, two new installed scripts now allow 1)
creation of radial profiles (written and maintained by Raúl
Infante-Sainz) and 2) making SAO DS9 "region" files from a catalog to
visualize objects in SAO DS9 (written with the help of Samane
Raji). The Table program now has more very useful options (for example
to randomly select rows from a large table) and the Query program can
now access Galactic extinctions from the NASA/IPAC Extragalactic
Database (NED). For a very complete review of the new features, please
see [1] below.

Here is the compressed source and the GPG detached signature for this
release. To uncompress Lzip tarballs, see [2]. To check the validity
of the tarballs using the GPG detached signature (*.sig) see [3]:    (3.6MB)    (5.8MB) (833B) (833B)

Here are the MD5 and SHA1 checksums (other ways to check if the
tarball you download is what we distributed):

40edf2537bdbefd795d1b87bcdbec461  gnuastro-0.15.tar.gz
849cbb80ac0ccd165f723576fc71f212  gnuastro-0.15.tar.lz
541b04d8d3c03da96c20ca79c703deadef811e7e  gnuastro-0.15.tar.gz
3ed75e80babbb4e1cc7568243d980c53af217a8a  gnuastro-0.15.tar.lz

For this release Pedram Ashofteh Ardakani, Natáli D. Anzanello, Raul
Infante-Sainz, Carlos Morales-Socorro, François Ochsenbein, Samane
Raji and Zahra Sharbaf directly contributed to the source of Gnuastro.
I am also very grateful to Mark Calabretta, Sepideh Eskandarlou, Raul
Infante-Sainz, Clotilde Laigle, Alberto Madrigal, Juan Miro, Carlos
Morales-Socorro, Sylvain Mottet, Francois Ochsenbein, Samane Raji,
Zahra Sharbaf, Leigh Smith, Alfred M. Szmidt, Ignacio Trujillo and
Richard Wilbur for their very useful comments, suggestions and bug
fixes that have now been implemented in Gnuastro.

If any of Gnuastro's programs or libraries are useful in your work,
please cite _and_ acknowledge them. For citation and acknowledgment
guidelines, run the relevant programs with a `--cite' option (it can
be different for different programs, so run it for all the programs
you use). Citations _and_ acknowledgments are vital for the continued
work on Gnuastro, so please don't forget to support us by doing so.

This tarball was bootstrapped (created) with the tools below. Note
that you don't need these to build Gnuastro from the tarball, these
are the tools that were used to make the tarball itself. They are only
mentioned here to be able to reproduce/recreate this tarball later.
  Texinfo 6.7
  Autoconf 2.71
  Automake 1.16.3
  Help2man 1.48.3
  ImageMagick 7.0.11-13
  Gnulib v0.1-4650-gc45faf7f4
  Autoconf archives v2021.02.19-1-ge68e8f6

The dependencies to build Gnuastro from this tarball on your system
are described here:

Best wishes,

Postdoctoral research fellow,
Instituto de Astrofísica de Canarias (IAC),
Calle Vía Láctea, s/n, E38205,
San Cristóbal de La Laguna, Tenerife, Spain.

[1] Noteworthy changes in Gnuastro 0.15, also visible here:

** New features

  New programs:
   - astscript-ds9-region: Given a table (either as a file or from
     standard input), create an SAO DS9 region file from the requested
     positional columns (WCS or image coordinates). For example with the
     command below you can select certain rows of a given table, and show
     them over an image:
        asttable table.fits --range=MAGNITUDE,18:20 --column=RA,DEC \
            | astscript-ds9-region --column=1,2 --radius=0.5 \
                                   --command="ds9 image.fits"
     This script was written with the help of Samane Raji.
   - astscript-radial-profile: Measure the radial profile of an object on
     an image. The profile can be centered anywhere in the image and any
     circular, or elliptical distance can be defined. The output is a table
     with the profile's value in one column and any requested measure in
     the other columns (any MakeCatalog measurement is possible). This
     script was written and is maintained by Raúl Infante Sainz. Zahra
     Sharbaf and Carlos Morales-Socorro also contributed.

  All programs:
   - FITS files that don't have a recognized FITS suffix (e.g., '.fits',
     '.fit', '.fits.gz', etc) will also be recognized. Generally, it is
     good practice to keep a suffix to be more human and computer friendly
     (checking three or four characters is much faster than opening the
     file and checking the contents to conform with the FITS standard), but
     when you are given such a file (by someone else), this new feature can
     be handy. Suggested by Clotilde Laigle and Leigh Smith.
   --wcslinearmatrix: new option in all programs that lets you select the
     output WCS linear matrix format. It takes one of two values: 'pc' (for
     the 'PCi_j' formalism) and 'cd' (for 'CDi_j'). Until now, the outputs
     were always stored in the 'PCi_j' formalism (which is still the
     recommended format).

   - New "Image surface brightness limit" section added to the third
     tutorial (on "Detecting large extended targets"). It describes the
     different ways to measure a dataset's surface brightness limit and
     upper-limit surface brightness, while discussing their
     differences. This tutorial was written with the help of Ignacio
     Trujillo and Raúl Infante Sainz.

   - New operators (all also available in Table's column
     - sin: Trigonometric sine (input in degrees).
     - cos: Trigonometric cosine (input in degrees).
     - tan: Trigonometric tangent (input in degrees).
     - asin: Inverse of trigonometric sine (output in degrees).
     - acos: Inverse of trigonometric cosine (output in degrees).
     - atab: Inverse of trigonometric tangent (output in degrees).
     - sinh: Hyperbolic sine.
     - cosh: Hyperbolic cosine.
     - tanh: Hyperbolic tangent.
     - asinh: Inverse of hyperbolic sine.
     - acosh: Inverse of hyperbolic cosine.
     - atanh: Inverse of hyperbolic tangent.
     - mknoise-sigma: Add Gaussian noise with the fixed sigma.
     - mknoise-poisson: Add Poisson noise with the given background.
     - mknoise-uniform: Add uniform noise around existing value.
     - counts-to-mag: Convert counts to magnitudes with given zero point.
     - mag-to-counts: Convert magnitudes to counts with given zero point.
     - counts-to-jy: Convert counts to Janskys through a zero point based
          on AB magnitudes.
     Trigonometric operators proposed by Zahra Sharbaf and Samane Raji.
   --envseed: new option to get random number generator settings for the
     new 'mknoise-sigma' and 'mknoise-poisson' operators from the
     environment for reproducibility (see "Generating random numbers"
     section in manual).

   --globalhdu: Use a single HDU identifier for all the input files
     files. Its operation is identical to the similarly named option in
     Arithmetic. Until now it was necessary to call '--hdu' three times if
     you had three input FITS files with input in the same HDU.

   --polygon: now also accepts an SAO DS9 region file as input (as well as
     coordinates). This enables you to draw your polygon over the image
     through the GUI interface of SAO DS9, save your polygon as a "region"
     file, and feed the region file into Crop directly. Until now, the only
     way to define the polygon was to give all the polygon vertice
     coordinates, one-by-one to the '--polygon' option (which was tedious
     and buggy), but is still possible. This was implemented by Natáli

   --hastablehdu: print 1 if at least one table HDU exists in file.
   --hasimagehdu: print 1 if at least one image HDU exists in file.
   --listallhdus: print all HDU names (or numbers when no name exists).
   --listtablehdus: print table HDU names (or numbers when no name exists).
   --listimagehdus: print image HDU names (or numbers when no name exists).
   --printkeynames: Print all keyword names in current HDU.
   --wcscoordsys: convert the WCS coordinate system of the input into any
     recognized coordinate system. It currently supports: equatorial
     (J2000, B1950), ecliptic (J2000, B1950), Galactic and
     Supergalactic. For example if 'image.fits' is in galactic coordinates,
     you can use this command to convert its WCS to equatorial (J2000):

          astfits image.fits --wcscoordsys=eq-j2000

     This option only works with WCSLIB 7.5 and above (released in March
     2021), otherwise it will abort with an informative warning. This was
     done with the help of Mark Calabretta.
   --keyvalue: Print only the values of the FITS keywords given to this
     option in separate columns. This option can take multiple keyword
     names and many FITS files. Thus generating a table of keyword values
     (with one row per file where the first column is the file name). Its
     output can thus be written as a Table file or be piped to the Table
     program for selecting a certain sub-set of your FITS files based on
     key values, or sorting them for example. This was added after a
     discussion with Alberto Madrigal.

   - Newly added measurement columns:
     --upperlimitsb: upper-limit surface brightness for the given label
       (object or clump). This is useful for measuring a dataset's
       realistic surface brightness level for each labeled region by random
       positioning of its footprint over undetected regions (not
       extrapolated from the single-pixel noise level like the "surface
       brightness limit").

   - Can now work on 3D datacubes. Since the configuration parameters are
     different from images, it is recommended to manually set the 3D
     configuration (the '...' can be the input image and options):
         astnoisechisel --config=/usr/local/etc/astnoisechisel-3d.conf ...
     Alternatively, you can set an 'astnoisechisel-3d' alias like below and
     always easily run 'astnoisechisel-3d' on cubes.
alias astnoisechisel-3d="astnoisechisel --config=/usr/local/etc/astnoisechisel-3d.conf"

   - Can now work on 3D datacubes. Similar to NoiseChisel, it requires a
     separate set of default configurations, so please see the note under
     NoiseChisel above.

   - When given a value of '_all', the '--noblank' option (that will remove
     all rows with a blank value in the given columns) will check all
     columns of the final output table. This is handy when you want a
     "clean" (no NaN values in any column) table, but the table has many
     columns. Until now, '--noblank' needed the name/number of each column
     to "clean".
   --rowlimit: new option to specify the positional interval of rows to
     show. Until now, the '--head' or '--tail' options would just allow
     seeing the first or last few rows. You can use this new option to view
     a contiguous set of rows in the middle of the table.
   --rowrandom: Make a random selection of the rows. This option is useful
     when you have a large table and just want to see a random sub-set of
     the rows. It takes an integer, selects that many rows from the input
   --polygon: Similar to same option in Crop (mentioned above).
   - New column arithmetic operators:
     - 'set-AAA' operator (which allows storing the popped operand into a
       named variable for easy usage in complex operations) is also usable
       in Table's column arithmetic. Until now this operator was only
       available in the Arithmetic program (for operation on images).
     - 'date-to-sec' Convert FITS date format ('YYYY-MM-DDThh:mm:ss') into
       seconds from the Unix epoch (1970-01-01,00:00:00 UTC). This can be
       very useful in combination with the new '--keyvalue' option of the
       Fits program to operate on FITS dates (for example sort your FITS
       images based on observation time).

   - The Galactic extinction calculator of the NASA/IPAC Extragalactic
     Database (NED) is now available for any coordinate with a command like
     below. For more, see the manual (the description of the 'extinction'
     dataset of NED in the "Available datasets" section).
         astquery ned --dataset=extinction --center=49.9507,41.5116
     This feature was suggested by Ignacio Trujillo and implemented with
     the help of Joseph Mazzarella.

   - New arithmetic operator macros (for the 'gal_arithmetic' function):
     - GAL_ARITHMETIC_OP_SIN: sine (input in deg).
     - GAL_ARITHMETIC_OP_COS: cosine (input in deg).
     - GAL_ARITHMETIC_OP_TAN: tangent (input in deg).
     - GAL_ARITHMETIC_OP_ASIN: Inverse sine (output in deg).
     - GAL_ARITHMETIC_OP_ACOS: Inverse cosine (output in deg).
     - GAL_ARITHMETIC_OP_ATAN: Inverse tangent (output in deg)
     - GAL_ARITHMETIC_OP_ATAN2: Inverse tangent (with two inputs, out deg).
     - GAL_ARITHMETIC_OP_SINH: Hyperbolic sine.
     - GAL_ARITHMETIC_OP_COSH: Hyperbolic cosine.
     - GAL_ARITHMETIC_OP_TANH: Hyperbolic tangent.
     - GAL_ARITHMETIC_OP_ASINH: Inverse hyperbolic sine.
     - GAL_ARITHMETIC_OP_ACOSH: Inverse hyperbolic cosine.
     - GAL_ARITHMETIC_OP_ATANH: Inverse hyperbolic tangent.
     - GAL_ARITHMETIC_OP_MKNOISE_SIGMA: Add fixed-sigma noise.
     - GAL_ARITHMETIC_OP_COUNTS_TO_JY: Convert counts to Janskys.
   - New arithmetic flag macros:
- GAL_ARITHMETIC_FLAG_ENVSEED: read random number generator seed from env. - GAL_ARITHMETIC_FLAG_QUIET: don't print any warnings by some operators.
   - WCS coordinate system macros:
     - GAL_WCS_COORDSYS_EQB1950: 1950.0 (Besselian-year) equatorial coords.
     - GAL_WCS_COORDSYS_EQJ2000: 2000.0 (Julian-year) equatorial coords.
     - GAL_WCS_COORDSYS_ECB1950: 1950.0 (Besselian-year) ecliptic coords.
     - GAL_WCS_COORDSYS_ECJ2000: 2000.0 (Julian-year) ecliptic coords.
     - GAL_WCS_COORDSYS_GALACTIC: Galactic coordinates.
     - GAL_WCS_COORDSYS_SUPERGALACTIC: Supergalactic coordinates.
   - gal_array_file_recognized: For FITS images, check contents also.
- gal_ds9_reg_read_polygon: Parse the polygon from an SAO DS9 region file. - gal_fits_file_recognized: Check the file contents when suffix isn't FITS.
   - gal_units_counts_to_mag: Convert counts to magnitudes.
   - gal_units_mag_to_counts: Convert magnitudes to counts.
   - gal_units_counts_to_jy: Convert counts to Janskys.
   - gal_wcs_coordsys_from_string: WCS coordinate system from string.
- gal_wcs_coordsys_identify: Parse WCS struct to find coordinate system.
   - gal_wcs_coordsys_convert: Convert the coordinate system of the WCS.

** Removed features

   Nothing has been removed in this release.

** Changed features

   - Thanks to the new features in the Fits and Table programs (described
     above), the efficiency of this script has improved dramatically (from
     19 seconds to 0.42 seconds for about 650 FITS files used in the
   - The default end to a "night" is set to 11:00a.m. Until now it was
     9:00a.m. But in some cases, calibration images may be taken after
     that. So to be safer in general it was incremented by 2 hours.

   - Surface brightness limit (SBL) calculations are now written as
     standard FITS keywords in the output catalog/table. Until now, they
     were simply stored as 'COMMENT' keywords with no name so it was hard
     to parse them automatically. From this version, the following keywords
     are also written into the output table(s), see the "MakeCatalog
     output" section of the book for more: 'SBLSTD', 'SBLNSIG', 'SBLMAGPX',
   - Upper-limit (UP) settings are also written into the output tables as
     keywords (like surface brightness limit numbers above): 'UPNSIGMA',

   - gal_fits_key_write_wcsstr: also takes WCS structure as argument.
   - gal_fits_key_read_from_ptr: providing a numerical datatype for the
     desired keyword's value is no longer mandatory. When not given, the
     smallest numeric datatype that can keep the value will be found and
   - gal_wcs_read: allows specifying the linear matrix of the WCS.
   - gal_wcs_read_fitsptr: allows specifying the linear matrix of the WCS.

** Bugs fixed
  bug #60082: Arithmetic library crash for integer operators like modulo
  bug #60121: Arithmetic segfault when multi-operand output given to set-
bug #60368: CosmicCalculator fails --setdirconf when redshift isn't given,
              reported by Sepideh Eskandarlou
  bug #60483: No warning when file given to '--config' doesn't exist,
              reported by Sepideh Eskandarlou
  bug #60484: Match crashes when called with --coord and --ccol2 (together)
  bug #60603: Table crashes with an empty input and --range,
              reported by Sepideh Eskandarlou.
  bug #60619: Crop crashes with differing image and WCS dimension
  bug #60634: Crop's '--hstartwcs' and '--hendwcs' wrong with comment keys
  bug #60644: MakeCatalog's Brightness error over-estimated in images with
              noise STD less than 1. This was not an issue for S/N or
              Magnitude error on the same image (already corrected there).

[2] Lzip has better compression ratio and archival features compared
to the `.gz' or `.xz' formats. Therefore Gnuastro's alpha/test
releases are only in this format, but for historical reasons we also
include `.gz' tarballs in the official releases. If you don't have
Lzip (you can check with `lzip --version' command), download and
install it from its webpage:

If Lzip is present and you use GNU Tar, then the single command below
should uncompress and un-pack the tarball:

  $ tar xf gnuastro-0.15.tar.lz

If the command above doesn't work, you have to un-compress and un-pack
it with two separate commands (or use a pipe to feed the output of the
first into the second: `lzip -cd gnuastro-0.15.tar.lz | tar -xf -'):

  $ lzip -d gnuastro-0.15.tar.lz
  $ tar xf gnuastro-0.15.tar

[3] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact.  First, be sure to download both the .sig file
and the corresponding tarball.  Then, run a command like this:

  gpg --verify gnuastro-0.15.tar.gz.sig

If that command fails because you don't have the required public key,
then run this command to import it:

  gpg --keyserver --recv-keys 71E899012D174B66

and rerun the 'gpg --verify' command.

reply via email to

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