CFITSIO

A library of C and Fortran APIs for the FITS data format
Download

CFITSIO Ranking & Summary

Advertisement

  • Rating:
  • License:
  • BSD License
  • Price:
  • FREE
  • Publisher Name:
  • William D. Pence
  • Publisher web site:
  • http://legacy.gsfc.nasa.gov/docs/software/fitsio/fitsio.html

CFITSIO Tags


CFITSIO Description

A library of C and Fortran APIs for the FITS data format CFITSIO is a library of C and Fortran subroutines for reading and writing data files in FITS (Flexible Image Transport System) data format.CFITSIO simplifies the task of writing software that deals with FITS files by providing an easy to use set of high-level routines that insulate the programmer from the internal complexities of the FITS file format.Here are some key features of "CFITSIO":CFITSIO is the result of many man-years of development with major contributions from external projects such as the data centers for INTEGRAL (ISDC), XMM, and Chandra space missions.Provides 100% complete support for the FITS Standard, including:· all FITS datatypes, including bit, byte, logical, and complex· both signed and unsigned integer support· vector columns· variable length vector columns· null values in images and table columns Supports many proposed FITS conventions that are widely used but not yet standard, including:· CHECKSUM keyword convention· CONTINUED long string value keywords (longer than 68 characters)· ESO HIERARCH convention for keyword names longer than 8 characters· Hierarchical Grouping convention (used by INTEGRAL)· Keyword units convention (in square brackets in the comment field)· 64-bit long-integer datatypes in FITS images and tables. C++, Fortran, Perl, and Tcl wrappers are available for calling CFITSIO from other languagesThe subroutine interface is based on an abstract data model concept which hides the low level FITS format details from users.The CFITSIO data access routines are simple and intuitive. The basic interface is defined in only 15 pages of the CFITSIO Quick Start Guide.A dozen simple yet powerful example programs are provided to illustrate how to use CFITSIO.Supports creating new files based on ASCII template file (from the ISDC)Supports implicit datatype conversion when reading or writing FITS dataCFITSIO uses plug-in I/O drivers (developed at the ISDC) which makes it easy to to support a variety of physical file formats, including:· IRAF images (code provided by Doug Mink)· raw binary data files· FTP, HTTP, and ROOT file access (code provided by ISDC)· externally compressed files (.gz, .Z, and .zip)· files piped on 'stdin' or 'stdout'· 'Tile Compressed' images which are actually stored in binary tables· files in shared memory segments (code provide by ISDC)· files is core memory (widely used in real-time data acquisition) Has a simple set of self-contained WCS routines, plus has routines to cleanly interface with Doug Mink's more extensive WCS library (but has no linkage dependencies on the WCS library)The high performance lexical parser (designed by Uwe Lammers) allows completely general table filtering and is as fast as compiled C code.The parser supports filtering of tables by region files and GTI files.CFITSIO's Virtual File syntax supports many features, including:· extracting subimages from larger images· modifying or creating table columns on the fly· creating images by binning table columns The I/O speed has been highly optimized and is largely limited only by the speed of the underlying physical device; Sustained I/O data rates of more than 40MB/s are possible on current generation magnetic disks.Has modest memory requirements; FITS files sizes are not limited by the amount of available memory.Supports the 'large file' specification and can read and write FITS files up to 6 terabytes in size.Extensive error reporting is built into the interface, which aids both developers and end users in debugging problems.CFITSIO can be built on nearly every Unix platform with the usual './configure' and 'make' procedure. It supports 64-bit architectures.A binary .dll library is available for Windows platforms. What's New in This Release: · modified the tiled-image compression and uncompression code to support compressing unsigned 16-bit integer images with PLIO. FITS unsigned integer arrays are offset by -32768, but the PLIO algorithm does not work with negative integer values. In this case, an offset of 32768 is added to the array before compression, and then subtracted again when reading the compressed array. · IMPORTANT NOTE: This change is not backward compatible, so these PLIO compressed unsigned 16-bit integer images will not be read correctly by previous versions of CFITSIO; the pixel values will have an offset of +32768. · minor changes to the fpack utility to print out more complete version information with the -V option, and format the report produced by the -T option more compactly. · Modified imcomp_compress_image (which is called by fpack) so that it will preserve any null values (NaNs) if the input image has a floating point datatype (BITPIX = -32 or -64). Null values in integer datatype images are handled correctly. · Modified imcomp_copy_comp2img so that it does not copy the ZBLANK keyword, if present, from the compressed image header when uncompressing the image. · Fixed typo in the Fortran wrapper macro for the ftexist function


CFITSIO Related Software