HEASARC Staff Scientist Position - Applications are now being accepted for a Staff Scientist with significant experience and interest in the technical aspects of astrophysics research, to work in the High Energy Astrophysics Science Archive Research Center (HEASARC) at NASA Goddard Space Flight Center (GSFC) in Greenbelt, MD. Refer to the AAS Job register for full details.
Why use the CFITSIO Library?
There are many reasons to use 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 languages
- The 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 data
- CFITSIO 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 other extensive WCS library
(but has no linkage dependency on other WCS libraries)
- 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:
-
performing on-the-fly arithmetic on the value of image pixels
-
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.
|