Astronomical Image Processing System: Difference between revisions

Content deleted Content added
MisterB777 (talk | contribs)
m The Blacksburg Connection: minor copyediting
Citation bot (talk | contribs)
Add: isbn, bibcode, doi, volume. | Use this bot. Report bugs. | Suggested by Whoop whoop pull up | Category:Interferometry | #UCB_Category 2/47
 
(65 intermediate revisions by 33 users not shown)
Line 1:
{{Infobox software
= Astronomical Image Processing System =
| name = AIPS
| logo = Logo.aips.png
| logo size = 64px
| screenshot = AIPS_usage.png
| caption = AIPS 31DEC21 running on macOS
| developer = [[NRAO]]
| latest_release_version =
| latest_release_date =
| programming language = [[FORTRAN]] and [[C (programming language)|C]]
| operating_system = [[Unix-like]]
| genre = Astronomical Analysis
| license = [[GNU General Public License]]
| website = http://www.aips.nrao.edu/index.shtml
}}
 
The '''Astronomical Image Processing System''' (AIPS) is a software package to support the reduction and analysis of data taken with radio telescopes. Developed predominantly for use with the then under-construction [[Very Large Array|VLA]], the generality inherent in its design allowed it to become the standard data-reduction package for most radio interferometers, including [[VLBI]]. Limited single-dish capability is also featured. Although partially replaced by [[AIPS++#AIPS++/CASA|CASA]], it continues to evolve and remains in use.
See also [[AIPS++]], a package designed to be a successor to AIPS
 
== General History==
Development of AIPS started at [[NRAO]] in 1978, two years before the VLA became fully operational. Originally written in [[FORTRAN 66]],<ref>{{cite conference|last1=Wells|first1=Donald|title=NRAO's Astronomical Image Processing System|conference=Data Analysis in Astronomy|date=1985|page=202|publisher=[[Kluwer]]}}</ref> AIPS has used [[FORTRAN 77]] since 1989.<ref name="greisen03">{{cite journal|last1=Greisen|first1=Eric|editor1-last=Heck|editor1-first=André|title=AIPS, the VLA, and the VLBA|journal=Information Handling in Astronomy - Historical Vistas|page=114|date=2003|volume=285 |doi=10.1007/0-306-48080-8_7 |bibcode=2003ASSL..285..109G |isbn=978-1-4020-1178-8 }}</ref> The very first AIPS installation was on a [[MODCOMP]] computer, but the package's portability has led to it being installed on many different systems. Pre-compiled versions are today available for users of [[Linux]] and [[MacOS|Mac OS]].<ref name="AIPSFAQ">{{cite web|last1=Greisen|first1=Eric|title=The AIPS FAQ|url=http://www.aips.nrao.edu/aips_faq.html|website=AIPS|publisher=NRAO}}</ref> Since 2018, a pre-compiled version is no longer available for [[Solaris (operating system)|Solaris]] and users must now build AIPS from source.
AIPS is a package to support the reduction and analysis of data taken with radio telescopes. It is most useful for arrays of telescopes like the [[VLA]] and [[VLBA]] and the [[Westerbork Synthesis Radio Telescope|WSRT]]. In more recent years, it has also been used successfully for [[VLBI]] (very long baseline interferometry).
The software was originally developed by [[NRAO]] in the seventies, and has since grown to be the defacto standard software package in the worldwide radioastronomy community.
 
Over the years, the capabilities of AIPS have greatly expanded. Initial usage was focused on the VLA, but it has gone on to be used to reduce data from practically all radio interferometers, including [[MERLIN]]<ref>{{cite journal|last1=Argo|first1=Megan|title=The e-MERLIN Data Reduction Pipeline|journal=Journal of Open Research Software|date=2015|volume=3|doi=10.5334/jors.bp|s2cid=55991387|url=https://www.research.manchester.ac.uk/portal/files/31675355/1502.04936v1|doi-access=free|arxiv=1502.04936}}</ref> and the [[GMRT]]<ref>{{cite web|url=http://www.ncra.tifr.res.in/ncra/gmrt/gmrt-users/aips-help|title=AIPS Info|website=GMRT|publisher=NCRA|access-date=2021-07-07}}</ref> and, to a lesser extent, the [[Westerbork Synthesis Radio Telescope|WSRT]]<ref>{{cite web|url=http://old.astron.nl/radio-observatory/astronomers/analysis-wsrt-data/analysis-wsrt-dzb-data-classic-aips/analysis-wsrt-d|title=Analysis of WSRT DZB data with classic AIPS|website=WSRT|publisher=ASTRON|access-date=2021-07-07}}</ref> and [[Australia Telescope Compact Array|ATCA]].<ref>{{cite web|url=https://www.atnf.csiro.au/computing/software/atca_aips/atcal_html.html|title=Analysis of ATCA data|website=Australia Telescope Compact Array|publisher=ATNF|access-date=2021-07-07}}</ref> The ability to calibrate VLBI data (including [[space VLBI]]) was added in the 1990s, primarily to support operations with the [[Very Long Baseline Array|VLBA]], but in the process becoming the main data-reduction package for the [[European VLBI Network|EVN]] and combined VLBA/EVN observations (Global VLBI).<ref name="greisen03"/> Single-dish support was also added in the 1980s, with particular application to NRAO's [[ARO 12m Radio Telescope|12-m radio telescope]] and the 91-m transit telescope.
== History ==
AIPS is what most of us would now describe as “legacy software”, having been originally coded in a truly ancient dialect of FORTRAN (predating even the venerable FORTRAN IV). AIPS now uses FORTRAN 77, although it has been digested successfully by at least one FORTRAN 90 compiler.
 
AIPS has now been in use for nearly 40 years and has even outlived its supposed replacement [[AIPS++]], which was eventually rebranded as CASA.<ref>{{cite journal|last1=Jaeger|first1=Shannon|title=The Common Astronomy Software Applications (CASA)|journal=Astronomical Data Analysis Software and Systems ASP Conference Series|date=2008|volume=394|page=623|bibcode=2008ASPC..394..623J|url=http://adsabs.harvard.edu/full/2008ASPC..394..623J}}</ref> CASA has gone on to be the main data-reduction package for the upgraded VLA (EVLA) and [[Atacama Large Millimeter Array|ALMA]], but AIPS remains able, to a large degree, to process data from these state-of-the-art instruments. Despite its age and limited resources, AIPS remains used and under active development. AIPS is free software and is covered by the terms of the [[GNU General Public License]].
A Modcomp computer in Charlottesville was the first system to actually host a working AIPS system, and it quickly spread to a guest UNIX system hosted on an IBM 360 mainframe. From there, it spread in the early 1980s to VAX/VMS systems, often with an attached floating-point systems array processor (this peculiar device was the moral equivalent of the 80387 floating-point accelerators that some old-timers may remember being part and parcel of many 386 systems). In the late 1980s, UNIX came back into AIPS' universe in a big way, first with the Sun-3 series of Motorola-68020-based systems and then with a series of others, including Cray (Unicos), Convex and Alliant systems.
 
==Description==
By the time the 80s were winding down, the dominance of VMS in the AIPS universe was being seriously questioned. Performance on new upstarts like Sun was starting to challenge their price/performance ratio, and the first SPARCstations totally blew them away. In the early 1990s, AIPS moved to a smorgasbord of UNIX variants: AIX, Stardent (briefly), Ultrix, HP-UX, SGI's Irix and DEC (oops, Compaq) OSF1. A port to an IBM 3090 was attempted, but failed due to accuracy problems with the non-IEEE floating-point format thereon. In the middle of this flurry of activity, the port to Linux by Jeff Uphoff was made.
AIPS runs under the [[X Window System]] with commands entered interactively using a command-line interpreter called POPS. Although relatively primitive, this gives access to a useful collection of e.g. mathematical functions, logical operators and flow control statements. Commands can also be placed in a text file which makes repeating complicated procedures much more convenient and which can be used to create data-reduction [[Pipeline (computing)|pipelines]]. A more modern alternative is to install ParselTongue, a [[Python (programming language)|Python]]-based interface.
 
As well as the terminal window from which AIPS is started and commands entered, most AIPS sessions will by default contain two other windows, the AIPS TV and the Message Server. The TV is used to visualise data or images and can, for example, be used to interactively edit data or control the progress of a [[deconvolution]]. The Message Server displays useful information reported by each task. Optionally, basic black and white plots can be displayed using TEKSRV, a [[Tektronix 4010|Tektronix 4012]]-based graphics terminal.
=== The Blacksburg Connection ===
 
Before any data can be processed by AIPS, they must first be imported into the system's own data areas, usually in [[FITS]] format. The FITS standard was agreed in 1979 and its development is inseparable from that of AIPS. The data can henceforth be processed using a large number (>530) of individual programs, each of which performs a specific task e.g. producing an image from a calibrated data set. Together these allow a user to visualize, edit and calibrate a data set and subsequently make images or fit models. A number of analysis tasks are included (e.g. Gaussian fitting to images or spectra) as well as the possibility to make publication-quality plots.
In the fall of 1993, NRAO got a query from a radio astronomer at Virginia Tech in Blacksburg, requesting permission for one of his students to copy AIPS to his PC for an attempted port to a new system called Linux. (At that time, AIPS was still proprietary code, released to non-profit organizations under a rather cumbersome license and user agreement; this changed later.) Polite skepticism was the immediate reaction of most people then in the NRAO AIPS group, but they allowed the experiment to go ahead. Within several weeks Jeff Uphoff had successfully ported the software to Linux and was able to run the “Dirty Dozen Tasks” benchmark, even though it took much about a day on an 386 compared to an hour on a SPARC.
 
Extensive help is available to AIPS users, with detailed information on each parameter and task viewable from the command line. There is also a [[user guide]], the AIPS Cookbook, which is built around examples (recipes) of how to run the various tasks. It is available on-line, as well as being packaged with AIPS in PDF and PostScript formats. A newsletter (AIPSLetter) is published biannually.
=== Faster and Faster, and Make it GNU ===
 
==Primatology==
Within a few months of the original port, NRAO had Jeff Uphoff on its payroll, and the race was on to improve the performance of AIPS on Intel hardware. In the process, the NRAO Charlottesville Computing Division ended up with many Linux machines performing server duties, and several programmers and scientists volunteered for converted to use on Linux systems.
Although briefly known as RANCID,<ref>{{cite journal|last1=Greisen|first1=Eric|editor1-last=Heck|editor1-first=André|title=AIPS, the VLA, and the VLBA|journal=Information Handling in Astronomy - Historical Vistas|page=111|date=2003|volume=285 |publisher=Kluwer|doi=10.1007/0-306-48080-8_7 |bibcode=2003ASSL..285..109G |isbn=978-1-4020-1178-8 }}</ref> the eventual choice of name has led to a preponderance of primate-based humour in and around AIPS. The Cookbook contains "additional recipes", instructions for preparing food and drink which all feature bananas as an ingredient.<ref>{{cite tech report |first=Eric|last=Greisen|title=The Creation of AIPS|work=AIPS Memo|issue=100|institution=NRAO|page=14|date=1998}}</ref> The programmer's guide is called ''Going AIPS'', the cover of which features a gorilla clutching a [[Tektronix 4010|Tektronix 4012]] graphics terminal whilst standing upon two [[IBM 3420]] Magnetic Tape Units. Various cover designs of the Cookbook and icons also include images of primates.<ref>{{cite tech report |first=Eric|last=Greisen|title=The Creation of AIPS|work=AIPS Memo|issue=100|institution=NRAO|pages=11-13|date=1998}}</ref>
However, it took the use of the EGCS version of the GNU g77 FORTRAN compiler to push the Intel/Linux platform to the forefront of the Radio Astronomy community. In 1995, using EGCS version 1.0.2, AIPS was sucessfully built under g77. This improved the AIPSMark (a benchmark, defined as 4000 divided by the elapsed time in seconds to run the DDT on a test dataset; bigger AIPSMarks are better and a Sparc IPX is 1.0) on a Pentium Pro 200 from 3.3 to about 5. With further coaxing via aggressive use of optimization parameters, the resulting AIPSMark went over 6. In this fell swoop, the price/performance curve that was previously occupied by Sun, IBM, DEC and HP was shattered once and for all. By 1998, NRAO was ordering Linux/Intel desktops as the workstation of preference for the scientist in place of SPARC Ultra systems. In 1999, Linux started to edge out the high-performance public workstations such as Alpha and high-end SPARC.
 
==See also==
During this time, another significant change came about. All this exposure to copylefted code was taking its toll. As mentioned earlier, AIPS was originally released under a restrictive user agreement that prohibited redistribution and was unpalatable or even unacceptable to some in our own astronomical community. Not only that, but the administrative costs associated with it were a burden.
* [[IRAF]] - package for processing data from optical telescopes
Thus, around 2000 the decission was made to shift AIPS over to the GNU (Free Software Foundation's) General Public License on its next periodic release.
* [[Starlink Project|Starlink]] - package similar to IRAF, but developed for UK astronomers
 
{{Portal|Astronomy}}
As of the writing of this article, the most recent version of AIPS is the 2008 release, called 31DEC08, approaching the end of it's third decade of use in the astronomical community.
 
==References==
== Usage and design ==
{{Reflist}}
 
==External links==
In general AIPS uses 8 character long "tasks" that have input parameters, and a source and a destination "disk", reminiscent of 1970's era mainframe programming. The "disks" are stored in a catalog, basically predating any notion of filesystems in their modern sense. When using the data, you first load it onto a disk from an external source, usually a [[FITS]] file, either UVFITS or FITS-IDI. You then perform your tasks on these disks, writing the result to an output disk.
* [http://www.aips.nrao.edu/cook.html AIPS homepageCookbook]
 
* [http://www.jive.nl/jivewiki/doku.php?id=parseltongue:parseltongue ParselTongue Wiki]
AIPS uses a primitive commandline interpreter known as POPS.
* [http://www.linuxjournal.com/article/4040 Article in Linux Journal article]
 
* [https://casa.nrao.edu/ CASA home page]
To new postgraduate students, AIPS is such an idiosyncratic piece of software that a rich and varied [http://www.star.bris.ac.uk/mark/AIPS.html niche humour] has developed around it.
 
== Links ==
* [http://www.aips.nrao.edu/ AIPS homepage]
* [http://www.linuxjournal.com/article/4040 Linux Journal article]
 
[[Category:Radio astronomy]]
[[Category:Interferometry]]
[[Category:Astronomical imaging]]
[[Category:Astronomy software]]
[[Category:Fortran software]]